:root {
	--wd-text-font: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 400;
	--wd-text-color: rgb(0,0,0);
	--wd-text-font-size: 15px;
	--wd-title-font: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 600;
	--wd-title-color: rgb(0,0,0);
	--wd-entities-title-font: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 500;
	--wd-entities-title-color: rgb(0,0,0);
	--wd-entities-title-color-hover: rgb(4, 0, 83);
	--wd-alternative-font: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 600;
	--wd-widget-title-transform: uppercase;
	--wd-widget-title-color: rgb(0,0,0);
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 700;
	--wd-header-el-transform: uppercase;
	--wd-header-el-font-size: 13px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(4,0,83);
	--wd-alternative-color: rgb(30,115,190);
	--btn-default-font-family: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
	--btn-default-bgcolor: #f7f7f7;
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-font-family: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
	--btn-accented-bgcolor: rgb(4,0,83);
	--btn-accented-bgcolor-hover: rgb(30,115,190);
	--wd-form-brd-width: 2px;
	--notices-success-bg: rgb(4,0,83);
	--notices-success-color: #fff;
	--notices-warning-bg: rgb(30,115,190);
	--notices-warning-color: #fff;
	--wd-link-color: rgb(30,115,190);
	--wd-link-color-hover: rgb(221,51,51);
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: #ffffff;
	background-image: none;
}
html .product-image-summary-wrap .product_title, html .wd-single-title .product_title {
	font-weight: 600;
}
 {
	font-family: "Be Vietnam Pro", Arial, Helvetica, sans-serif;
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1400px;
--wd-form-brd-radius: 35px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 5px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 5px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--wd-brd-radius: 12px;
}

@media (min-width: 1400px) {
[data-vc-full-width]:not([data-vc-stretch-content]),
:is(.vc_section, .vc_row).wd-section-stretch {
padding-left: calc((100vw - 1400px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
padding-right: calc((100vw - 1400px - var(--wd-sticky-nav-w) - var(--wd-scroll-w)) / 2);
}
}


.wd-page-title {
background-color: #0a0a0a;
}

@import url("https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@300;400;500;600;700;800&display=swap");
:root {
  --navy: #020183;
  --navy-d: #010160;
  --navy-mid: #0c1e80;
  --navy-deep: #07153a;
  --cyan: #06b6d4;
  --orange: #fe8026;
  --orange-d: #d96010;
  --orange-l: #ff9a4d;
  --white: #ffffff;
  --gray-50: #f8fafc;
  --gray-100: #f1f5f9;
  --gray-200: #e2e8f0;
  --gray-400: #94a3b8;
  --gray-600: #475569;
  --gray-800: #1e293b;
  --font: "Be Vietnam Pro", sans-serif;
  --radius: 12px;
  --radius-sm: 8px;
    --r-sm: 8px;
    --r-xl: 28px;
  --hdr-blue: #1a4fa0;
  --hdr-blue-dark: #0f3275;
  --hdr-orange: #f97316;
  --hdr-white: #ffffff;
  --hdr-shadow: 0 2px 20px rgba(26,79,160,0.10);
}
.wpcf7-form p {
    margin: 0;
}
.wpcf7-form-control-wrap[data-name="agree"] .wpcf7-list-item {
  margin: 0;
}
.wpcf7-form-control-wrap[data-name="agree"] label {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  cursor: pointer;
  font-size: 15px;
  line-height: 1.6;
  color: #333;
  user-select: none;
}
.wpcf7-form-control-wrap[data-name="agree"] input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  margin-top: 2px;
  border: 2px solid #020183;
  border-radius: 6px;
  background: #fff;
  position: relative;
  cursor: pointer;
  transition: all 0.25s ease;
}
.wpcf7-form-control-wrap[data-name="agree"] input[type="checkbox"]:hover {
  border-color: #020183;
  box-shadow: 0 0 0 4px rgba(2, 1, 131, 0.1);
}
.wpcf7-form-control-wrap[data-name="agree"] input[type="checkbox"]:checked {
  background: #020183;
  border-color: #020183;
}
.wpcf7-form-control-wrap[data-name="agree"] input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 6px;
  top: 2px;
  width: 6px;
  height: 11px;
  border: solid #fff;
  border-width: 0 2.5px 2.5px 0;
  transform: rotate(45deg);
}
.wpcf7-form-control-wrap[data-name="agree"] input[type="checkbox"]:focus-visible {
  outline: 2px solid #020183;
  outline-offset: 3px;
}
.wpcf7-form-control-wrap[data-name="agree"] .wpcf7-list-item-label {
  color: #444;
}
.wpcf7-form-control-wrap[data-name="agree"] .wpcf7-not-valid input[type="checkbox"] {
  border-color: #e63946;
}
.wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.wpcf7-form-control-wrap .wpcf7-checkbox label {
    display: flex;
    gap: 10px;
    padding: 12px 14px;
    border-radius: var(--r-sm);
    border: 1.5px solid var(--gray-200);
    background: var(--gray-100);
    cursor: pointer;
    font-size: 15px;
    color: #333;
    transition: all 0.2s ease;
    user-select: none;
    letter-spacing: normal;
    font-weight: 400;
}
.wpcf7-checkbox .wpcf7-list-item label input[type="checkbox"] {
    top: 2px;
}
.wpcf7-form-control-wrap .wpcf7-checkbox label:hover {
  border-color: #020183;
  background: rgba(2, 1, 131, 0.03);
}
.wpcf7-form-control-wrap .wpcf7-checkbox input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #b9b9cc;
  border-radius: 6px;
  background: #fff;
  position: relative;
  cursor: pointer;
  transition: all 0.25s ease;
}
.wpcf7-form-control-wrap .wpcf7-checkbox input[type="checkbox"]:hover {
  border-color: #020183;
}
.wpcf7-form-control-wrap .wpcf7-checkbox input[type="checkbox"]:checked {
  background: #020183;
  border-color: #020183;
}
.wpcf7-form-control-wrap .wpcf7-checkbox input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 6px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2.5px 2.5px 0;
  transform: rotate(45deg);
}
.wpcf7-form-control-wrap .wpcf7-checkbox label:has(input:checked) {
  border-color: #020183;
  background: rgba(2, 1, 131, 0.06);
}
.wpcf7-form-control-wrap .wpcf7-checkbox label:has(input:checked) .wpcf7-list-item-label {
  color: #020183;
  font-weight: 600;
}
.wpcf7-form-control-wrap .wpcf7-checkbox input[type="checkbox"]:focus-visible {
  outline: 2px solid #020183;
  outline-offset: 3px;
}
.wpcf7-form-control-wrap .wpcf7-checkbox.wpcf7-not-valid label {
  border-color: #e63946;
}
.wpcf7-form-control-wrap .wpcf7-checkbox .wpcf7-not-valid-tip {
  display: block;
  margin-top: 6px;
  font-size: 13px;
  color: #e63946;
}
.wpcf7-checkbox .wpcf7-list-item {
    display: inline-block;
    margin-inline-end: 10px;
    width: 100%;
}
.wpcf7-form br {
    display: none;
}
.wpcf7-form select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-family: var(--font);
    font-size: 14px;
    color: var(--gray-800);
    background: var(--gray-100);
    border: 1.5px solid var(--gray-200);
    border-radius: var(--r-sm);
    padding: 11px 14px;
    width: 100%;
    transition: border-color .18s, background .18s, box-shadow .18s;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
}
.wpcf7-form select:focus{
    border-color: var(--navy);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(2, 1, 131, .08);
}
.wpcf7-form select::-ms-expand {
  display: none;
}
.field-highlight {
    background: linear-gradient(135deg, rgba(2, 1, 131, .03), rgba(6, 182, 212, .04));
    border: 1.5px solid rgba(2, 1, 131, .12);
    border-radius: 12px;
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.field-highlight-label {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
    color: var(--navy);
    margin-bottom: 2px;
}
.field-highlight-label svg {
    width: 13px;
    height: 13px;
    stroke: var(--navy);
    fill: none;
    stroke-width: 2;
}
#f-country {
    gap: 0;
}
.wd textarea {
    resize: vertical;
	overflow: auto;
    min-height: 120px;
    line-height: 1.6;
    font-family: var(--font);
    font-size: 14px;
    color: var(--gray-800);
    background: var(--gray-100);
    border: 1.5px solid var(--gray-200);
    border-radius: var(--r-sm);
    padding: 11px 14px;
    width: 100%;
    transition: border-color .18s, background .18s, box-shadow .18s;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
}
.b2b-page {
  font-family: var(--font);
  background: var(--gray-50);
  min-height: 100vh;
  padding-bottom: 80px;
}
.b2b-hero {
  background: linear-gradient(rgba(255,255,255,.032) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.032) 1px, transparent 1px),
    linear-gradient(135deg, #010130 0%, var(--navy) 52%, var(--navy-mid) 100%);
  background-size: 48px 48px, 48px 48px, 100% 100%;
  padding: 48px 40px 80px;
  position: relative;
  overflow: hidden;
}
.b2b-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 600px 320px at 15% 60%, rgba(6,182,212,.09), transparent 65%),
    radial-gradient(ellipse 400px 280px at 85% 30%, rgba(255,150,78,.06), transparent 65%);
}
.b2b-hero-wave {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  z-index: 2;
  pointer-events: none;
  line-height: 0;
}
.b2b-hero-wave svg {
  display: block;
  width: 100%;
  height: auto;
}
.b2b-hero-inner {
  position: relative;
  z-index: 2;
  max-width: 1100px;
  margin: 0 auto;
}
.b2b-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.45);
  margin-bottom: 16px;
}
.b2b-hero-eyebrow-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--cyan);
  animation: b2b-hero-pulse 2s infinite;
}
@keyframes b2b-hero-pulse {
  0%,100%{ opacity:1; transform:scale(1) }
  50%    { opacity:.5; transform:scale(1.4) }
}
.b2b-hero h1 {
  font-family: var(--font);
  font-size: clamp(24px,4vw,38px);
  font-weight: 800;
  color: #fff;
  line-height: 1.18;
  letter-spacing: -.5px;
  margin-bottom: 6px;
}
.b2b-hero h1 em {
  font-style: normal;
  color: var(--orange-l);
}
.b2b-form-wrap {
  max-width: 800px;
  margin: 40px auto 0;
  padding: 0 20px;
  position: relative;
  z-index: 10;
}
.b2b-form-card {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 8px 48px rgba(2,1,131,.10), 0 2px 12px rgba(0,0,0,.06);
  border: 1px solid rgba(2,1,131,.07);
  overflow: hidden;
}
.b2b-section {
  padding: 36px 40px;
  border-bottom: 1px solid var(--gray-100);
}
.b2b-section:last-of-type {
  border-bottom: none;
}
.b2b-section-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 28px;
}
.b2b-section-num {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  flex-shrink: 0;
  background: linear-gradient(135deg, var(--navy), var(--navy-mid));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 800;
  color: #fff;
}
.b2b-section-title {
  font-size: 16px;
  font-weight: 800;
  color: var(--navy);
  letter-spacing: -.2px;
}
.b2b-section-sub {
  font-size: 12.5px;
  color: var(--gray-400);
  margin-top: 2px;
}
.b2b-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.b2b-grid.c1 {
  grid-template-columns: 1fr;
}
.b2b-grid.c3 {
  grid-template-columns: 1fr 1fr 1fr;
}
.b2b-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.b2b-field.full {
  grid-column: 1 / -1;
}
.b2b-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .10em;
  text-transform: uppercase;
  color: var(--gray-600);
}
.b2b-req {
  color: var(--orange);
  margin-left: 2px;
}
.b2b-input, .b2b-select, .b2b-textarea {
  width: 100%;
  padding: 11px 14px;
  background: var(--gray-50);
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-sm);
  font-size: 13.5px;
  font-family: var(--font);
  color: var(--gray-800);
  outline: none;
  transition: border-color .2s, background .2s, box-shadow .2s;
  -webkit-appearance: none;
  appearance: none;
}
.b2b-input::placeholder, .b2b-textarea::placeholder {
  color: var(--gray-400);
}
.b2b-input:focus, .b2b-select:focus, .b2b-textarea:focus {
  border-color: var(--navy);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(2,1,131,.08);
}
.b2b-input.err, .b2b-select.err, .b2b-textarea.err {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239,68,68,.08);
}
.b2b-select-wrap {
  position: relative;
}
.b2b-select-wrap::after {
  content: "";
  position: absolute;
  right: 13px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid var(--gray-400);
}
.b2b-select {
  padding-right: 32px;
  cursor: pointer;
}
.b2b-textarea {
  resize: vertical;
  min-height: 90px;
  line-height: 1.6;
}
.b2b-check-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.b2b-check-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 14px;
  border-radius: var(--radius-sm);
  border: 1.5px solid var(--gray-200);
  cursor: pointer;
  transition: border-color .18s, background .18s;
  font-size: 13px;
  color: var(--gray-600);
  font-weight: 500;
  line-height: 1.4;
}
.b2b-check-label:hover {
  border-color: var(--navy);
  background: rgba(2,1,131,.03);
}
.b2b-check-label input[type="checkbox"] {
  display: none;
}
.b2b-checkbox-box {
  width: 18px;
  height: 18px;
  border-radius: 5px;
  flex-shrink: 0;
  margin-top: 1px;
  border: 2px solid var(--gray-200);
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .18s;
}
.b2b-check-label input:checked ~ .b2b-checkbox-box {
  background: var(--navy);
  border-color: var(--navy);
}
.b2b-checkbox-box svg {
  width: 10px;
  height: 10px;
  color: #fff;
  opacity: 0;
  transition: opacity .15s;
}
.b2b-check-label input:checked ~ .b2b-checkbox-box svg {
  opacity: 1;
}
.b2b-check-label:has(input:checked) {
  border-color: var(--navy);
  background: rgba(2,1,131,.04);
  color: var(--navy);
}
.b2b-consent {
  padding: 28px 40px 32px;
  background: var(--gray-50);
  border-top: 1px solid var(--gray-100);
}
.b2b-consent-box {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 18px;
  border-radius: var(--radius);
  border: 1.5px solid var(--gray-200);
  background: #fff;
  cursor: pointer;
  transition: border-color .18s;
  margin-bottom: 24px;
}
.b2b-consent-box:hover {
  border-color: var(--navy);
}
.b2b-consent-box input[type="checkbox"] {
  display: none;
}
.b2b-consent-chk {
  width: 20px;
  height: 20px;
  border-radius: 6px;
  flex-shrink: 0;
  margin-top: 1px;
  border: 2px solid var(--gray-200);
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .18s;
}
.b2b-consent-box input:checked ~ .b2b-consent-chk {
  background: var(--navy);
  border-color: var(--navy);
}
.b2b-consent-chk svg {
  width: 11px;
  height: 11px;
  color: #fff;
  opacity: 0;
  transition: opacity .15s;
}
.b2b-consent-box input:checked ~ .b2b-consent-chk svg {
  opacity: 1;
}
.b2b-consent-text {
  font-size: 13px;
  color: var(--gray-600);
  line-height: 1.65;
}
.b2b-consent-text a {
  color: var(--navy);
  text-decoration: underline;
}
.b2b-consent-text.err-text {
  color: #ef4444;
}
.b2b-submit-wrap {
  text-align: center;
}
.b2b-submit {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 48px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--navy-d), var(--navy));
  border: none;
  color: #fff;
  font-family: var(--font);
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
  transition: all .22s;
  box-shadow: 0 6px 20px rgba(2,1,131,.30);
  letter-spacing: -.1px;
}
.b2b-submit:hover {
  background: linear-gradient(135deg, var(--orange-d), var(--orange));
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(254,128,38,.35);
}
.b2b-submit:disabled {
  opacity: .6;
  cursor: not-allowed;
  transform: none;
}
.b2b-submit svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
@keyframes b2b-spin { from{transform:rotate(0)} to{transform:rotate(360deg)} }
.b2b-submit-note {
  margin-top: 12px;
  font-size: 12px;
  color: var(--gray-400);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
.b2b-submit-note svg {
  width: 13px;
  height: 13px;
  color: var(--gray-400);
}
.b2b-success {
  display: none;
  text-align: center;
  padding: 60px 40px;
}
.b2b-success.show {
  display: block;
}
.b2b-success-icon {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  margin: 0 auto 24px;
  background: linear-gradient(135deg, rgba(16,185,129,.15), rgba(6,182,212,.10));
  border: 2px solid rgba(16,185,129,.30);
  display: flex;
  align-items: center;
  justify-content: center;
}
.b2b-success-icon svg {
  width: 32px;
  height: 32px;
  color: #10b981;
}
.b2b-success h3 {
  font-size: 22px;
  font-weight: 800;
  color: var(--navy);
  margin-bottom: 10px;
}
.b2b-success p {
  font-size: 14px;
  color: var(--gray-600);
  line-height: 1.7;
  max-width: 440px;
  margin: 0 auto;
}
.sp-ticker-wrap {
  background: #f7f8fa;
  padding: 40px 0;
  border-top: 1.5px solid var(--gray-200);
}
.sp-ticker-overflow {
  overflow: hidden;
  position: relative;
}
.sp-ticker-overflow::before, .sp-ticker-overflow::after {
  content: "";
  position: absolute;
  top: 0;
  width: 120px;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
.sp-ticker-overflow::before {
  left: 0;
  background: linear-gradient(to right,#f7f8fa,transparent);
}
.sp-ticker-overflow::after {
  right: 0;
  background: linear-gradient(to left,#f7f8fa,transparent);
}
.sp-ticker-track {
  display: flex;
  gap: 16px;
  width: max-content;
  padding: 8px 0;
}
.sp-ticker-tile {
  flex-shrink: 0;
  width: 180px;
  height: 84px;
  background: #fff;
  border: 1.5px solid #e5e7eb;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  overflow: hidden;
  transition: all .25s;
  box-shadow: 0 2px 8px rgba(0,0,0,.05);
}
.sp-ticker-tile:hover {
  border-color: rgba(221,92,32,.4);
  box-shadow: 0 6px 20px rgba(221,92,32,.10);
  transform: translateY(-3px);
}
.sp-ticker-tile img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  opacity: .82;
  transition: opacity .2s;
}
.sp-ticker-tile:hover img {
  opacity: 1;
}
.flt-outer {
  position: fixed;
  bottom: 28px;
  right: 28px;
  z-index: 9998;
  width: 256px;
  opacity: 0;
  transform: translateY(20px) scale(.88);
  transition: opacity .45s ease,transform .45s cubic-bezier(.34,1.56,.64,1);
  overflow: visible;
  font-family: "Open Sauce One","Be Vietnam Pro",sans-serif;
}
.flt-outer.flt-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
}
.flt-pulse {
  position: absolute;
  inset: -4px;
  border-radius: 24px;
  border: 2px solid rgba(249,115,22,.36);
  animation: flt-pulse-kf 2.4s ease-in-out infinite;
  pointer-events: none;
  z-index: 0;
  transition: opacity .3s;
}
.flt-outer.flt-is-closed .flt-pulse {
  opacity: 0;
}
@keyframes flt-pulse-kf{0%,100%{opacity:.6;transform:scale(1);}50%{opacity:0;transform:scale(1.04);}}
.flt-card {
  position: relative;
  z-index: 1;
  width: 100%;
  background: #020128;
  border-radius: 20px 20px 0 0;
  border: 1px solid rgba(255,150,78,.26);
  border-bottom: none;
  padding: 12px 14px 14px;
  color: #fff;
  overflow: hidden;
  max-height: 300px;
  opacity: 1;
  transition: max-height .35s cubic-bezier(.4,0,.2,1),opacity .3s,padding .3s,border-width .3s;
}
.flt-outer.flt-is-closed .flt-card {
  max-height: 0;
  opacity: 0;
  padding-top: 0;
  padding-bottom: 0;
  border-width: 0;
}
.flt-head {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-bottom: 9px;
}
.flt-clock {
  width: 13px;
  height: 13px;
  border: 1.5px solid #ff964e;
  border-radius: 50%;
  flex-shrink: 0;
  position: relative;
}
.flt-clock::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1.5px;
  height: 4px;
  background: #ff964e;
  transform: translate(-50%,-100%) translateY(1px);
  border-radius: 1px;
}
.flt-head-title {
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #ff964e;
  line-height: 1.3;
  white-space: nowrap;
}
.flt-dlabel {
  font-size: 10.5px;
  color: rgba(255,255,255,.40);
  margin-bottom: 10px;
  line-height: 1;
}
.flt-dlabel strong {
  color: #fff;
  font-weight: 700;
}
.flt-cd {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  align-items: center;
  gap: 3px;
  margin-bottom: 10px;
}
.flt-cell {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 9px;
  padding: 7px 2px 5px;
  text-align: center;
  min-width: 0;
}
.flt-num {
  display: block;
  font-size: 22px;
  font-weight: 800;
  line-height: 1;
  color: #fff;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.02em;
}
.flt-unit {
  display: block;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: rgba(255,255,255,.26);
  margin-top: 3px;
}
.flt-sep {
  font-size: 14px;
  font-weight: 900;
  color: rgba(255,150,78,.38);
  text-align: center;
  margin-bottom: 8px;
  user-select: none;
  line-height: 1;
  padding: 0 1px;
}
.flt-prog {
  height: 3px;
  background: rgba(255,255,255,.07);
  border-radius: 2px;
  overflow: hidden;
}
.flt-prog-fill {
  height: 100%;
  border-radius: 2px;
  background: linear-gradient(90deg,#020183,#ff964e);
  transition: width .8s ease;
}
.flt-action {
  width: 100%;
  display: flex;
  align-items: center;
  background: linear-gradient(135deg,#dd5c20 0%,#ff964e 100%);
  border: none;
  border-radius: 0 0 20px 20px;
  color: #fff;
  cursor: pointer;
  text-decoration: none;
  overflow: hidden;
  height: 50px;
  box-shadow: 0 8px 28px rgba(221,92,32,.36),0 2px 8px rgba(0,0,0,.18);
  transition: filter .22s,border-radius .35s cubic-bezier(.4,0,.2,1);
  position: relative;
  z-index: 1;
}
.flt-outer.flt-is-closed .flt-action {
  border-radius: 20px;
}
.flt-action:hover {
  filter: brightness(1.09);
}
.flt-action-ico {
  width: 48px;
  height: 50px;
  flex-shrink: 0;
  background: rgba(0,0,0,.14);
  display: flex;
  align-items: center;
  justify-content: center;
}
.flt-action-ico svg {
  width: 17px;
  height: 17px;
  stroke: #fff;
  fill: none;
  stroke-width: 2.2;
}
.flt-action-div {
  width: 1px;
  height: 26px;
  background: rgba(255,255,255,.18);
  flex-shrink: 0;
}
.flt-action-txt {
  flex: 1;
  text-align: center;
  font-size: 13px;
  font-weight: 800;
  color: #fff;
  white-space: nowrap;
  letter-spacing: .02em;
  padding: 0 6px 0 8px;
}
.flt-action-arr {
  width: 36px;
  height: 50px;
  flex-shrink: 0;
  background: rgba(0,0,0,.12);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s;
}
.flt-action:hover .flt-action-arr {
  background: rgba(0,0,0,.20);
}
.flt-action-arr svg {
  width: 13px;
  height: 13px;
  stroke: rgba(255,255,255,.75);
  fill: none;
  stroke-width: 2.5;
}
.flt-toggle {
  position: absolute;
  top: -14px;
  right: -14px;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #020128;
  border: 1.5px solid rgba(255,150,78,.60);
  cursor: pointer;
  padding: 0;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .2s;
  box-shadow: 0 2px 10px rgba(0,0,0,.40);
  box-sizing: content-box;
  line-height: 0;
  font-size: 0;
}
.flt-toggle:hover {
  background: #03024a;
}
.flt-toggle svg {
  display: block;
  width: 12px;
  height: 12px;
  stroke: #ff964e;
  fill: none;
  stroke-width: 2.5;
  transition: transform .3s cubic-bezier(.4,0,.2,1);
  transform: none;
}
.flt-outer.flt-is-closed .flt-toggle svg {
  transform: rotate(180deg);
}
@media (max-width: 640px) {
  .b2b-section {
    padding: 28px 20px;
  }
  .b2b-grid {
    grid-template-columns: 1fr;
  }
  .b2b-grid.c3 {
    grid-template-columns: 1fr;
  }
  .b2b-check-grid {
    grid-template-columns: 1fr;
  }
  .b2b-consent {
    padding: 20px 20px 28px;
  }
  .b2b-hero {
    padding: 40px 20px 70px;
  }
  .b2b-submit {
    width: 100%;
    justify-content: center;
  }
  .flt-outer {
    width: 260px;
    right: 16px;
    bottom: 16px;
  }
  .flt-num {
    font-size: 22px;
  }
}
@media (max-width: 480px) {
  .b2b-form-wrap {
    padding: 0 12px;
  }
}
.av-header * {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
.av-header {
  background: var(--hdr-white);
  box-shadow: var(--hdr-shadow);
  border-bottom: 1px solid rgba(26,79,160,0.07);
  width: 100%;
  font-family: "Be Vietnam Pro", sans-serif;
  line-height: 1;
  position: relative;
  z-index: 9999;
  margin: 0 !important;
  padding-bottom: 0 !important;
  display: block;
}
.av-header-inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 24px;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.av-logo-group {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-shrink: 0;
}
.av-logo-item {
  display: flex;
  align-items: center;
  text-decoration: none;
  transition: opacity 0.18s;
}
.av-logo-item:hover {
  opacity: 0.82;
}
.av-logo-divider {
  width: 1px;
  height: 32px;
  background: #e2e8f0;
  flex-shrink: 0;
}
.av-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: visible;
  flex: 1;
}
.av-nav-list {
  list-style: none;
  display: flex;
  align-items: center;
}
.av-nav-item {
  position: relative;
}
.av-nav-item::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 16px;
  background: transparent;
}
.av-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 8px 11px;
  font-family: "Be Vietnam Pro", sans-serif;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--hdr-blue);
  text-decoration: none;
  border-radius: 8px;
  transition: color 0.18s, background 0.18s;
  white-space: nowrap;
  cursor: pointer;
  border: none;
  background: none;
  line-height: 1;
}
.av-nav-link svg {
  width: 12px;
  height: 12px;
  transition: transform 0.22s ease;
  opacity: 0.7;
  flex-shrink: 0;
}
.av-nav-link:hover, .av-nav-item:hover > .av-nav-link {
  color: var(--hdr-orange);
  background: rgba(249,115,22,0.07);
}
.av-nav-item:hover > .av-nav-link svg {
  transform: rotate(180deg);
}
.av-nav-link.active {
  color: var(--hdr-orange);
}
.av-nav-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) translateY(-4px) scale(0.97);
  background: var(--hdr-white);
  border-radius: 12px;
  padding: 6px;
  min-width: 200px;
  box-shadow: 0 8px 32px rgba(26,79,160,0.13), 0 2px 8px rgba(0,0,0,0.06);
  border: 1px solid rgba(26,79,160,0.08);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.18s ease, transform 0.18s ease;
  z-index: 999999;
}
.av-nav-item:hover .av-nav-dropdown {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0) scale(1);
}
.av-nav-dropdown a {
  display: block;
  padding: 8px 12px;
  font-family: "Be Vietnam Pro", sans-serif;
  font-size: 13.5px;
  font-weight: 500;
  color: var(--hdr-blue);
  text-decoration: none;
  border-radius: 7px;
  transition: background 0.13s, color 0.13s;
  white-space: nowrap;
}
.av-nav-dropdown a:hover {
  background: rgba(249,115,22,0.08);
  color: var(--hdr-orange);
}
.av-actions {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.ls {
  position: relative;
  display: inline-flex;
  align-items: flex-start;
  z-index: 999999;
  font-family: "Be Vietnam Pro", sans-serif;
}
.ls-bridge {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 12px;
  background: transparent;
}
.ls-trigger {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 11px;
  background: linear-gradient(135deg, var(--hdr-blue), #2563eb);
  border-radius: 8px;
  cursor: pointer;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  user-select: none;
  box-shadow: 0 2px 10px rgba(26,79,160,0.28);
  transition: all 0.18s ease;
  white-space: nowrap;
}
.ls:hover .ls-trigger {
  background: linear-gradient(135deg, var(--hdr-blue-dark), #1d4ed8);
}
.ls-trigger img {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.ls-arrow {
  opacity: 0.9;
  transition: transform 0.22s ease;
  flex-shrink: 0;
  margin-left: 2px;
}
.ls:hover .ls-arrow {
  transform: rotate(180deg);
}
.ls-menu {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  background: #fff;
  border-radius: 10px;
  padding: 4px;
  min-width: 80px;
  box-shadow: 0 8px 28px rgba(26,79,160,0.13), 0 2px 8px rgba(0,0,0,0.07);
  border: 1px solid rgba(26,79,160,0.08);
  display: flex;
  flex-direction: column;
  gap: 1px;
  opacity: 0;
  pointer-events: none;
  transform: translateY(-5px) scale(0.96);
  transition: opacity 0.18s ease, transform 0.18s ease;
  transform-origin: top left;
}
.ls:hover .ls-menu {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}
.ls-item {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 6px 9px;
  border-radius: 7px;
  text-decoration: none;
  color: #334155;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.05em;
  transition: background 0.13s, color 0.13s;
  white-space: nowrap;
}
.ls-item:hover {
  background: rgba(249,115,22,0.08);
  color: var(--hdr-orange);
}
.ls-item.active {
  background: linear-gradient(135deg,rgba(26,79,160,0.09),rgba(37,99,235,0.09));
  color: var(--hdr-blue);
}
.ls-item img {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.av-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  cursor: pointer;
  padding: 8px;
  border: none;
  background: none;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  transition: background 0.18s;
  -webkit-tap-highlight-color: transparent;
  flex-shrink: 0;
}
.av-hamburger:hover {
  background: rgba(26,79,160,0.07);
}
.av-hamburger span {
  display: block;
  width: 22px;
  height: 2px;
  background: var(--hdr-blue);
  border-radius: 2px;
  transition: all 0.25s ease;
  transform-origin: center;
}
.av-hamburger.is-open span:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}
.av-hamburger.is-open span:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}
.av-hamburger.is-open span:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}
.av-drawer-overlay {
  display: block;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.38);
  z-index: 99997;
  opacity: 0;
  transition: opacity 0.25s ease;
  pointer-events: none;
}
.av-drawer-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
}
.av-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: min(300px, 85vw);
  background: #fff;
  box-shadow: -4px 0 40px rgba(26,79,160,0.16);
  z-index: 99998;
  display: flex;
  flex-direction: column;
  transform: translateX(100%);
  transition: transform 0.28s cubic-bezier(0.4,0,0.2,1);
  overflow-y: auto;
}
.av-drawer.is-open {
  transform: translateX(0);
}
.av-drawer-head {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 12px 14px;
  border-bottom: 1px solid #f1f5f9;
  flex-shrink: 0;
}
.av-drawer-close {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  border: none;
  background: #f1f5f9;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #475569;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
  transition: background 0.15s, color 0.15s;
  flex-shrink: 0;
}
.av-drawer-close:hover {
  background: rgba(249,115,22,0.10);
  color: var(--hdr-orange);
}
.av-drawer-nav {
  padding: 12px 10px;
  flex: 1;
}
.av-drawer-nav ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.av-drawer-nav ul li a, .av-drawer-nav ul li > span {
  display: block;
  padding: 10px 14px;
  border-radius: 9px;
  font-family: "Be Vietnam Pro", sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: var(--hdr-blue);
  text-decoration: none;
  transition: background 0.15s, color 0.15s;
}
.av-drawer-nav ul li a:hover {
  background: rgba(249,115,22,0.08);
  color: var(--hdr-orange);
}
.av-drawer-nav ul ul {
  padding-left: 12px;
  margin-top: 2px;
}
.av-drawer-nav ul ul li a {
  font-size: 13px;
  font-weight: 500;
  color: #475569;
  padding: 8px 14px;
}
.av-drawer-foot {
  padding: 14px 18px;
  border-top: 1px solid #f1f5f9;
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.av-drawer-lang {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  border-radius: 8px;
  font-family: "Be Vietnam Pro", sans-serif;
  font-size: 12px;
  font-weight: 700;
  text-decoration: none;
  color: #64748b;
  border: 1.5px solid #e2e8f0;
  transition: all 0.15s;
}
.av-drawer-lang img {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  object-fit: cover;
}
.av-drawer-lang.active {
  background: rgba(26,79,160,0.07);
  border-color: rgba(26,79,160,0.2);
  color: var(--hdr-blue);
}
.av-drawer-lang:hover {
  border-color: var(--hdr-orange);
  color: var(--hdr-orange);
}
.av-cta {
  font-family: "Be Vietnam Pro", sans-serif;
  font-size: 13px;
  font-weight: 700;
  background: var(--hdr-orange);
  color: #fff;
  padding: 8px 20px;
  border-radius: 8px;
  border: none;
  cursor: pointer;
  transition: background 0.18s, transform 0.15s;
  text-decoration: none;
  display: inline-block;
  white-space: nowrap;
  flex-shrink: 0;
}
.av-cta:hover {
  background: #e06010;
  transform: translateY(-1px);
}
.av-drawer-cta {
  font-family: "Be Vietnam Pro", sans-serif;
  font-size: 13px;
  font-weight: 700;
  background: var(--hdr-orange);
  color: #fff;
  padding: 9px 20px;
  border-radius: 8px;
  text-decoration: none;
  text-align: center;
  display: block;
  width: 100%;
  margin-top: 8px;
  transition: background 0.18s;
}
.av-drawer-cta:hover {
  background: #e06010;
}
@media (min-width: 901px) {
  .av-nav {
    display: flex !important;
  }
  .av-hamburger {
    display: none !important;
  }
  .av-header-inner {
    height: 68px;
    padding: 0 24px;
    gap: 16px;
  }
  .av-logo-item img {
    height: 44px !important;
  }
  .av-cta {
    display: inline-block !important;
  }
}
@media (max-width: 900px) {
  .av-nav {
    display: none !important;
  }
  .av-hamburger {
    display: flex !important;
  }
  .av-header-inner {
    height: 64px;
    padding: 0 20px;
    gap: 0;
  }
  .av-logo-group {
    gap: 10px;
  }
  .av-logo-item img {
    height: 36px !important;
  }
  .av-actions {
    margin-left: auto;
    gap: 10px;
  }
  .av-cta {
    display: none !important;
  }
}
@media (max-width: 560px) {
  .av-header-inner {
    height: 58px;
    padding: 0 14px;
  }
  .av-logo-group {
    gap: 8px;
  }
  .av-logo-divider {
    display: none;
  }
  .av-logo-item img {
    height: 28px !important;
  }
  .av-logo-text {
    display: none !important;
  }
  .ls-trigger > span {
    display: none;
  }
  .ls-trigger {
    padding: 6px 9px;
    gap: 3px;
  }
  .av-actions {
    gap: 8px;
  }
}
.form-wrap {
  max-width: 780px;
  margin: 40px auto 0;
  padding: 0 1.5rem 20px;
  position: relative;
  z-index: 1;
}
.form-card {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 2px 16px rgba(0,0,0,.06);
  overflow: hidden;
  border: 1.5px solid var(--border);
}
.part-head {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 22px 32px 20px;
  border-bottom: 1px solid var(--gray-100);
  background: var(--off);
}
.part-num {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--navy);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.part-num.orange {
  background: var(--orange);
}
.part-title {
  font-size: 13px;
  font-weight: 800;
  color: var(--navy);
  letter-spacing: .12em;
  text-transform: uppercase;
}
.part-desc {
  font-size: 12.5px;
  color: var(--gray-400);
  margin-top: 2px;
}
.fields {
  padding: 28px 32px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.row-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.field {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
label {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--gray-800);
  letter-spacing: .01em;
}
label .req {
  color: var(--orange);
  margin-left: 2px;
}
label .opt {
  font-size: 11px;
  font-weight: 500;
  color: var(--gray-400);
  margin-left: 6px;
}
input[type="text"], input[type="email"], input[type="tel"], select, textarea {
  font-family: var(--font);
  font-size: 14px;
  color: var(--gray-800);
  background: var(--gray-100);
  border: 1.5px solid var(--gray-200);
  border-radius: var(--r-sm);
  padding: 11px 14px;
  width: 100%;
  transition: border-color .18s, background .18s, box-shadow .18s;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="tel"]:focus, select:focus, textarea:focus {
  border-color: var(--navy);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(2,1,131,.08);
}
input::placeholder, textarea::placeholder {
  color: var(--gray-400);
}
.select-wrap {
  position: relative;
}
.select-wrap::after {
  content: "";
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 6px solid var(--gray-400);
  pointer-events: none;
}
select {
  padding-right: 38px;
  cursor: pointer;
}
textarea {
  resize: vertical;
  min-height: 110px;
  line-height: 1.6;
}
.radio-group, .check-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.radio-item, .check-item {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  cursor: pointer;
  padding: 12px 16px;
  border-radius: var(--r-sm);
  border: 1.5px solid var(--gray-200);
  background: var(--gray-100);
  transition: all .18s;
  user-select: none;
}
.radio-item:hover, .check-item:hover {
  border-color: rgba(2,1,131,.25);
  background: rgba(2,1,131,.03);
}
.radio-item input[type="radio"], .check-item input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  pointer-events: none;
}
.radio-item.selected, .check-item.checked {
  border-color: var(--navy);
  background: rgba(2,1,131,.05);
}
.custom-radio, .custom-check {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #d1d5db;
  background: #fff;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .18s;
  margin-top: 1px;
  pointer-events: none;
}
.custom-check {
  border-radius: 6px;
}
.radio-item.selected .custom-radio {
  border-color: var(--navy);
  background: var(--navy);
}
.radio-item.selected .custom-radio::after {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #fff;
}
.check-item.checked .custom-check {
  border-color: var(--navy);
  background: var(--navy);
}
.check-item.checked .custom-check svg {
  display: block;
}
.custom-check svg {
  display: none;
  width: 11px;
  height: 11px;
  stroke: #fff;
  fill: none;
  stroke-width: 2.5;
}
.radio-label, .check-label {
  font-size: 13.5px;
  color: var(--gray-800);
  line-height: 1.5;
  font-weight: 500;
  pointer-events: none;
}
.radio-item.selected .radio-label, .check-item.checked .check-label {
  color: var(--navy);
  font-weight: 600;
}
.lang-group {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.lang-group .radio-item {
  justify-content: center;
  text-align: center;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  padding: 14px 12px;
}
.part-divider {
  height: 1px;
  background: var(--gray-100);
}
.submit-zone {
  padding: 24px 32px 32px;
  border-top: 1px solid var(--gray-100);
  background: var(--off);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.submit-note {
  font-size: 12px;
  color: var(--gray-400);
  max-width: 340px;
  line-height: 1.6;
}
.submit-note a {
  color: var(--navy);
  text-decoration: underline;
}
.btn-submit {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg, var(--orange-d), var(--orange-l));
  color: #fff;
  font-family: var(--font);
  font-size: 14px;
  font-weight: 800;
  padding: 13px 28px;
  border-radius: var(--r-sm);
  border: none;
  cursor: pointer;
  letter-spacing: .01em;
  box-shadow: 0 6px 24px rgba(221,92,32,.30);
  transition: all .2s;
  white-space: nowrap;
}
.btn-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 32px rgba(221,92,32,.38);
  filter: brightness(1.05);
}
.btn-submit:disabled {
  opacity: .6;
  cursor: not-allowed;
  transform: none;
  filter: none;
}
.btn-submit svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.success-screen {
  display: none;
  text-align: center;
  padding: 56px 32px;
}
.success-screen.show {
  display: block;
}
.success-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--navy), var(--cyan));
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 20px;
}
.success-icon svg {
  width: 28px;
  height: 28px;
  stroke: #fff;
  fill: none;
  stroke-width: 2.5;
}
.success-title {
  font-size: 1.4rem;
  font-weight: 800;
  color: var(--navy);
  margin-bottom: 10px;
}
.success-msg {
  font-size: 14px;
  color: var(--gray-600);
  line-height: 1.7;
}
.error-banner {
  display: none;
  background: #fff5f5;
  border: 1.5px solid #feb2b2;
  border-radius: var(--r-sm);
  color: #c53030;
  font-size: 13px;
  padding: 12px 16px;
  margin: 0 32px 16px;
  line-height: 1.5;
}
.error-banner.show {
  display: block;
}
.field-error {
  font-size: 11.5px;
  color: #e53935;
  display: none;
  margin-top: -4px;
}
.field.has-error input, .field.has-error select, .field.has-error textarea {
  border-color: #e53935;
  background: #fff5f5;
}
.field.has-error .field-error {
  display: block;
}
.hero {
  background: linear-gradient(rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.032) 1px,transparent 1px),linear-gradient(135deg,#010130 0%,var(--navy) 52%,var(--navy-mid) 100%);
  background-size: 48px 48px,48px 48px,100% 100%;
  padding: 48px 40px 56px;
  position: relative;
  overflow: hidden;
}
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 600px 320px at 15% 60%,rgba(6,182,212,.09),transparent 65%),radial-gradient(ellipse 400px 280px at 85% 30%,rgba(255,150,78,.06),transparent 65%);
}
.hero-wave {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  z-index: 2;
  pointer-events: none;
  line-height: 0;
}
.hero-wave svg {
  display: block;
  width: 100%;
  height: auto;
}
.hero-inner {
  position: relative;
  z-index: 2;
  max-width: 1100px;
  margin: 0 auto;
}
.hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.45);
  margin-bottom: 16px;
}
.hero-eyebrow-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--cyan);
  animation: pulse 2s infinite;
}
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:.5;transform:scale(1.4)} }
.hero h1 {
  font-family: var(--font);
  font-size: clamp(22px,3.6vw,34px);
  font-weight: 800;
  color: #fff;
  line-height: 1.16;
  letter-spacing: -.4px;
  margin-bottom: 8px;
}
.hero h1 em {
  font-style: normal;
  color: var(--orange-dark);
}
.sp-ticker-overflow::before,.sp-ticker-overflow::after {
  content: "";
  position: absolute;
  top: 0;
  width: 120px;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
@media (max-width: 600px) {
  .hero {
    padding: 40px 20px 70px;
  }
  .part-head, .fields, .submit-zone {
    padding-left: 20px;
    padding-right: 20px;
  }
  .row-2 {
    grid-template-columns: 1fr;
  }
  .submit-zone {
    flex-direction: column;
    align-items: stretch;
  }
  .btn-submit {
    justify-content: center;
  }
  .error-banner {
    margin: 0 20px 16px;
  }
}
@keyframes pulse {
	0%,100% {
		opacity: 1;
		transform: scale(1)
	}

	50% {
		opacity: .5;
		transform: scale(1.4)
	}
}
.hero-sub {
  font-size: 13.5px;
  color: rgba(255,255,255,.58);
  font-weight: 500;
  margin-bottom: 28px;
  max-width: 560px;
  line-height: 1.65;
}
.stats-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.stat-card {
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 14px;
  padding: 11px 16px;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 130px;
  flex: 1;
}
.stat-icon {
  width: 34px;
  height: 34px;
  border-radius: 9px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.stat-icon svg {
  color: #fff;
}
.stat-num {
  font-family: var(--font);
  font-size: 18px;
  font-weight: 800;
  color: #fff;
}
.stat-label {
  font-size: 10.5px;
  color: rgba(255,255,255,.55);
  font-weight: 500;
  margin-top: 1px;
}
.form-outer {
  max-width: 760px;
  margin: 0 auto;
  padding: 40px 20px 72px;
}
.steps-wrap {
  background: #fff;
  border: 1.5px solid var(--border);
  border-radius: 18px;
  padding: 16px 24px;
  box-shadow: 0 4px 20px rgba(0,0,0,.07);
  margin-bottom: 28px;
  display: flex;
  align-items: center;
}
.step {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1;
  position: relative;
}
.step:not(:last-child)::after {
  content: "";
  position: absolute;
  height: 2px;
  background: var(--border);
  left: 46px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 0;
  transition: background .3s;
}
.step.done:not(:last-child)::after,.step.active:not(:last-child)::after {
  background: linear-gradient(90deg,var(--navy),var(--cyan));
}
.step-num {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 800;
  background: var(--border);
  color: var(--muted);
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  transition: all .25s;
}
.step.active .step-num {
  background: linear-gradient(135deg,var(--navy),var(--navy-mid));
  color: #fff;
  box-shadow: 0 4px 12px rgba(2,1,131,.30);
}
.step.done .step-num {
  background: var(--ok);
  color: #fff;
}
.step-done-icon {
  display: none;
}
.step.done .step-done-icon {
  display: block;
}
.step.done .step-num-text {
  display: none;
}
.step-info {
  line-height: 1.3;
}
.step-lbl {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
}
.step.active .step-lbl {
  color: var(--navy);
}
.step.done .step-lbl {
  color: var(--ok);
}
.step-name {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--text);
}
.form-panel {
  display: none;
}
.form-panel.active {
  display: block;
}
.panel-head {
  background: linear-gradient(135deg,var(--navy-d),var(--navy) 60%,#0a3a96);
  padding: 20px 28px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.panel-icon {
  width: 42px;
  height: 42px;
  border-radius: 11px;
  background: rgba(255,255,255,.15);
  border: 1px solid rgba(255,255,255,.2);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.panel-icon svg {
  color: #fff;
}
.panel-title {
  font-family: var(--font);
  font-size: 15px;
  font-weight: 800;
  color: #fff;
  margin-bottom: 2px;
}
.panel-sub {
  font-size: 12px;
  color: rgba(255,255,255,.55);
  font-weight: 500;
}
.panel-body {
  padding: 24px 28px;
}
.sec-chip {
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--navy);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.sec-chip::after {
  content: "";
  flex: 1;
  height: 1px;
  background: linear-gradient(to right,rgba(2,1,131,.15),transparent);
}
.divider {
  height: 1px;
  background: var(--border);
  margin: 20px 0;
}
.frow {
  display: grid;
  gap: 14px;
  margin-bottom: 14px;
}
.frow.c2 {
  grid-template-columns: 1fr 1fr;
}
.frow.c1 {
  grid-template-columns: 1fr;
}
.flabel {
  font-size: 12px;
  font-weight: 700;
  color: var(--text);
  display: flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
}
.flabel .req {
  color: var(--error);
}
.flabel .opt {
  font-size: 11px;
  font-weight: 500;
  color: var(--muted);
}
.finput,.fselect,.ftextarea {
  width: 100%;
  padding: 10px 14px;
  border: 1.5px solid var(--border);
  border-radius: 10px;
  font-size: 13px;
  font-family: var(--font);
  color: var(--text);
  background: #fff;
  outline: none;
  transition: border-color .2s,box-shadow .2s;
}
.fselect {
  height: 42px;
  cursor: pointer;
  -webkit-appearance: menulist !important;
  appearance: menulist !important;
}
.finput:focus,.fselect:focus,.ftextarea:focus {
  border-color: var(--navy);
  box-shadow: 0 0 0 3px rgba(2,1,131,.08);
}
.finput.err,.fselect.err {
  border-color: var(--error);
  box-shadow: 0 0 0 3px rgba(239,68,68,.08);
}
.ftextarea {
  resize: vertical;
  min-height: 80px;
  line-height: 1.65;
}
.ferr {
  font-size: 11px;
  color: var(--error);
  display: none;
  margin-top: 2px;
}
.ferr.show {
  display: block;
}
.connect-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 2px;
}
.connect-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 13px;
  border: 1.5px solid var(--border);
  border-radius: 9px;
  cursor: pointer;
  user-select: none;
  transition: all .18s;
  background: #fff;
}
.connect-item:hover {
  border-color: rgba(2,1,131,.25);
  background: rgba(2,1,131,.03);
}
.connect-item.checked {
  border-color: var(--navy);
  background: rgba(2,1,131,.05);
}
.connect-cb {
  width: 17px;
  height: 17px;
  border-radius: 4px;
  border: 2px solid var(--border);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .18s;
  background: #fff;
}
.connect-item.checked .connect-cb {
  background: linear-gradient(135deg,var(--navy),var(--navy-mid));
  border-color: var(--navy);
}
.connect-item.checked .connect-cb svg {
  display: block;
}
.connect-cb svg {
  display: none;
  width: 9px;
  height: 9px;
  color: #fff;
}
.connect-label {
  font-size: 12.5px;
  font-weight: 600;
  color: var(--text);
  line-height: 1.4;
}
.connect-item.checked .connect-label {
  color: var(--navy);
  font-weight: 700;
}
.booth-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 6px;
}
.b-skel {
  border-radius: 14px;
  height: 130px;
  background: linear-gradient(90deg,#f1f5f9 25%,#e8edf5 50%,#f1f5f9 75%);
  background-size: 200% 100%;
  animation: shimmer 1.2s infinite;
}
@keyframes shimmer {
	0% {
		background-position: 200% 0
	}

	100% {
		background-position: -200% 0
	}
}
.booth-opt {
  border: 1.5px solid var(--border);
  border-radius: 14px;
  padding: 16px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: all .25s cubic-bezier(.22,1,.36,1);
  background: #fff;
}
.booth-opt::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  border-radius: 2px 2px 0 0;
  background: var(--border);
  transition: background .25s;
}
.booth-opt:hover:not(.soldout) {
  border-color: rgba(2,1,131,.3);
  box-shadow: 0 4px 16px rgba(2,1,131,.10);
  transform: translateY(-2px);
}
.booth-opt.selected {
  border-color: var(--navy);
  background: rgba(2,1,131,.04);
  box-shadow: 0 4px 20px rgba(2,1,131,.14);
}
.booth-opt.selected::before {
  background: linear-gradient(90deg,var(--navy),var(--cyan));
}
.booth-opt.dimmed {
  opacity: .32;
  filter: grayscale(.6);
  transform: none !important;
}
.booth-opt.soldout {
  opacity: .36;
  cursor: not-allowed;
  filter: grayscale(.7);
  pointer-events: none;
}
.booth-opt.soldout::before {
  background: var(--error);
}
.bo-check {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .2s;
}
.booth-opt.selected .bo-check {
  background: var(--navy);
  border-color: var(--navy);
}
.booth-opt.selected .bo-check svg {
  display: block;
}
.bo-check svg {
  display: none;
  width: 9px;
  height: 9px;
  color: #fff;
}
.bo-name {
  font-family: var(--font);
  font-size: 13px;
  font-weight: 800;
  color: var(--text);
  margin-bottom: 5px;
  padding-right: 26px;
}
.booth-opt.selected .bo-name {
  color: var(--navy);
}
.bo-size {
  font-size: 11px;
  color: var(--muted);
  font-weight: 600;
  margin-bottom: 5px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.bo-size svg {
  color: var(--cyan);
  flex-shrink: 0;
}
.bo-price {
  font-size: 15px;
  font-weight: 800;
  color: var(--navy);
  margin-bottom: 6px;
}
.booth-opt.selected .bo-price {
  color: var(--orange-light);
}
.bo-stock {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 10px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 20px;
}
.stock-ok {
  background: #dcfce7;
  color: #16a34a;
}
.stock-low {
  background: #fef9c3;
  color: #b45309;
}
.stock-none {
  background: #fee2e2;
  color: #dc2626;
}
.stock-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
.inv-err {
  display: none;
  flex-direction: column;
  gap: 10px;
  background: rgba(239,68,68,.05);
  border: 1.5px solid rgba(239,68,68,.18);
  border-radius: 14px;
  padding: 18px 20px;
  margin-bottom: 14px;
}
.inv-err-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.inv-err-row svg {
  color: var(--error);
  flex-shrink: 0;
}
.inv-err-msg {
  font-size: 12.5px;
  color: #be123c;
  font-weight: 600;
  flex: 1;
}
.inv-err-detail {
  font-size: 11px;
  color: var(--muted);
  padding: 8px 12px;
  background: #f8fafc;
  border-radius: 8px;
  font-family: "Courier New",monospace;
  word-break: break-all;
  display: none;
}
.inv-err-detail.show {
  display: block;
}
.inv-err-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.inv-err-btn {
  padding: 7px 16px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  border: none;
  font-family: var(--font);
  transition: all .18s;
}
.inv-err-btn.retry {
  background: var(--navy);
  color: #fff;
}
.inv-err-btn.retry:hover {
  background: var(--navy-d);
}
.inv-err-btn.detail {
  background: #f1f5f9;
  color: var(--muted);
  border: 1.5px solid var(--border);
}
.inv-err-btn.detail:hover {
  color: var(--text);
}
.nonce-warn {
  display: none;
  align-items: center;
  gap: 10px;
  background: #fffbeb;
  border: 1.5px solid #fcd34d;
  border-radius: 12px;
  padding: 12px 16px;
  margin-bottom: 16px;
  font-size: 12px;
  color: #92400e;
  font-weight: 600;
}
.nonce-warn.show {
  display: flex;
}
.nonce-warn svg {
  flex-shrink: 0;
  color: #d97706;
}
.loc-section {
  display: none;
  margin-top: 4px;
}
.loc-section.show {
  display: block;
}
.loc-hint {
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 10px;
  padding: 9px 13px;
  background: #f0f9ff;
  border: 1px solid #bae6fd;
  border-radius: 9px;
  display: flex;
  align-items: center;
  gap: 7px;
}
.loc-hint svg {
  color: var(--cyan);
  flex-shrink: 0;
}
.loc-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.loc-btn {
  padding: 6px 13px;
  border-radius: 9px;
  border: 1.5px solid var(--border);
  background: #fff;
  font-size: 11.5px;
  font-weight: 700;
  color: var(--muted);
  cursor: pointer;
  transition: all .2s;
  font-family: "Courier New",monospace;
  letter-spacing: .04em;
}
.loc-btn:hover:not(.occupied) {
  border-color: var(--navy);
  color: var(--navy);
  background: rgba(2,1,131,.04);
}
.loc-btn.picked {
  border-color: var(--navy);
  background: var(--navy);
  color: #fff;
  box-shadow: 0 2px 8px rgba(2,1,131,.25);
}
.loc-btn.occupied {
  opacity: .32;
  cursor: not-allowed;
  text-decoration: line-through;
  pointer-events: none;
  border-color: rgba(239,68,68,.3);
  color: var(--error);
  background: #fff5f5;
}
.fp-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  color: var(--navy);
  text-decoration: none;
  padding: 7px 14px;
  border-radius: 9px;
  border: 1.5px solid rgba(2,1,131,.18);
  background: rgba(2,1,131,.04);
  transition: all .18s;
  margin-bottom: 12px;
  cursor: pointer;
}
.fp-link:hover {
  background: rgba(2,1,131,.10);
  border-color: var(--navy);
}
.fp-link svg {
  flex-shrink: 0;
}
.lb-overlay {
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: #f5f4f4;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s cubic-bezier(.22,1,.36,1);
}
.lb-overlay.open {
  opacity: 1;
  pointer-events: all;
}
.lb-stage {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.lb-img-container {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .08s linear;
  cursor: grab;
  user-select: none;
}
.lb-img-container.dragging {
  cursor: grabbing;
  transition: none;
}
.lb-img-container img {
  max-width: 90vw;
  max-height: 85vh;
  object-fit: contain;
  border-radius: 10px;
  box-shadow: 0 8px 40px rgba(0,0,0,.18);
  pointer-events: none;
  transform: scale(.9);
  transition: transform .4s cubic-bezier(.22,1,.36,1);
  display: block;
}
.lb-overlay.open .lb-img-container img {
  transform: scale(1);
}
.lb-controls {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 4px;
  background: rgba(2,1,50,.88);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(2,1,50,.15);
  border-radius: 50px;
  padding: 7px 14px;
  z-index: 100001;
  opacity: 0;
  transition: opacity .3s;
  box-shadow: 0 8px 32px rgba(0,0,0,.18);
}
.lb-overlay.open .lb-controls {
  opacity: 1;
}
.lb-ctrl-btn {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(2,1,50,.12);
  border: 1px solid rgba(2,1,50,.2);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all .2s;
  flex-shrink: 0;
  outline: none;
  padding: 0;
  line-height: 0;
}
.lb-ctrl-btn:hover {
  background: var(--orange-light);
  border-color: var(--orange-light);
  transform: scale(1.1);
}
.lb-ctrl-btn svg {
  display: block;
  margin: auto;
}
.lb-zoom-pct {
  font-family: var(--font);
  font-size: 12px;
  font-weight: 800;
  color: #fff;
  min-width: 44px;
  text-align: center;
  letter-spacing: .02em;
  line-height: 38px;
}
.lb-ctrl-divider {
  width: 1px;
  height: 20px;
  background: rgba(255,255,255,.25);
  flex-shrink: 0;
  margin: 0 4px;
  align-self: center;
}
.lb-close {
  position: fixed;
  top: 20px;
  right: 20px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(2,1,50,.12);
  border: 1.5px solid rgba(2,1,50,.2);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 100001;
  transition: background .2s,border-color .2s,transform .25s,opacity .3s;
  opacity: 0;
  outline: none;
  padding: 0;
  line-height: 0;
}
.lb-overlay.open .lb-close {
  opacity: 1;
}
.lb-close:hover {
  background: var(--orange-light);
  border-color: var(--orange-light);
  transform: rotate(90deg) scale(1.1);
}
.lb-close svg {
  display: block;
  margin: auto;
}
.lb-caption {
  position: fixed;
  top: 24px;
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--font);
  font-size: 12px;
  font-weight: 700;
  color: #374151;
  background: rgba(2,1,50,.08);
  padding: 6px 18px;
  border-radius: 20px;
  border: 1px solid rgba(2,1,50,.1);
  white-space: nowrap;
  z-index: 100001;
  pointer-events: none;
  opacity: 0;
  transition: opacity .3s;
}
.lb-overlay.open .lb-caption {
  opacity: 1;
}
.lb-hint {
  position: fixed;
  bottom: 80px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 11px;
  color: rgba(2,1,50,.35);
  font-family: var(--font);
  pointer-events: none;
  white-space: nowrap;
  opacity: 0;
  transition: opacity .3s;
}
.lb-overlay.open .lb-hint {
  opacity: 1;
  animation: hintFade 3s ease 1s forwards;
}
@keyframes hintFade {
	0% {
		opacity: 1
	}

	70% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}
.chk-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.chk-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
  user-select: none;
  outline: none;
}
.chk-box {
  width: 18px;
  height: 18px;
  border-radius: 5px;
  border: 2px solid var(--border);
  flex-shrink: 0;
  margin-top: 1px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all .18s;
}
.chk-item.checked .chk-box {
  background: linear-gradient(135deg,var(--navy),var(--navy-mid));
  border-color: var(--navy);
}
.chk-item.checked .chk-box svg {
  display: block;
}
.chk-box svg {
  display: none;
  width: 10px;
  height: 10px;
  color: #fff;
}
.chk-text {
  font-size: 12.5px;
  color: var(--text);
  line-height: 1.6;
}
.chk-text a {
  color: var(--navy);
  font-weight: 700;
  text-decoration: none;
}
.chk-text a:hover {
  color: var(--orange-light);
}
.sum-box {
  background: rgba(2,1,131,.03);
  border: 1.5px solid rgba(2,1,131,.10);
  border-radius: 14px;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 20px;
}
.sum-row {
  display: flex;
  justify-content: space-between;
  font-size: 12.5px;
  gap: 12px;
}
.sum-row .k {
  color: var(--muted);
  font-weight: 600;
  flex-shrink: 0;
}
.sum-row .v {
  font-weight: 700;
  color: var(--text);
  text-align: right;
}
.sum-row .v.hi {
  color: var(--navy);
}
.sum-sep {
  height: 1px;
  background: rgba(2,1,131,.10);
}
.panel-foot {
  padding: 16px 28px 22px;
  border-top: 1px solid var(--border);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
}
.prog {
  font-size: 11.5px;
  color: var(--muted);
  font-weight: 600;
}
.btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 11px 24px;
  border-radius: 11px;
  font-size: 13px;
  font-weight: 800;
  font-family: var(--font);
  cursor: pointer;
  border: none;
  transition: all .25s cubic-bezier(.22,1,.36,1);
  text-decoration: none;
}
.btn-ghost {
  background: transparent;
  color: var(--muted);
  border: 1.5px solid var(--border);
}
.btn-ghost:hover {
  border-color: var(--navy);
  color: var(--navy);
}
.btn-primary {
  background: linear-gradient(135deg,var(--navy-d),var(--navy));
  color: #fff;
  box-shadow: 0 4px 14px rgba(2,1,131,.25);
}
.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(255,150,78,.35);
  background: linear-gradient(135deg,var(--orange-light),var(--orange-dark));
}
.btn svg {
  flex-shrink: 0;
}
.success-panel {
  display: none;
  text-align: center;
  padding: 60px 28px;
}
.success-panel.active {
  display: block;
}
.si {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: linear-gradient(135deg,var(--ok),#34d399);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 18px;
  box-shadow: 0 8px 24px rgba(16,185,129,.30);
  animation: popIn .4s cubic-bezier(.34,1.56,.64,1);
}
.si svg {
  width: 32px;
  height: 32px;
  color: #fff;
}
@keyframes popIn {
	from {
		transform: scale(0);
		opacity: 0
	}

	to {
		transform: scale(1);
		opacity: 1
	}
}
@keyframes spin {
	from {
		transform: rotate(0)
	}

	to {
		transform: rotate(360deg)
	}
}
.s-title {
  font-family: var(--font);
  font-size: 22px;
  font-weight: 800;
  color: var(--text);
  margin-bottom: 8px;
}
.s-sub {
  font-size: 13.5px;
  color: var(--muted);
  line-height: 1.7;
  max-width: 380px;
  margin: 0 auto 18px;
}
.s-ref {
  display: inline-block;
  padding: 9px 18px;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: 10px;
  font-size: 13px;
  color: var(--ok);
  font-weight: 800;
  margin-bottom: 24px;
}
@keyframes flt-pulse-kf {
	0%,100% {
		opacity: .6;
		transform: scale(1);
	}

	50% {
		opacity: 0;
		transform: scale(1.04);
	}
}
.flt-head-texts {
  flex: 1;
  overflow: hidden;
}
.flt-head-sub {
  font-size: 8px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,150,78,.55);
  white-space: nowrap;
  margin-top: 1px;
}
.other-input.show {
    display: block;
}
.other-input {
    display: none;
}
.wpcf7-radio label {
  font-weight: 600;
  margin-bottom: 12px;
  display: inline-block;
}
.wpcf7-radio .wpcf7-list-item {
  display: block;
  margin: 0 0 12px 0 !important;
}
.wpcf7-radio .wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 16px 20px;
  background: #f4f5f8;
  border: 1px solid transparent;
  border-radius: 12px;
  cursor: pointer;
  font-weight: 400;
  transition: all 0.2s ease;
}
.wpcf7-radio .wpcf7-list-item label:hover {
  background: #e9eaf7;
  border-color: #020183;
}
.wpcf7-radio input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  min-width: 20px;
  border: 2px solid #b0b3c6;
  border-radius: 50%;
  margin: 0;
  position: relative;
  cursor: pointer;
  transition: border-color 0.2s ease;
}
.wpcf7-radio input[type="radio"]:hover {
  border-color: #020183;
}
.wpcf7-radio input[type="radio"]:checked {
  border-color: #020183;
}
.wpcf7-radio input[type="radio"]:checked::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #020183;
}
.wpcf7-radio .wpcf7-list-item:has(input:checked) label {
  background: #e9eaf7;
  border-color: #020183;
  box-shadow: 0 0 0 1px #020183 inset;
}
.wpcf7-radio input[type="radio"]:focus-visible {
  outline: 2px solid #020183;
  outline-offset: 2px;
}
.check-group-col .wpcf7-form-control.wpcf7-checkbox,
.check-group-col .wpcf7-form-control.wpcf7-radio {
    display: flex;
    gap: 10px;
}
.check-group-col .wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item {
    width: calc(50% - 5px);
    margin: 0;
}
.check-group-col .wpcf7-form-control.wpcf7-radio .wpcf7-list-item {
    width: 100%;
    margin: 0 !important;
}
.submit-form p.submit-note {
    max-width: 100%;
}
.submit-form {
    text-align: center;
}
.submit-note-form {
    background: #f8fafc;
    border-top: 1px solid #f1f5f9;
}
.submit-form .wpcf7-form-control-wrap[data-name="agree"] .wpcf7-list-item {
    text-align: left;
}
.wpcf7-form-control-wrap .wpcf7-checkbox label {
    height: 100%;
}
.part-num.c3 {
    background: #fe8026;
}
.part-num.c2 {
    background: #0c9a8a;
}
.wpcf7-form .wpcf7-response-output {
    position: relative;
    margin-bottom: 20px;
    background-color: #f0fdf4;
    border-radius: 10px;
    padding: 10px 15px;
}
.wpcf7-form.invalid .wpcf7-response-output {
    background-color: #fee2e2;
}
.wpcf7-acceptance label {
    display: flex;
    gap: 10px;
    padding: 12px 14px;
    border-radius: var(--r-sm);
    border: 1.5px solid var(--gray-200);
    background: var(--gray-100);
    cursor: pointer;
    font-size: 15px;
    color: #333;
    transition: all 0.2s ease;
    user-select: none;
    letter-spacing: normal;
    font-weight: 400;
}
@media (max-width: 480px) {
  .flt-outer {
    bottom: 14px;
    right: 14px;
    width: 232px;
  }
  .flt-num {
    font-size: 19px;
  }
  .flt-action-txt {
    font-size: 12px;
  }
}
[data-reveal] {
  opacity: 1;
  transform: none;
  animation: fadeUp .65s cubic-bezier(.22,1,.36,1) both;
}
[data-delay="100"] {
  animation-delay: .10s;
}
@keyframes fadeUp {
	from {
		opacity: 0;
		transform: translateY(28px)
	}

	to {
		opacity: 1;
		transform: none
	}
}
@media (prefers-reduced-motion:reduce) {
  [data-reveal] {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}
.hero-wave{position:absolute;bottom:-1px;left:0;width:100%;z-index:2;pointer-events:none;line-height:0;}
.hero-wave svg{display:block;width:100%;height:auto;}
.hero-inner{position:relative;z-index:2;max-width:1100px;margin:0 auto;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.45);margin-bottom:16px;}
.hero-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--cyan);animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.4)}}
.hero h1{font-family:var(--font);font-size:clamp(22px,3.6vw,34px);font-weight:800;color:#fff;line-height:1.16;letter-spacing:-.4px;margin-bottom:8px;}
.hero h1 em{color:var(--orange-dark);}
.hero-sub{font-size:13.5px;color:rgba(255,255,255,.58);font-weight:500;margin-bottom:28px;max-width:560px;line-height:1.65;}
.stats-row{display:flex;flex-wrap:wrap;gap:12px;}
.stat-card{background:rgba(255,255,255,.08);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.13);border-radius:14px;padding:11px 16px;display:flex;align-items:center;gap:10px;min-width:130px;flex:1;}
.stat-icon{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.stat-icon svg{color:#fff;}
.stat-num{font-family:var(--font);font-size:18px;font-weight:800;color:#fff;}
.stat-label{font-size:10.5px;color:rgba(255,255,255,.55);font-weight:500;margin-top:1px;}
.form-outer{max-width:760px;margin:0 auto;padding:40px 20px 72px;}
.steps-wrap{background:#fff;border:1.5px solid var(--border);border-radius:18px;padding:16px 24px;box-shadow:0 4px 20px rgba(0,0,0,.07);margin-bottom:28px;display:flex;align-items:center;}
.step{display:flex;align-items:center;gap:10px;flex:1;position:relative;}
.step:not(:last-child)::after{content:'';position:absolute;height:2px;background:var(--border);left:46px;right:0;top:50%;transform:translateY(-50%);z-index:0;transition:background .3s;}
.step.done:not(:last-child)::after,.step.active:not(:last-child)::after{background:linear-gradient(90deg,var(--navy),var(--cyan));}
.step-num{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;background:var(--border);color:var(--muted);flex-shrink:0;position:relative;z-index:1;transition:all .25s;}
.step.active .step-num{background:linear-gradient(135deg,var(--navy),var(--navy-mid));color:#fff;box-shadow:0 4px 12px rgba(2,1,131,.30);}
.step.done .step-num{background:var(--ok);color:#fff;}
.step-done-icon{display:none;}.step.done .step-done-icon{display:block;}.step.done .step-num-text{display:none;}
.step-info{line-height:1.3;}
.step-lbl{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
.step.active .step-lbl{color:var(--navy);}.step.done .step-lbl{color:var(--ok);}
.step-name{font-size:12.5px;font-weight:700;color:var(--text);}
.form-card{background:#fff;border:1.5px solid var(--border);border-radius:20px;overflow:hidden;box-shadow:0 2px 16px rgba(0,0,0,.06);}
.form-panel{display:none;}.form-panel.active{display:block;}
.panel-head{background:linear-gradient(135deg,var(--navy-d),var(--navy) 60%,#0a3a96);padding:20px 28px;display:flex;align-items:center;gap:14px;}
.panel-icon{width:42px;height:42px;border-radius:11px;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.panel-icon svg{color:#fff;}
.panel-title{font-family:var(--font);font-size:15px;font-weight:800;color:#fff;margin-bottom:2px;}
.panel-sub{font-size:12px;color:rgba(255,255,255,.55);font-weight:500;}
.panel-body{padding:24px 28px;}
.sec-chip{font-size:9.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);margin-bottom:14px;display:flex;align-items:center;gap:8px;}
.sec-chip::after{content:'';flex:1;height:1px;background:linear-gradient(to right,rgba(2,1,131,.15),transparent);}
.divider{height:1px;background:var(--border);margin:20px 0;}
.frow{display:grid;gap:14px;margin-bottom:14px;}
.frow.c2{grid-template-columns:1fr 1fr;}.frow.c1{grid-template-columns:1fr;}
.field{display:flex;flex-direction:column;gap:5px;}
.flabel{font-size:12px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:4px;flex-wrap:wrap;}
.flabel .req{color:var(--error);}.flabel .opt{font-size:11px;font-weight:500;color:var(--muted);}
.finput,.fselect,.ftextarea{width:100%;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:13px;font-family:var(--font);color:var(--text);background:#fff;outline:none;transition:border-color .2s,box-shadow .2s;}
.fselect{height:42px;cursor:pointer;-webkit-appearance:menulist!important;appearance:menulist!important;}
.finput:focus,.fselect:focus,.ftextarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(2,1,131,.08);}
.finput.err,.fselect.err{border-color:var(--error);box-shadow:0 0 0 3px rgba(239,68,68,.08);}
.ftextarea{resize:vertical;min-height:80px;line-height:1.65;}
.ferr{font-size:11px;color:var(--error);display:none;margin-top:2px;}.ferr.show{display:block;}
.connect-list{display:flex;flex-direction:column;gap:6px;margin-top:2px;}
.connect-item{display:flex;align-items:center;gap:10px;padding:9px 13px;border:1.5px solid var(--border);border-radius:9px;cursor:pointer;user-select:none;transition:all .18s;background:#fff;}
.connect-item:hover{border-color:rgba(2,1,131,.25);background:rgba(2,1,131,.03);}
.connect-item.checked{border-color:var(--navy);background:rgba(2,1,131,.05);}
.connect-cb{width:17px;height:17px;border-radius:4px;border:2px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .18s;background:#fff;}
.connect-item.checked .connect-cb{background:linear-gradient(135deg,var(--navy),var(--navy-mid));border-color:var(--navy);}
.connect-item.checked .connect-cb svg{display:block;}
.connect-cb svg{display:none;width:9px;height:9px;color:#fff;}
.connect-label{font-size:12.5px;font-weight:600;color:var(--text);line-height:1.4;}
.connect-item.checked .connect-label{color:var(--navy);font-weight:700;}
.booth-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:6px;}
.b-skel{border-radius:14px;height:130px;background:linear-gradient(90deg,#f1f5f9 25%,#e8edf5 50%,#f1f5f9 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;}
@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
.booth-opt{border:1.5px solid var(--border);border-radius:14px;padding:16px;cursor:pointer;position:relative;overflow:hidden;transition:all .25s cubic-bezier(.22,1,.36,1);background:#fff;}
.booth-opt::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;border-radius:2px 2px 0 0;background:var(--border);transition:background .25s;}
.booth-opt:hover:not(.soldout){border-color:rgba(2,1,131,.3);box-shadow:0 4px 16px rgba(2,1,131,.10);transform:translateY(-2px);}
.booth-opt.selected{border-color:var(--navy);background:rgba(2,1,131,.04);box-shadow:0 4px 20px rgba(2,1,131,.14);}
.booth-opt.selected::before{background:linear-gradient(90deg,var(--navy),var(--cyan));}
.booth-opt.dimmed{opacity:.32;filter:grayscale(.6);transform:none!important;}
.booth-opt.soldout{opacity:.36;cursor:not-allowed;filter:grayscale(.7);pointer-events:none;}
.booth-opt.soldout::before{background:var(--error);}
.bo-check{position:absolute;top:12px;right:12px;width:18px;height:18px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;transition:all .2s;}
.booth-opt.selected .bo-check{background:var(--navy);border-color:var(--navy);}
.booth-opt.selected .bo-check svg{display:block;}
.bo-check svg{display:none;width:9px;height:9px;color:#fff;}
.bo-name{font-family:var(--font);font-size:13px;font-weight:800;color:var(--text);margin-bottom:5px;padding-right:26px;}
.booth-opt.selected .bo-name{color:var(--navy);}
.bo-size{font-size:11px;color:var(--muted);font-weight:600;margin-bottom:5px;display:flex;align-items:center;gap:4px;}
.bo-size svg{color:var(--cyan);flex-shrink:0;}
.bo-price{font-size:15px;font-weight:800;color:var(--navy);margin-bottom:6px;}
.booth-opt.selected .bo-price{color:var(--orange-light);}
.bo-stock{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px;}
.stock-ok{background:#dcfce7;color:#16a34a;}.stock-low{background:#fef9c3;color:#b45309;}.stock-none{background:#fee2e2;color:#dc2626;}
.stock-dot{width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0;}
.inv-err{display:none;flex-direction:column;gap:10px;background:rgba(239,68,68,.05);border:1.5px solid rgba(239,68,68,.18);border-radius:14px;padding:18px 20px;margin-bottom:14px;}
.inv-err-row{display:flex;align-items:center;gap:10px;}
.inv-err-row svg{color:var(--error);flex-shrink:0;}
.inv-err-msg{font-size:12.5px;color:#be123c;font-weight:600;flex:1;}
.inv-err-detail{font-size:11px;color:var(--muted);padding:8px 12px;background:#f8fafc;border-radius:8px;font-family:'Courier New',monospace;word-break:break-all;display:none;}
.inv-err-detail.show{display:block;}
.inv-err-actions{display:flex;gap:8px;flex-wrap:wrap;}
.inv-err-btn{padding:7px 16px;border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;border:none;font-family:var(--font);transition:all .18s;}
.inv-err-btn.retry{background:var(--navy);color:#fff;}
.inv-err-btn.retry:hover{background:var(--navy-d);}
.inv-err-btn.detail{background:#f1f5f9;color:var(--muted);border:1.5px solid var(--border);}
.inv-err-btn.detail:hover{color:var(--text);}
.nonce-warn{display:none;align-items:center;gap:10px;background:#fffbeb;border:1.5px solid #fcd34d;border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:12px;color:#92400e;font-weight:600;}
.nonce-warn.show{display:flex;}
.nonce-warn svg{flex-shrink:0;color:#d97706;}
.loc-section{display:none;margin-top:4px;}.loc-section.show{display:block;}
.loc-hint{font-size:12px;color:var(--muted);margin-bottom:10px;padding:9px 13px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:9px;display:flex;align-items:center;gap:7px;}
.loc-hint svg{color:var(--cyan);flex-shrink:0;}
.loc-grid{display:flex;flex-wrap:wrap;gap:7px;}
.loc-btn{padding:6px 13px;border-radius:9px;border:1.5px solid var(--border);background:#fff;font-size:11.5px;font-weight:700;color:var(--muted);cursor:pointer;transition:all .2s;font-family:'Courier New',monospace;letter-spacing:.04em;}
.loc-btn:hover:not(.occupied){border-color:var(--navy);color:var(--navy);background:rgba(2,1,131,.04);}
.loc-btn.picked{border-color:var(--navy);background:var(--navy);color:#fff;box-shadow:0 2px 8px rgba(2,1,131,.25);}
.loc-btn.occupied{opacity:.32;cursor:not-allowed;text-decoration:line-through;pointer-events:none;border-color:rgba(239,68,68,.3);color:var(--error);background:#fff5f5;}
.fp-link{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--navy);text-decoration:none;padding:7px 14px;border-radius:9px;border:1.5px solid rgba(2,1,131,.18);background:rgba(2,1,131,.04);transition:all .18s;margin-bottom:12px;cursor:pointer;}
.fp-link:hover{background:rgba(2,1,131,.10);border-color:var(--navy);}
.fp-link svg{flex-shrink:0;}
.lb-overlay{position:fixed;inset:0;z-index:99999;background:#f5f4f4;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s cubic-bezier(.22,1,.36,1);}
.lb-overlay.open{opacity:1;pointer-events:all;}
.lb-stage{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:hidden;}
.lb-img-container{position:relative;display:flex;align-items:center;justify-content:center;transition:transform .08s linear;cursor:grab;user-select:none;}
.lb-img-container.dragging{cursor:grabbing;transition:none;}
.lb-img-container img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:10px;box-shadow:0 8px 40px rgba(0,0,0,.18);pointer-events:none;transform:scale(.9);transition:transform .4s cubic-bezier(.22,1,.36,1);display:block;}
.lb-overlay.open .lb-img-container img{transform:scale(1);}
.lb-controls{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:4px;background:rgba(2,1,50,.88);backdrop-filter:blur(20px);border:1px solid rgba(2,1,50,.15);border-radius:50px;padding:7px 14px;z-index:100001;opacity:0;transition:opacity .3s;box-shadow:0 8px 32px rgba(0,0,0,.18);}
.lb-overlay.open .lb-controls{opacity:1;}
.lb-ctrl-btn{width:38px;height:38px;border-radius:50%;background:rgba(2,1,50,.12);border:1px solid rgba(2,1,50,.2);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;flex-shrink:0;outline:none;padding:0;line-height:0;}
.lb-ctrl-btn:hover{background:var(--orange-light);border-color:var(--orange-light);transform:scale(1.1);}
.lb-ctrl-btn svg{display:block;margin:auto;}
.lb-zoom-pct{font-family:var(--font);font-size:12px;font-weight:800;color:#fff;min-width:44px;text-align:center;letter-spacing:.02em;line-height:38px;}
.lb-ctrl-divider{width:1px;height:20px;background:rgba(255,255,255,.25);flex-shrink:0;margin:0 4px;align-self:center;}
.lb-close{position:fixed;top:20px;right:20px;width:40px;height:40px;border-radius:50%;background:rgba(2,1,50,.12);border:1.5px solid rgba(2,1,50,.2);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100001;transition:background .2s,border-color .2s,transform .25s,opacity .3s;opacity:0;outline:none;padding:0;line-height:0;}
.lb-overlay.open .lb-close{opacity:1;}
.lb-close:hover{background:var(--orange-light);border-color:var(--orange-light);transform:rotate(90deg) scale(1.1);}
.lb-close svg{display:block;margin:auto;}
.lb-caption{position:fixed;top:24px;left:50%;transform:translateX(-50%);font-family:var(--font);font-size:12px;font-weight:700;color:#374151;background:rgba(2,1,50,.08);padding:6px 18px;border-radius:20px;border:1px solid rgba(2,1,50,.1);white-space:nowrap;z-index:100001;pointer-events:none;opacity:0;transition:opacity .3s;}
.lb-overlay.open .lb-caption{opacity:1;}
.lb-hint{position:fixed;bottom:80px;left:50%;transform:translateX(-50%);font-size:11px;color:rgba(2,1,50,.35);font-family:var(--font);pointer-events:none;white-space:nowrap;opacity:0;transition:opacity .3s;}
.lb-overlay.open .lb-hint{opacity:1;animation:hintFade 3s ease 1s forwards;}
@keyframes hintFade{0%{opacity:1}70%{opacity:1}100%{opacity:0}}
.chk-wrap{display:flex;flex-direction:column;gap:10px;}
.chk-item{display:flex;align-items:flex-start;gap:10px;cursor:pointer;user-select:none;outline:none;}
.chk-box{width:18px;height:18px;border-radius:5px;border:2px solid var(--border);flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;transition:all .18s;}
.chk-item.checked .chk-box{background:linear-gradient(135deg,var(--navy),var(--navy-mid));border-color:var(--navy);}
.chk-item.checked .chk-box svg{display:block;}
.chk-box svg{display:none;width:10px;height:10px;color:#fff;}
.chk-text{font-size:12.5px;color:var(--text);line-height:1.6;}
.chk-text a{color:var(--navy);font-weight:700;text-decoration:none;}
.chk-text a:hover{color:var(--orange-light);}
.sum-box{background:rgba(2,1,131,.03);border:1.5px solid rgba(2,1,131,.10);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:10px;margin-bottom:20px;}
.sum-row{display:flex;justify-content:space-between;font-size:12.5px;gap:12px;}
.sum-row .k{color:var(--muted);font-weight:600;flex-shrink:0;}
.sum-row .v{font-weight:700;color:var(--text);text-align:right;}
.sum-row .v.hi{color:var(--navy);}
.sum-sep{height:1px;background:rgba(2,1,131,.10);}
.panel-foot{padding:16px 28px 22px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px;}
.prog{font-size:11.5px;color:var(--muted);font-weight:600;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 24px;border-radius:11px;font-size:13px;font-weight:800;font-family:var(--font);cursor:pointer;border:none;transition:all .25s cubic-bezier(.22,1,.36,1);text-decoration:none;}
.btn-ghost{background:transparent;color:var(--muted);border:1.5px solid var(--border);}
.btn-ghost:hover{border-color:var(--navy);color:var(--navy);}
.btn-primary{background:linear-gradient(135deg,var(--navy-d),var(--navy));color:#fff;box-shadow:0 4px 14px rgba(2,1,131,.25);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(255,150,78,.35);background:linear-gradient(135deg,var(--orange-light),var(--orange-dark));}
.btn svg{flex-shrink:0;}
.success-panel{display:none;text-align:center;padding:60px 28px;}.success-panel.active{display:block;}
.si{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--ok),#34d399);display:flex;align-items:center;justify-content:center;margin:0 auto 18px;box-shadow:0 8px 24px rgba(16,185,129,.30);animation:popIn .4s cubic-bezier(.34,1.56,.64,1);}
.si svg{width:32px;height:32px;color:#fff;}
@keyframes popIn{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
.s-title{font-family:var(--font);font-size:22px;font-weight:800;color:var(--text);margin-bottom:8px;}
.s-sub{font-size:13.5px;color:var(--muted);line-height:1.7;max-width:380px;margin:0 auto 18px;}
.s-ref{display:inline-block;padding:9px 18px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;font-size:13px;color:var(--ok);font-weight:800;margin-bottom:24px;}
/* ════ LOGO TICKER ════ */
.sp-ticker-wrap{background:#f7f8fa;padding:40px 0;border-top:1.5px solid var(--gray-200);}
.sp-ticker-overflow{overflow:hidden;position:relative;}
.sp-ticker-overflow::before,.sp-ticker-overflow::after{content:'';position:absolute;top:0;width:120px;height:100%;z-index:2;pointer-events:none;}
.sp-ticker-overflow::before{left:0;background:linear-gradient(to right,#f7f8fa,transparent);}
.sp-ticker-overflow::after{right:0;background:linear-gradient(to left,#f7f8fa,transparent);}
.sp-ticker-track{display:flex;gap:16px;width:max-content;padding:8px 0;}
.sp-ticker-tile{flex-shrink:0;width:180px;height:84px;background:#fff;border:1.5px solid #e5e7eb;border-radius:14px;display:flex;align-items:center;justify-content:center;padding:12px 20px;overflow:hidden;transition:all .25s;box-shadow:0 2px 8px rgba(0,0,0,.05);}
.sp-ticker-tile:hover{border-color:rgba(221,92,32,.4);box-shadow:0 6px 20px rgba(221,92,32,.10);transform:translateY(-3px);}
.sp-ticker-tile img{max-width:100%;max-height:100%;object-fit:contain;opacity:.82;transition:opacity .2s;}
.sp-ticker-tile:hover img{opacity:1;}

/* FLOATING CTA */
.flt-outer{position:fixed;bottom:28px;right:28px;z-index:9998;width:256px;opacity:0;transform:translateY(20px) scale(.88);transition:opacity .45s ease,transform .45s cubic-bezier(.34,1.56,.64,1);overflow:visible;font-family:'Open Sauce One','Be Vietnam Pro',sans-serif;}
.flt-outer.flt-visible{opacity:1;transform:translateY(0) scale(1);}
.flt-pulse{position:absolute;inset:-4px;border-radius:24px;border:2px solid rgba(249,115,22,.36);animation:flt-pulse-kf 2.4s ease-in-out infinite;pointer-events:none;z-index:0;transition:opacity .3s;}
.flt-outer.flt-is-closed .flt-pulse{opacity:0;}
@keyframes flt-pulse-kf{0%,100%{opacity:.6;transform:scale(1);}50%{opacity:0;transform:scale(1.04);}}
.flt-card{position:relative;z-index:1;width:100%;background:#020128;border-radius:20px 20px 0 0;border:1px solid rgba(255,150,78,.26);border-bottom:none;padding:12px 14px 14px;color:#fff;overflow:hidden;max-height:300px;opacity:1;transition:max-height .35s cubic-bezier(.4,0,.2,1),opacity .3s,padding .3s,border-width .3s;}
.flt-outer.flt-is-closed .flt-card{max-height:0;opacity:0;padding-top:0;padding-bottom:0;border-width:0;}
.flt-head{display:flex;align-items:center;gap:6px;margin-bottom:9px;}
.flt-clock{width:13px;height:13px;border:1.5px solid #ff964e;border-radius:50%;flex-shrink:0;position:relative;}
.flt-clock::after{content:'';position:absolute;top:50%;left:50%;width:1.5px;height:4px;background:#ff964e;transform:translate(-50%,-100%) translateY(1px);border-radius:1px;}
.flt-head-texts{flex:1;overflow:hidden;}
.flt-head-title{font-size:8.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#ff964e;line-height:1.3;white-space:nowrap;}
.flt-head-sub{font-size:8px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,150,78,.55);white-space:nowrap;margin-top:1px;}
.flt-dlabel{font-size:10.5px;color:rgba(255,255,255,.40);margin-bottom:10px;line-height:1;}
.flt-dlabel strong{color:#fff;font-weight:700;}
.flt-cd{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:center;gap:3px;margin-bottom:10px;}
.flt-cell{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:9px;padding:7px 2px 5px;text-align:center;}
.flt-num{display:block;font-size:22px;font-weight:800;line-height:1;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.02em;}
.flt-unit{display:block;font-size:7px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.26);margin-top:3px;}
.flt-sep{font-size:14px;font-weight:900;color:rgba(255,150,78,.38);text-align:center;margin-bottom:8px;user-select:none;line-height:1;}
.flt-prog{height:3px;background:rgba(255,255,255,.07);border-radius:2px;overflow:hidden;}
.flt-prog-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,#020183,#ff964e);transition:width .8s ease;}
.flt-action{width:100%;display:flex;align-items:center;background:linear-gradient(135deg,#dd5c20 0%,#ff964e 100%);border:none;border-radius:0 0 20px 20px;color:#fff;cursor:pointer;text-decoration:none;overflow:hidden;height:50px;box-shadow:0 8px 28px rgba(221,92,32,.36),0 2px 8px rgba(0,0,0,.18);transition:filter .22s,border-radius .35s cubic-bezier(.4,0,.2,1);}
.flt-outer.flt-is-closed .flt-action{border-radius:20px;}
.flt-action:hover{filter:brightness(1.09);}
.flt-action-ico{width:48px;height:50px;flex-shrink:0;background:rgba(0,0,0,.14);display:flex;align-items:center;justify-content:center;}
.flt-action-ico svg{width:17px;height:17px;stroke:#fff;fill:none;stroke-width:2.2;}
.flt-action-div{width:1px;height:26px;background:rgba(255,255,255,.18);flex-shrink:0;}
.flt-action-txt{flex:1;text-align:center;font-size:13px;font-weight:800;color:#fff;white-space:nowrap;padding:0 6px 0 8px;}
.flt-action-arr{width:36px;height:50px;flex-shrink:0;background:rgba(0,0,0,.12);display:flex;align-items:center;justify-content:center;transition:background .2s;}
.flt-action:hover .flt-action-arr{background:rgba(0,0,0,.20);}
.flt-action-arr svg{width:13px;height:13px;stroke:rgba(255,255,255,.75);fill:none;stroke-width:2.5;}
.flt-toggle{position:absolute;top:-14px;right:-14px;width:28px;height:28px;border-radius:50%;background:#020128;border:1.5px solid rgba(255,150,78,.60);cursor:pointer;padding:0;z-index:20;display:flex;align-items:center;justify-content:center;transition:background .2s;box-shadow:0 2px 10px rgba(0,0,0,.40);line-height:0;font-size:0;}
.flt-toggle:hover{background:#03024a;}
.flt-toggle svg{display:block;width:12px;height:12px;stroke:#ff964e;fill:none;stroke-width:2.5;transition:transform .3s cubic-bezier(.4,0,.2,1);transform:none;}
.flt-outer.flt-is-closed .flt-toggle svg{transform:rotate(180deg);}
@media(max-width:480px){.flt-outer{bottom:14px;right:14px;width:232px;}.flt-num{font-size:19px;}.flt-action-txt{font-size:12px;}}

[data-reveal]{opacity:1;transform:none;animation:fadeUp .65s cubic-bezier(.22,1,.36,1) both;}
[data-delay="100"]{animation-delay:.10s;}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){[data-reveal]{animation:none!important;opacity:1!important;transform:none!important;}}
@media(max-width:680px){
  .hero{padding:36px 20px 48px;}.form-outer{padding:28px 14px 56px;}
  .frow.c2{grid-template-columns:1fr;}.booth-grid{grid-template-columns:1fr;}
  .panel-body,.panel-foot,.panel-head{padding-left:18px;padding-right:18px;}
  .step-info{display:none;}.step:not(:last-child)::after{display:none;}
  .panel-foot{flex-wrap:wrap;}.btn{flex:1;justify-content:center;}.steps-wrap{padding:14px 18px;}
}
@media (max-width: 680px) {
  .hero {
    padding: 36px 20px 48px;
  }
  .form-outer {
    padding: 28px 14px 56px;
  }
  .frow.c2 {
    grid-template-columns: 1fr;
  }
  .booth-grid {
    grid-template-columns: 1fr;
  }
  .panel-body,.panel-foot,.panel-head {
    padding-left: 18px;
    padding-right: 18px;
  }
  .step-info {
    display: none;
  }
  .step:not(:last-child)::after {
    display: none;
  }
  .panel-foot {
    flex-wrap: wrap;
  }
  .btn {
    flex: 1;
    justify-content: center;
  }
  .steps-wrap {
    padding: 14px 18px;
  }
	.form-wrap {
        padding: 32px 1rem 20px;
    }
	.check-group-col .wpcf7-form-control.wpcf7-checkbox,
	.check-group-col .wpcf7-form-control.wpcf7-radio {
		flex-wrap: wrap;
	}
	.check-group-col .wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item{
		width: 100%;
	}
}
#fltOuter, 
.flt-outer {
    display: none !important;
}
/* Đè màu tiêu đề bài viết sang màu #02016d */
.vc_grid .vc_gitem-zone-c h4,
.vc_grid .vc_gitem-zone-c h4 a,
.vc_grid .vc_gitem-animated-block + .vc_gitem-zone-c a,
.vc_gitem-post-data-source-post_title h4 a,
.vc_gitem-post-data-source-post_title a {
    color: #02016d !important;
}
/*  Ẩn đoạn văn bản mô tả (đoạn text dài) */
.vc_gitem-post-data-source-post_excerpt {
    display: none !important;
}

/*  Ẩn nút Read More / Xem thêm */
.vc_gitem-post-data-source-post_link,
.vc_gitem-zone-c .vc_btn3-container {
    display: none !important;
}
/* Ẩn hộp thông báo mặc định của Contact Form 7 khi chưa có nội dung */
.wpcf7-response-output:empty,
.wpcf7-response-output:not(.wpcf7-validation-errors):not(.wpcf7-mail-sent-ok):not(.wpcf7-mail-sent-ng) {
    display: none !important;
}
.step-lbl {
    margin-bottom: 6px;
}@media (max-width: 576px) {
	@media (max-width: 767px) {
  footer .the-slider-class { max-width: 100% !important; overflow: hidden !important; }
  footer .the-slider-class img { width: 100% !important; height: auto !important; }
}

}

