/* ==========================================================================
   KYOKUSHIN KARATE BANGALORE - Elementor Free build.
   Section A: ORIGINAL STYLESHEET (mechanically adapted, see notes in section B)
   Section B: Elementor adaptation layer
   Section C: classes generated from the original inline style="" attributes
   ========================================================================== */
/* ---------------------------------------------------------------- A. ORIGINAL */
/* ==========================================================================
   KYOKUSHIN KARATE BANGALORE — TEMPLATE STYLESHEET
   Palette:  White #FFFFFF · Dojo Blue #0B4C91 · Deep Navy #072346
             Crimson #C8202F · Gold #E3A934 · Ink #16202B · Mist #F3F6FA
   Display face: 'Bebas Neue'  |  Body face: 'Inter'  |  Accent: 'Noto Serif JP'
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Inter:wght@400;500;600;700;800&family=Noto+Serif+JP:wght@500;700&display=swap');

:root{--white:#ffffff;--blue:#0b4c91;--blue-light:#1465c2;--navy:#072346;--red:#c8202f;--red-dark:#8f1521;--gold:#e3a934;--gold-light:#f3c866;--ink:#16202b;--ink-soft:#4a5568;--mist:#f3f6fa;--mist-2:#e8eef6;--line:#e1e7ef;--font-display:'Bebas Neue', 'Arial Narrow', sans-serif;--font-body:'Inter', -apple-system, Segoe UI, sans-serif;--font-jp:'Noto Serif JP', serif;--radius:2px;--shadow-sm:0 1px 3px rgba(7,35,70,.08);--shadow-md:0 10px 30px rgba(7,35,70,.12);--shadow-lg:0 24px 60px rgba(7,35,70,.20);--container:1180px;}

*,
*::before,
*::after{box-sizing:border-box !important;}
html{scroll-behavior:smooth !important;}
body{margin:0 !important;font-family:var(--font-body) !important;color:var(--ink) !important;background:var(--white) !important;-webkit-font-smoothing:antialiased !important;line-height:1.65 !important;}
img{max-width:100% !important;display:block !important;}
a{color:inherit !important;text-decoration:none !important;}
ul{margin:0 !important;padding:0 !important;list-style:none !important;}
h1,
h2,
h3,
h4{margin:0 !important;font-family:var(--font-display) !important;letter-spacing:.02em !important;font-weight:400 !important;color:var(--navy) !important;}
p{margin:0 0 1em !important;}
.container{max-width:var(--container) !important;margin:0 auto !important;padding:0 24px !important;}

:focus-visible{outline:3px solid var(--gold) !important;outline-offset:2px !important;}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important;}
}

/* ---------- eyebrow / kicker ---------- */
.kicker{display:inline-flex !important;align-items:center !important;gap:10px !important;font-family:var(--font-jp) !important;font-size:13px !important;letter-spacing:.14em !important;text-transform:uppercase !important;color:var(--red) !important;font-weight:700 !important;margin-bottom:14px !important;}
.kicker::before{content:'' !important;width:26px !important;height:2px !important;background:var(--gold) !important;display:inline-block !important;}

h1{font-size:clamp(42px,6vw,76px) !important;line-height:.98 !important;}
h2{font-size:clamp(30px,4vw,46px) !important;line-height:1.05 !important;}
h3{font-size:24px !important;line-height:1.15 !important;}
.section-title{margin-bottom:14px !important;}
.section-sub{color:var(--ink-soft) !important;font-size:17px !important;max-width:640px !important;margin-bottom:44px !important;}

/* ---------- buttons ---------- */
.btn{display:inline-flex !important;align-items:center !important;gap:10px !important;font-family:var(--font-display) !important;font-size:18px !important;letter-spacing:.05em !important;padding:14px 30px !important;border-radius:var(--radius) !important;border:2px solid transparent !important;cursor:pointer !important;transition:all .2s ease !important;}
.btn-primary{background:var(--red) !important;color:var(--white) !important;box-shadow:var(--shadow-sm) !important;}
.btn-primary:hover{background:var(--red-dark) !important;transform:translateY(-2px) !important;box-shadow:var(--shadow-md) !important;}
.btn-outline{background:transparent !important;border-color:var(--white) !important;color:var(--white) !important;}
.btn-outline:hover{background:var(--white) !important;color:var(--navy) !important;}
.btn-navy{background:var(--navy) !important;color:var(--white) !important;}
.btn-navy:hover{background:var(--blue) !important;transform:translateY(-2px) !important;}
.btn-gold{background:var(--gold) !important;color:var(--navy) !important;}
.btn-gold:hover{background:var(--gold-light) !important;}

/* ==========================================================================
   TOP UTILITY BAR
   ========================================================================== */
.topbar{background:var(--navy) !important;color:#cfe0f5 !important;font-size:13px !important;}
.topbar .container{display:flex !important;justify-content:space-between !important;align-items:center !important;height:38px !important;flex-wrap:wrap !important;gap:6px !important;}
.topbar a{color:#cfe0f5 !important;}
.topbar a:hover{color:var(--gold-light) !important;}
.topbar-left{display:flex !important;gap:22px !important;flex-wrap:wrap !important;}
.topbar-left span,
.topbar-left .kx-span{display:inline-flex !important;align-items:center !important;gap:6px !important;}

/* ==========================================================================
   HEADER + MEGA MENU
   ========================================================================== */
.site-header{background:var(--white) !important;border-bottom:1px solid var(--line) !important;position:sticky !important;top:0 !important;z-index:200 !important;box-shadow:var(--shadow-sm) !important;}
.header-row{display:flex !important;align-items:center !important;justify-content:space-between !important;height:92px !important;gap:20px !important;}
.brand{display:flex !important;align-items:center !important;gap:14px !important;}
.brand img{height:64px !important;width:64px !important;border-radius:50% !important;box-shadow:0 0 0 3px var(--white),0 0 0 5px var(--gold) !important;}
.brand-text{font-family:var(--font-display) !important;line-height:1 !important;}
.brand-text .top{display:block !important;font-size:30px !important;color:var(--navy) !important;letter-spacing:.02em !important;}
.brand-text .bottom{display:block !important;font-size:10.5px !important;letter-spacing:.16em !important;color:var(--red) !important;margin-top:4px !important;font-family:var(--font-body) !important;font-weight:700 !important;}

.main-nav{display:flex !important;align-items:stretch !important;height:100% !important;}
.main-nav .kx-nav-list{display:flex !important;height:100% !important;}
.main-nav .kx-nav-list > li{position:relative !important;display:flex !important;align-items:center !important;}
.main-nav .kx-nav-list > li > a{display:flex !important;align-items:center !important;height:100% !important;padding:0 18px !important;font-family:var(--font-display) !important;font-size:18.5px !important;letter-spacing:.04em !important;color:var(--navy) !important;border-bottom:3px solid transparent !important;transition:all .18s ease !important;}
.main-nav .kx-nav-list > li > a:hover,
.main-nav .kx-nav-list > li.active > a{color:var(--red) !important;border-bottom-color:var(--red) !important;}
.main-nav .kx-nav-list > li.has-drop > a::after{content:'▾' !important;font-family:var(--font-body) !important;font-size:10px !important;margin-left:6px !important;color:var(--gold) !important;}

.dropdown{position:absolute !important;top:100% !important;left:0 !important;min-width:270px !important;background:var(--white) !important;border-top:3px solid var(--red) !important;box-shadow:var(--shadow-lg) !important;opacity:0 !important;visibility:hidden !important;transform:translateY(8px) !important;transition:all .2s ease !important;padding:10px 0 !important;}
.main-nav .kx-nav-list > li.has-drop:hover .dropdown,
.main-nav .kx-nav-list > li.has-drop:focus-within .dropdown{opacity:1 !important;visibility:visible !important;transform:translateY(0) !important;}
.dropdown a{display:block !important;padding:11px 22px !important;font-size:14.5px !important;font-weight:600 !important;color:var(--ink) !important;border-left:3px solid transparent !important;}
.dropdown a:hover{background:var(--mist) !important;border-left-color:var(--gold) !important;color:var(--red) !important;}

.nav-toggle{display:none !important;background:none !important;border:2px solid var(--navy) !important;border-radius:4px !important;width:46px !important;height:40px !important;cursor:pointer !important;position:relative !important;}
.nav-toggle span,
.nav-toggle .kx-span{position:absolute !important;left:9px !important;right:9px !important;height:2px !important;background:var(--navy) !important;}
.nav-toggle span:nth-child(1),
.nav-toggle .kx-span:nth-child(1){top:12px !important;}
.nav-toggle span:nth-child(2),
.nav-toggle .kx-span:nth-child(2){top:19px !important;}
.nav-toggle span:nth-child(3),
.nav-toggle .kx-span:nth-child(3){top:26px !important;}

@media (max-width:1080px){
  .main-nav{position:fixed !important;top:0 !important;right:0 !important;width:88% !important;max-width:360px !important;height:100vh !important;height:100dvh !important;transform:translateX(105%) !important;visibility:hidden !important;background:var(--navy) !important;flex-direction:column !important;padding:90px 0 30px !important;transition:transform .3s ease,visibility .3s !important;overflow-y:auto !important;-webkit-overflow-scrolling:touch !important;overscroll-behavior:contain !important;z-index:210 !important;box-shadow:-8px 0 30px rgba(0,0,0,.35) !important;}
  .main-nav.open{transform:translateX(0) !important;visibility:visible !important;}
  .main-nav .kx-nav-list{flex-direction:column !important;width:100% !important;}
  .main-nav .kx-nav-list > li{height:auto !important;border-bottom:1px solid rgba(255,255,255,.1) !important;}
  .main-nav .kx-nav-list > li > a{color:var(--white) !important;padding:16px 26px !important;height:auto !important;border-bottom:none !important;}
  .main-nav .kx-nav-list > li > a:hover{color:var(--gold-light) !important;}
  .dropdown{position:static !important;opacity:1 !important;visibility:visible !important;transform:none !important;box-shadow:none !important;background:rgba(0,0,0,.18) !important;border-top:none !important;padding:0 !important;display:none !important;}
  .main-nav .kx-nav-list > li.drop-open .dropdown{display:block !important;}
  .dropdown a{color:#cfe0f5 !important;padding:12px 40px !important;}
  .dropdown a:hover{background:rgba(255,255,255,.06) !important;}
  .nav-toggle{display:block !important;z-index:220 !important;background:var(--white) !important;flex-shrink:0 !important;}
  .nav-toggle span,
.nav-toggle .kx-span{transition:transform .25s ease,opacity .2s ease,top .25s ease !important;}
  .nav-toggle.open{border-color:var(--white) !important;background:var(--navy) !important;}
  .nav-toggle.open span,
.nav-toggle.open .kx-span{background:var(--white) !important;}
  .nav-toggle.open span:nth-child(1),
.nav-toggle.open .kx-span:nth-child(1){top:19px !important;transform:rotate(45deg) !important;}
  .nav-toggle.open span:nth-child(2),
.nav-toggle.open .kx-span:nth-child(2){opacity:0 !important;}
  .nav-toggle.open span:nth-child(3),
.nav-toggle.open .kx-span:nth-child(3){top:19px !important;transform:rotate(-45deg) !important;}
  .main-nav .kx-nav-list > li.has-drop > a{justify-content:space-between !important;}
  .main-nav .kx-nav-list > li.has-drop > a::after{transition:transform .2s ease !important;font-size:12px !important;}
  .main-nav .kx-nav-list > li.drop-open > a::after{transform:rotate(180deg) !important;}
  .main-nav .kx-nav-list > li{flex-wrap:wrap !important;}
  .main-nav .kx-nav-list > li > a{width:100% !important;}
  .dropdown{width:100% !important;min-width:0 !important;}
  body.nav-lock{overflow:hidden !important;}
  .nav-scrim{position:fixed !important;inset:0 !important;background:rgba(7,35,70,.6) !important;opacity:0 !important;visibility:hidden !important;transition:.3s !important;z-index:190 !important;}
  .nav-scrim.open{opacity:1 !important;visibility:visible !important;}
}


/* ==========================================================================
   HERO
   ========================================================================== */
.hero{position:relative !important;color:var(--white) !important;background:linear-gradient(160deg,var(--navy) 0%,var(--blue) 60%,var(--blue-light) 100%) !important;overflow:hidden !important;}
.hero::before{content:'' !important;position:absolute !important;inset:0 !important;background-image:url('https://kyokushinbangalore.com/wp-content/uploads/2020/04/DSC01476-1024x768.jpg') !important;background-size:cover !important;background-position:center 25% !important;opacity:.22 !important;mix-blend-mode:luminosity !important;}
.hero::after{content:'' !important;position:absolute !important;right:-10% !important;top:-20% !important;width:60% !important;height:140% !important;background:conic-gradient(from 210deg,var(--red) 0deg 8deg,transparent 8deg 360deg) !important;opacity:.5 !important;pointer-events:none !important;}
.hero-inner{position:relative !important;z-index:2 !important;padding:96px 0 84px !important;}
.hero-belt{display:flex !important;gap:6px !important;margin-bottom:26px !important;}
.hero-belt span,
.hero-belt .kx-span{width:34px !important;height:6px !important;border-radius:1px !important;}
.hero-kicker{font-family:var(--font-jp) !important;color:var(--gold-light) !important;letter-spacing:.16em !important;text-transform:uppercase !important;font-size:14px !important;margin-bottom:18px !important;display:block !important;font-weight:700 !important;}
.hero h1{color:var(--white) !important;max-width:820px !important;}
.hero h1 em{font-style:normal !important;color:var(--gold-light) !important;}
.hero-lede{font-size:18px !important;color:#dbe7f7 !important;max-width:620px !important;margin:22px 0 34px !important;}
.hero-cta{display:flex !important;gap:16px !important;flex-wrap:wrap !important;}
.hero-stats{display:flex !important;gap:44px !important;margin-top:56px !important;flex-wrap:wrap !important;}
.hero-stats div{border-left:2px solid var(--gold) !important;padding-left:14px !important;}
.hero-stats b{display:block !important;font-family:var(--font-display) !important;font-size:34px !important;color:var(--white) !important;}
.hero-stats span,
.hero-stats .kx-span{font-size:13px !important;color:#b9cde8 !important;letter-spacing:.04em !important;}

/* page (inner) hero — smaller */
.page-hero{position:relative !important;color:var(--white) !important;padding:64px 0 46px !important;background:linear-gradient(150deg,var(--navy),var(--blue)) !important;overflow:hidden !important;}
.page-hero::after{content:'' !important;position:absolute !important;left:-6% !important;bottom:-70% !important;width:340px !important;height:340px !important;border-radius:50% !important;border:60px solid rgba(227,169,52,.10) !important;}
.page-hero .container{position:relative !important;z-index:2 !important;}
.breadcrumb{font-size:13px !important;color:#b9cde8 !important;letter-spacing:.04em !important;margin-bottom:16px !important;}
.breadcrumb a:hover{color:var(--gold-light) !important;}
.page-hero h1{color:var(--white) !important;font-size:clamp(34px,5vw,58px) !important;}

/* ==========================================================================
   SECTIONS / LAYOUT UTILITIES
   ========================================================================== */
.section{padding:88px 0 !important;}
.section-tight{padding:56px 0 !important;}
.section-mist{background:var(--mist) !important;}
.section-navy{background:var(--navy) !important;color:#dbe7f7 !important;}
.section-navy h2{color:var(--white) !important;}
.grid-2{display:grid !important;grid-template-columns:1fr 1fr !important;gap:56px !important;align-items:center !important;}
.grid-3{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:30px !important;}
.grid-4{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:26px !important;}
@media (max-width:900px){.grid-2{grid-template-columns:1fr !important;gap:36px !important;}.grid-3{grid-template-columns:1fr 1fr !important;}.grid-4{grid-template-columns:1fr 1fr !important;}}
@media (max-width:560px){.grid-3{grid-template-columns:1fr !important;}.grid-4{grid-template-columns:1fr !important;}}

.prose p{color:var(--ink-soft) !important;font-size:16.5px !important;}
.prose h3{margin:34px 0 12px !important;color:var(--navy) !important;}
.prose strong{color:var(--navy) !important;}
.prose ul{margin:0 0 20px !important;}
.prose li{color:var(--ink-soft) !important;padding-left:22px !important;position:relative !important;margin-bottom:8px !important;}
.prose li::before{content:'' !important;position:absolute !important;left:0 !important;top:9px !important;width:8px !important;height:8px !important;background:var(--gold) !important;}
.prose blockquote{font-family:var(--font-jp) !important;font-size:19px !important;color:var(--navy) !important;border-left:4px solid var(--red) !important;padding:6px 0 6px 24px !important;margin:26px 0 !important;font-weight:500 !important;}

.divider-mon{display:flex !important;align-items:center !important;gap:14px !important;margin:8px 0 40px !important;}
.divider-mon .dot{width:10px !important;height:10px !important;border-radius:50% !important;background:var(--red) !important;}
.divider-mon .line{height:1px !important;background:var(--line) !important;flex:1 !important;}

/* ---------- cards ---------- */
.card{background:var(--white) !important;border:1px solid var(--line) !important;border-radius:var(--radius) !important;overflow:hidden !important;transition:transform .22s ease,box-shadow .22s ease !important;}
.card:hover{transform:translateY(-6px) !important;box-shadow:var(--shadow-md) !important;}
.card img{aspect-ratio:4/3 !important;object-fit:cover !important;width:100% !important;}
.card-body{padding:22px !important;}
.card-body h3{margin-bottom:8px !important;}
.card-body p{color:var(--ink-soft) !important;font-size:14.5px !important;margin-bottom:0 !important;}
.card-tag{display:inline-block !important;font-size:11px !important;letter-spacing:.08em !important;text-transform:uppercase !important;font-weight:800 !important;color:var(--red) !important;margin-bottom:10px !important;}

/* ---------- program cards ---------- */
.prog-card{background:var(--white) !important;border:1px solid var(--line) !important;padding:32px 26px !important;position:relative !important;overflow:hidden !important;transition:.22s ease !important;}
.prog-card::before{content:'' !important;position:absolute !important;left:0 !important;top:0 !important;bottom:0 !important;width:5px !important;background:var(--gold) !important;}
.prog-card:hover{box-shadow:var(--shadow-md) !important;transform:translateY(-4px) !important;border-color:transparent !important;}
.prog-card h3{margin-bottom:10px !important;}
.prog-card p{color:var(--ink-soft) !important;font-size:14.5px !important;}
.prog-card a{color:var(--red) !important;font-weight:700 !important;font-size:14px !important;display:inline-flex !important;gap:6px !important;margin-top:10px !important;}

/* ---------- founders / people ---------- */
.person{display:flex !important;gap:26px !important;align-items:flex-start !important;}
.person img{width:150px !important;height:150px !important;object-fit:cover !important;border-radius:50% !important;border:5px solid var(--mist) !important;box-shadow:0 0 0 3px var(--gold) !important;flex-shrink:0 !important;}
@media (max-width:600px){.person{flex-direction:column !important;align-items:center !important;text-align:center !important;}}

/* ---------- belt strip (signature element: real belt-rank sequence) ---------- */
.belt-strip{display:flex !important;flex-wrap:wrap !important;border:1px solid var(--line) !important;}
.belt-strip .belt{flex:1 1 110px !important;padding:18px 14px !important;text-align:center !important;color:var(--white) !important;font-family:var(--font-display) !important;font-size:14px !important;letter-spacing:.04em !important;position:relative !important;}
.belt-strip .belt small{display:block !important;font-family:var(--font-body) !important;font-size:11px !important;font-weight:600 !important;opacity:.85 !important;letter-spacing:.03em !important;margin-top:2px !important;}
.belt-white{background:#c9ced6 !important;color:var(--navy) !important;}
.belt-orange{background:#e8792f !important;}
.belt-blue{background:#1465c2 !important;}
.belt-yellow{background:#e3b514 !important;color:var(--navy) !important;}
.belt-green{background:#238a4e !important;}
.belt-brown{background:#7a4a24 !important;}
.belt-black{background:#16202b !important;}

/* ---------- timing table ---------- */
.table-wrap{overflow-x:auto !important;border:1px solid var(--line) !important;}
table{width:100% !important;border-collapse:collapse !important;min-width:520px !important;}
th,
td{padding:13px 16px !important;text-align:left !important;font-size:14.5px !important;border-bottom:1px solid var(--line) !important;}
thead th{background:var(--navy) !important;color:var(--white) !important;font-family:var(--font-display) !important;letter-spacing:.04em !important;font-weight:400 !important;font-size:15px !important;}
tbody tr:nth-child(even){background:var(--mist) !important;}
tbody tr:hover{background:var(--mist-2) !important;}

/* ---------- schedule blocks ---------- */
.schedule-card{background:var(--white) !important;border:1px solid var(--line) !important;}
.schedule-head{background:var(--navy) !important;color:var(--white) !important;padding:16px 24px !important;font-family:var(--font-display) !important;font-size:20px !important;letter-spacing:.04em !important;display:flex !important;align-items:center !important;justify-content:space-between !important;}
.schedule-head span,
.schedule-head .kx-span{font-family:var(--font-body) !important;font-size:12px !important;background:var(--gold) !important;color:var(--navy) !important;padding:4px 10px !important;border-radius:20px !important;font-weight:800 !important;letter-spacing:.03em !important;}
.schedule-row{display:flex !important;justify-content:space-between !important;padding:16px 24px !important;border-bottom:1px solid var(--line) !important;font-size:14.5px !important;}
.schedule-row:last-child{border-bottom:none !important;}
.schedule-row b{font-family:var(--font-display) !important;color:var(--navy) !important;letter-spacing:.03em !important;font-size:15px !important;font-weight:400 !important;}
.schedule-row span,
.schedule-row .kx-span{color:var(--red) !important;font-weight:700 !important;}

/* ---------- gallery ---------- */
.gallery{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:14px !important;}
.gallery figure,
.gallery .kx-figure{margin:0 !important;position:relative !important;overflow:hidden !important;border-radius:var(--radius) !important;}
.gallery img{aspect-ratio:1/1 !important;object-fit:cover !important;width:100% !important;transition:transform .4s ease !important;}
.gallery a:hover img{transform:scale(1.08) !important;}
.gallery .kx-figcaption{position:absolute !important;inset:auto 0 0 0 !important;padding:10px 12px 8px !important;background:linear-gradient(0deg,rgba(7,35,70,.86),transparent) !important;color:var(--white) !important;font-size:11.5px !important;font-weight:600 !important;letter-spacing:.02em !important;opacity:0 !important;transition:opacity .25s ease !important;}
.gallery a:hover .kx-figcaption{opacity:1 !important;}
@media (max-width:900px){.gallery{grid-template-columns:repeat(3,1fr) !important;}}
@media (max-width:560px){.gallery{grid-template-columns:repeat(2,1fr) !important;}}

/* ---------- video ---------- */
.video-frame{position:relative !important;padding-top:56.25% !important;background:var(--navy) !important;overflow:hidden !important;border:1px solid var(--line) !important;}
.video-frame iframe{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;border:0 !important;}

/* ---------- FAQ ---------- */
.faq-item{border-bottom:1px solid var(--line) !important;}
.faq-q{width:100% !important;text-align:left !important;background:none !important;border:0 !important;padding:20px 4px !important;cursor:pointer !important;display:flex !important;justify-content:space-between !important;align-items:center !important;gap:16px !important;font-family:var(--font-display) !important;font-size:18px !important;letter-spacing:.02em !important;color:var(--navy) !important;}
.faq-q::after{content:'+' !important;font-size:24px !important;color:var(--red) !important;flex-shrink:0 !important;transition:transform .2s ease !important;}
.faq-item.open .faq-q::after{transform:rotate(45deg) !important;}
.faq-a{max-height:0 !important;overflow:hidden !important;transition:max-height .4s ease !important;}
.faq-item.open .faq-a{max-height:2000px !important;}
.faq-a p{padding:0 4px 14px !important;color:var(--ink-soft) !important;font-size:15px !important;margin:0 !important;}
.faq-a p b{color:var(--navy) !important;}
.faq-a ul{padding:0 4px 20px 22px !important;margin:0 !important;}
.faq-a li{color:var(--ink-soft) !important;font-size:15px !important;margin-bottom:8px !important;padding-left:4px !important;}

/* ---------- notice / event card ---------- */
.notice{background:var(--white) !important;border:1px solid var(--line) !important;border-top:4px solid var(--red) !important;padding:34px !important;box-shadow:var(--shadow-sm) !important;}
.notice-date{display:inline-flex !important;align-items:center !important;gap:8px !important;font-weight:800 !important;color:var(--red) !important;font-size:13px !important;letter-spacing:.06em !important;text-transform:uppercase !important;margin-bottom:12px !important;}
.notice h3{margin-bottom:14px !important;}
.notice p{color:var(--ink-soft) !important;font-size:15px !important;}

/* ---------- stat strip ---------- */
.stat-strip{display:flex !important;justify-content:space-around !important;flex-wrap:wrap !important;gap:30px !important;text-align:center !important;padding:50px 0 !important;}
.stat-strip div b{display:block !important;font-family:var(--font-display) !important;font-size:44px !important;color:var(--gold-light) !important;}
.stat-strip div span,
.stat-strip div .kx-span{font-size:13px !important;letter-spacing:.05em !important;color:#b9cde8 !important;text-transform:uppercase !important;}

/* ---------- CTA band ---------- */
.cta-band{background:linear-gradient(120deg,var(--red),var(--red-dark)) !important;color:var(--white) !important;padding:60px 0 !important;text-align:center !important;position:relative !important;overflow:hidden !important;}
.cta-band::before{content:'' !important;position:absolute !important;left:-8% !important;top:-60% !important;width:260px !important;height:260px !important;border-radius:50% !important;border:44px solid rgba(255,255,255,.08) !important;}
.cta-band h2{color:var(--white) !important;margin-bottom:14px !important;}
.cta-band p{color:#ffe1e1 !important;max-width:520px !important;margin:0 auto 28px !important;}

/* ==========================================================================
   FOOTER
   ========================================================================== */
.site-footer{background:var(--navy) !important;color:#b9cde8 !important;padding-top:70px !important;}
.footer-grid{display:grid !important;grid-template-columns:1.4fr 1fr 1fr 1.2fr !important;gap:44px !important;padding-bottom:50px !important;border-bottom:1px solid rgba(255,255,255,.1) !important;}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr !important;}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr !important;}}
.footer-brand{display:flex !important;align-items:center !important;gap:12px !important;margin-bottom:16px !important;}
.footer-brand img{height:50px !important;width:50px !important;border-radius:50% !important;box-shadow:0 0 0 3px var(--gold) !important;}
.footer-brand b{font-family:var(--font-display) !important;font-size:20px !important;color:var(--white) !important;letter-spacing:.02em !important;}
.site-footer h4{color:var(--white) !important;font-family:var(--font-display) !important;font-size:17px !important;letter-spacing:.05em !important;margin-bottom:18px !important;}
.site-footer p{font-size:14px !important;line-height:1.7 !important;}
.footer-links li{margin-bottom:10px !important;}
.footer-links a{font-size:14px !important;color:#b9cde8 !important;}
.footer-links a:hover{color:var(--gold-light) !important;}
.footer-contact li{font-size:14px !important;margin-bottom:12px !important;display:flex !important;gap:10px !important;}
.footer-contact b{color:var(--white) !important;display:block !important;font-weight:700 !important;}
.footer-bottom{display:flex !important;justify-content:space-between !important;padding:24px 0 !important;font-size:12.5px !important;flex-wrap:wrap !important;gap:10px !important;}
.footer-bottom a{color:#b9cde8 !important;}
.footer-bottom a:hover{color:var(--gold-light) !important;}
.social-row{display:flex !important;gap:10px !important;margin-top:16px !important;}
.social-row a{width:36px !important;height:36px !important;border:1px solid rgba(255,255,255,.25) !important;border-radius:50% !important;display:flex !important;align-items:center !important;justify-content:center !important;font-size:14px !important;color:#b9cde8 !important;transition:.2s !important;}
.social-row a:hover{background:var(--gold) !important;color:var(--navy) !important;border-color:var(--gold) !important;}

/* back to top */
.to-top{position:fixed !important;right:22px !important;bottom:22px !important;width:46px !important;height:46px !important;border-radius:50% !important;background:var(--red) !important;color:var(--white) !important;display:flex !important;align-items:center !important;justify-content:center !important;box-shadow:var(--shadow-md) !important;opacity:0 !important;visibility:hidden !important;transform:translateY(10px) !important;transition:.25s !important;z-index:150 !important;cursor:pointer !important;border:0 !important;}
.to-top.show{opacity:1 !important;visibility:visible !important;transform:translateY(0) !important;}

/* ---------- lightbox ---------- */
#lightbox{position:fixed !important;inset:0 !important;background:rgba(7,35,70,.92) !important;z-index:400 !important;display:flex !important;align-items:center !important;justify-content:center !important;flex-direction:column !important;opacity:0 !important;visibility:hidden !important;transition:.25s !important;padding:40px !important;}
#lightbox.open{opacity:1 !important;visibility:visible !important;}
#lightbox img{max-width:90vw !important;max-height:80vh !important;object-fit:contain !important;box-shadow:0 20px 60px rgba(0,0,0,.5) !important;}
#lightbox figcaption,
#lightbox .kx-figcaption{color:#fff !important;margin-top:16px !important;font-size:14px !important;letter-spacing:.03em !important;}
#lightbox .lb-close{position:absolute !important;top:24px !important;right:32px !important;color:#fff !important;font-size:34px !important;line-height:1 !important;cursor:pointer !important;font-family:var(--font-display) !important;}

/* ---------- reveal on scroll ---------- */
.reveal{opacity:0 !important;transform:translateY(24px) !important;transition:opacity .6s ease,transform .6s ease !important;}
.reveal.in{opacity:1 !important;transform:translateY(0) !important;}

/* ==========================================================================
   HERO SLIDER (multi-slide banner, replaces static hero on Home)
   ========================================================================== */
.hero-slider{position:relative !important;color:var(--white) !important;overflow:hidden !important;min-height:640px !important;background:var(--navy) !important;}
.slide{position:absolute !important;inset:0 !important;opacity:0 !important;visibility:hidden !important;transition:opacity 1s ease !important;background-size:cover !important;background-position:center !important;display:flex !important;align-items:center !important;}
.slide.active{opacity:1 !important;visibility:visible !important;position:relative !important;}
.slide::before{content:'' !important;position:absolute !important;inset:0 !important;background:linear-gradient(100deg,rgba(7,35,70,.92) 0%,rgba(11,76,145,.78) 45%,rgba(11,76,145,.35) 100%) !important;}
.slide > .container{width:100% !important;}
.slide-content{position:relative !important;z-index:2 !important;padding:110px 0 96px !important;max-width:680px !important;margin:0 !important;}
.slide-num{font-family:var(--font-jp) !important;color:var(--gold-light) !important;letter-spacing:.16em !important;text-transform:uppercase !important;font-size:13px !important;margin-bottom:16px !important;display:flex !important;align-items:center !important;gap:10px !important;font-weight:700 !important;}
.slide-num::before{content:'' !important;width:26px !important;height:2px !important;background:var(--gold) !important;display:inline-block !important;}
.slide h1{color:var(--white) !important;font-size:clamp(38px,5.6vw,68px) !important;line-height:1.0 !important;margin-bottom:20px !important;}
.slide h1 em{font-style:normal !important;color:var(--gold-light) !important;}
.slide p{font-size:17.5px !important;color:#dbe7f7 !important;max-width:560px !important;margin-bottom:30px !important;}
.slide .hero-cta{display:flex !important;gap:16px !important;flex-wrap:wrap !important;}

.hero-belt-row{display:flex !important;gap:6px !important;margin-bottom:22px !important;}
.hero-belt-row span,
.hero-belt-row .kx-span{width:32px !important;height:6px !important;border-radius:1px !important;display:inline-block !important;}

.hero-stats-strip{position:relative !important;z-index:3 !important;background:rgba(7,35,70,.94) !important;border-top:1px solid rgba(227,169,52,.35) !important;}
.hero-stats-strip .container{display:flex !important;justify-content:center !important;align-items:center !important;gap:0 !important;flex-wrap:wrap !important;padding:30px 24px !important;}
.hero-stats-strip .kx-stat{padding:0 40px !important;text-align:center !important;border-left:1px solid rgba(255,255,255,.14) !important;}
.hero-stats-strip .kx-stat:first-child{border-left:none !important;}
.hero-stats-strip b{display:block !important;font-family:var(--font-display) !important;font-size:36px !important;letter-spacing:.02em !important;color:var(--gold-light) !important;line-height:1 !important;}
.hero-stats-strip span,
.hero-stats-strip .kx-span{display:block !important;margin-top:6px !important;font-size:11.5px !important;color:#b9cde8 !important;letter-spacing:.08em !important;text-transform:uppercase !important;font-weight:600 !important;}

.slider-dots{position:absolute !important;z-index:4 !important;left:0 !important;right:0 !important;bottom:22px !important;display:flex !important;justify-content:center !important;gap:10px !important;}
.slider-dots .kx-dot{width:34px !important;height:4px !important;border:0 !important;background:rgba(255,255,255,.35) !important;cursor:pointer !important;padding:0 !important;border-radius:2px !important;transition:.2s !important;}
.slider-dots .kx-dot.active{background:var(--gold) !important;width:46px !important;}

.slider-arrow{position:absolute !important;top:50% !important;transform:translateY(-50%) !important;z-index:4 !important;width:46px !important;height:46px !important;border-radius:50% !important;border:1px solid rgba(255,255,255,.4) !important;background:rgba(7,35,70,.4) !important;color:var(--white) !important;font-size:18px !important;cursor:pointer !important;display:flex !important;align-items:center !important;justify-content:center !important;transition:.2s !important;}
.slider-arrow:hover{background:var(--gold) !important;color:var(--navy) !important;border-color:var(--gold) !important;}
.slider-arrow.prev{left:22px !important;}
.slider-arrow.next{right:22px !important;}
@media (max-width:700px){
  .hero-slider{min-height:560px !important;}
  .slide-content{padding:90px 0 100px !important;}
  .slider-arrow{width:38px !important;height:38px !important;font-size:15px !important;}
  .hero-stats-strip .container{gap:0 !important;padding:20px 24px !important;}
  .hero-stats-strip .kx-stat{padding:10px 22px !important;}
  .hero-stats-strip b{font-size:26px !important;}
}

/* ---------- article feature image + floated inline figure ---------- */
.article-feature{margin:0 !important;}
.article-feature img{width:100% !important;max-height:460px !important;object-fit:cover !important;border-radius:2px !important;}
.article-feature figcaption,
.article-feature .kx-figcaption{font-size:13px !important;color:var(--ink-soft) !important;margin-top:10px !important;text-align:center !important;font-style:italic !important;}
.article-col{max-width:760px !important;margin:0 auto !important;}
.figure-float{float:right !important;width:320px !important;margin:6px 0 24px 36px !important;}
.figure-float img{width:100% !important;border-radius:2px !important;box-shadow:var(--shadow-md) !important;}
.figure-float figcaption,
.figure-float .kx-figcaption{font-size:12.5px !important;color:var(--ink-soft) !important;margin-top:8px !important;text-align:center !important;font-style:italic !important;}
@media (max-width:760px){
  .figure-float{float:none !important;width:100% !important;margin:0 0 24px !important;}
}
.article-col::after{content:'' !important;display:table !important;clear:both !important;}

/* ---------- equal side-by-side image pair (below article text) ---------- */
.image-pair{display:grid !important;grid-template-columns:1fr 1fr !important;gap:24px !important;margin-top:10px !important;}
.image-pair figure,
.image-pair .kx-figure{margin:0 !important;}
.image-pair img{width:100% !important;height:360px !important;object-fit:cover !important;border-radius:2px !important;box-shadow:var(--shadow-md) !important;display:block !important;}
.image-pair figcaption,
.image-pair .kx-figcaption{font-size:13px !important;color:var(--ink-soft) !important;margin-top:10px !important;text-align:center !important;font-style:italic !important;}
@media (max-width:700px){
  .image-pair{grid-template-columns:1fr !important;}
  .image-pair img{height:280px !important;}
}

/* ---------- aligned label/value detail rows (dojo contact cards) ---------- */
.detail-list{margin:0 !important;}
.detail-list .row{display:flex !important;gap:10px !important;padding:7px 0 !important;border-bottom:1px dashed var(--line) !important;font-size:13.5px !important;}
.detail-list .row:last-child{border-bottom:none !important;}
.detail-list .label{flex:0 0 108px !important;font-weight:800 !important;color:var(--navy) !important;letter-spacing:.02em !important;}
.detail-list .value{flex:1 !important;color:var(--ink-soft) !important;}

/* ---------- full-width process rows (numbered Why/Who/Where/How layout) ---------- */
.process-row{display:grid !important;grid-template-columns:180px 1fr !important;gap:40px !important;padding:44px 0 !important;border-bottom:1px solid var(--line) !important;align-items:start !important;}
.process-row:last-child{border-bottom:none !important;}
.process-num{font-family:var(--font-display) !important;font-size:64px !important;line-height:.8 !important;color:var(--gold) !important;letter-spacing:.02em !important;}
.process-num small{display:block !important;font-family:var(--font-body) !important;font-size:13px !important;font-weight:800 !important;letter-spacing:.08em !important;text-transform:uppercase !important;color:var(--navy) !important;margin-top:10px !important;}
.process-row h3{font-size:26px !important;margin-bottom:12px !important;}
.process-row p{color:var(--ink-soft) !important;font-size:16px !important;max-width:820px !important;}
@media (max-width:700px){
  .process-row{grid-template-columns:1fr !important;gap:10px !important;padding:30px 0 !important;}
  .process-num{font-size:44px !important;}
}

/* ---------- full-bleed banner with overlay caption ---------- */
.full-banner{position:relative !important;overflow:hidden !important;}
.full-banner img{width:100% !important;height:440px !important;object-fit:cover !important;display:block !important;}
.full-banner .overlay{position:absolute !important;inset:0 !important;background:linear-gradient(0deg,rgba(7,35,70,.85),rgba(7,35,70,.05) 60%) !important;display:flex !important;align-items:flex-end !important;padding:40px !important;}
.full-banner .overlay span,
.full-banner .overlay .kx-span{color:var(--white) !important;font-family:var(--font-display) !important;font-size:26px !important;letter-spacing:.03em !important;max-width:600px !important;}

/* ---------- contact CTA row (icon-style) ---------- */
.contact-cta-row{display:flex !important;gap:26px !important;flex-wrap:wrap !important;justify-content:center !important;margin-top:10px !important;}
.contact-cta-row a{display:flex !important;align-items:center !important;gap:12px !important;background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.25) !important;padding:16px 26px !important;color:var(--white) !important;font-size:15px !important;border-radius:2px !important;transition:.2s !important;}
.contact-cta-row a:hover{background:var(--gold) !important;color:var(--navy) !important;border-color:var(--gold) !important;}
.contact-cta-row b{font-family:var(--font-display) !important;letter-spacing:.03em !important;font-size:16px !important;}

/* ---------- MAAH alt layout: sticky sidebar + article flow ---------- */
.maah-layout{display:grid !important;grid-template-columns:340px 1fr !important;gap:60px !important;align-items:start !important;}
.maah-side{position:sticky !important;top:112px !important;}
.maah-side img{width:100% !important;border-radius:2px !important;box-shadow:var(--shadow-lg) !important;margin-bottom:22px !important;}
.maah-card{background:var(--navy) !important;color:#dbe7f7 !important;padding:26px !important;border-radius:2px !important;}
.maah-card h4{color:var(--white) !important;font-family:var(--font-display) !important;font-size:19px !important;letter-spacing:.03em !important;margin-bottom:14px !important;}
.maah-card a{display:flex !important;gap:10px !important;color:#dbe7f7 !important;font-size:14px !important;padding:8px 0 !important;border-bottom:1px solid rgba(255,255,255,.12) !important;}
.maah-card .elementor-widget:last-child a{border-bottom:none !important;}
.maah-card a:hover{color:var(--gold-light) !important;}
.maah-lede{font-size:20px !important;line-height:1.5 !important;color:var(--navy) !important;font-weight:500 !important;margin-bottom:36px !important;}
.maah-lede::first-letter{font-family:var(--font-display) !important;font-size:64px !important;color:var(--red) !important;float:left !important;line-height:.8 !important;padding-right:10px !important;margin-top:4px !important;}
.qa-block{padding:26px 0 !important;border-top:2px solid var(--navy) !important;}
.qa-block h3{font-family:var(--font-jp) !important;font-size:22px !important;color:var(--red) !important;margin-bottom:12px !important;font-weight:700 !important;}
.qa-block p{color:var(--ink-soft) !important;font-size:16px !important;}
@media (max-width:900px){
  .maah-layout{grid-template-columns:1fr !important;}
  .maah-side{position:static !important;}
}

/* ---------- visitor counter (footer widget) ---------- */
.visitor-counter{border-top:1px solid rgba(255,255,255,.1) !important;border-bottom:1px solid rgba(255,255,255,.1) !important;padding:26px 0 !important;text-align:center !important;}
.vc-label{display:block !important;font-family:var(--font-display) !important;font-size:15px !important;letter-spacing:.08em !important;color:var(--gold-light) !important;text-transform:uppercase !important;margin-bottom:14px !important;}
.vc-digits{display:inline-flex !important;gap:3px !important;margin-bottom:18px !important;}
.vc-digits span,
.vc-digits .kx-span{display:inline-block !important;width:24px !important;height:34px !important;line-height:34px !important;background:#0a0a0a !important;color:#3fe04a !important;font-family:'Courier New',monospace !important;font-weight:700 !important;font-size:19px !important;border-radius:2px !important;border:1px solid rgba(255,255,255,.15) !important;box-shadow:inset 0 2px 4px rgba(0,0,0,.6) !important;}
.vc-stats{display:flex !important;justify-content:center !important;gap:30px !important;flex-wrap:wrap !important;font-size:12.5px !important;color:#b9cde8 !important;letter-spacing:.03em !important;}
.vc-stats b{color:var(--white) !important;font-family:var(--font-display) !important;font-weight:400 !important;letter-spacing:.02em !important;}
@media (max-width:560px){
  .vc-digits span,
.vc-digits .kx-span{width:20px !important;height:28px !important;line-height:28px !important;font-size:15px !important;}
  .vc-stats{gap:16px !important;}
}


/* ---------- mobile header + topbar polish ---------- */
@media (max-width:1080px){
  .header-row{height:76px !important;}
  .brand img{height:52px !important;width:52px !important;}
  .brand-text .top{font-size:24px !important;}
  .brand-text .bottom{font-size:9px !important;letter-spacing:.12em !important;}
}
@media (max-width:760px){
  .topbar .container{height:auto !important;padding-top:8px !important;padding-bottom:8px !important;justify-content:center !important;text-align:center !important;}
  .topbar-left{justify-content:center !important;gap:4px 16px !important;font-size:12px !important;}
  .topbar-left span:nth-child(2),
.topbar-left .kx-span:nth-child(2),
.topbar-left span:nth-child(3),
.topbar-left .kx-span:nth-child(3){display:none !important;}
  .topbar-right{display:none !important;}
}
@media (max-width:420px){
  .brand-text .top{font-size:20px !important;}
  .brand-text .bottom{display:none !important;}
  .brand{gap:10px !important;}
}

@media (max-width:1080px){
  .main-nav .kx-nav-list > li.active > a{color:var(--gold-light) !important;}
}

/* ==========================================================================
   ELEMENTOR FREE ADAPTATION LAYER  (added for the WordPress conversion)
   --------------------------------------------------------------------------
   Everything ABOVE this block is the original stylesheet (assets/css/original/style.css),
   with two mechanical changes only:
     1. every declaration carries !important so Elementor's own container/widget defaults
        (padding, gap, typography, colours) cannot override the original design;
     2. a few selectors were re-pointed at Elementor's wrapper markup, e.g.
        ".main-nav > ul" -> ".main-nav .kx-nav-list", "figure" also matches ".kx-figure".
   Everything BELOW this line is new and only neutralises Elementor defaults.
   ========================================================================== */

/* -- 1. Elementor containers behave like the original plain <div>/<section> boxes --------- */
body.kx-site .e-con{
  --gap:0px; --row-gap:0px; --column-gap:0px;
  --padding-top:0px; --padding-right:0px; --padding-bottom:0px; --padding-left:0px;
  --padding-block-start:0px; --padding-block-end:0px; --padding-inline-start:0px; --padding-inline-end:0px;
  --margin-top:0px; --margin-bottom:0px; --margin-left:0px; --margin-right:0px;
  --min-height:0px; --width:auto;
  display:block; padding:0; margin:0; min-height:0; width:auto; max-width:none;
}
body.kx-site .elementor-widget:not(:last-child){margin-block-end:0; margin-bottom:0;}
body.kx-site .e-con > .elementor-widget{
  width:auto; max-width:100%;
  --container-widget-width:auto; --container-widget-flex-grow:0;
}

/* -- 2. Widgets inherit the original typography instead of Elementor's kit defaults ------- */
body.kx-site .elementor-widget-text-editor,
body.kx-site .elementor-widget-heading,
body.kx-site .elementor-widget-image,
body.kx-site .elementor-widget-video,
body.kx-site .elementor-widget-google_maps,
body.kx-site .elementor-widget-html{
  font-family:inherit; font-size:inherit; font-weight:inherit; font-style:inherit;
  line-height:inherit; letter-spacing:inherit; color:inherit; text-align:inherit; text-transform:inherit;
}
body.kx-site .elementor-widget-heading .elementor-heading-title{line-height:inherit;}

/* -- 3. Header / footer templates: keep the sticky header sticky ---------------------------- */
.kx-tpl, .kx-tpl > .elementor{display:contents;}
.kx-overlays{height:0; min-height:0; overflow:visible;}
.kx-navtoggle-wrap{display:none;}
@media (max-width:1080px){ .kx-navtoggle-wrap{display:block;} }
@media (min-width:1081px){
  body.kx-site .main-nav .elementor-widget,
  body.kx-site .main-nav .elementor-widget-container{height:100%;}
}

/* -- 4. Video widget replaces the raw <iframe>: Elementor supplies the 16:9 box ------------ */
body.kx-site .video-frame{padding-top:0 !important;}

/* -- 5. Elementor editor preview: show everything that JS normally hides/animates --------- */
body.elementor-editor-active .reveal{opacity:1 !important; transform:none !important;}
body.elementor-editor-active .slide{position:relative !important; opacity:1 !important; visibility:visible !important;}
body.elementor-editor-active .slider-arrow,
body.elementor-editor-active .slider-dots{display:none !important;}
body.elementor-editor-active .faq-a{max-height:none !important;}

/* -- 6. Elements that were real <button>/<iframe>/<img> in the original keep their native metrics -- */
body.kx-site .faq-q, body.kx-site .faq-q .elementor-widget-container{line-height:normal !important;}   /* <button> uses line-height:normal */
body.kx-site .brand > .elementor-widget-image, body.kx-site .footer-brand > .elementor-widget-image{flex:none !important;}
body.kx-site .elementor-widget-google_maps iframe, body.kx-site .elementor-widget-google_maps .elementor-custom-embed{display:block; line-height:0;}
body.kx-site .elementor-widget-image img{display:block;}
body.kx-site .elementor-widget-image{line-height:0;}
body.kx-site .person > .elementor-widget-image{flex:none !important;}   /* original: .person img{flex-shrink:0} */

/* -- 7. Contact form feedback message (added by the contact-form handler; hidden until a message is shown) ---- */
.kx-form-msg{margin-top:16px;padding:12px 16px;font-size:14px;line-height:1.5;border-left:4px solid var(--navy);background:var(--mist);color:var(--navy);}
.kx-form-msg[hidden]{display:none !important;}
.kx-form-msg.kx-err{border-left-color:var(--red);color:var(--red-dark);}
.kx-busy{opacity:.7;cursor:wait !important;}


/* ---------------------------------------------------------------- C. FORMER INLINE STYLES
   Each style="..." attribute of the original HTML became one of these classes
   (tripled selector = the specificity an inline style had). */
.kx-s1.kx-s1.kx-s1{background:#c9ced6 !important;}
.kx-s2.kx-s2.kx-s2{background:#e8792f !important;}
.kx-s3.kx-s3.kx-s3{background:#1465c2 !important;}
.kx-s4.kx-s4.kx-s4{background:#e3b514 !important;}
.kx-s5.kx-s5.kx-s5{background:#238a4e !important;}
.kx-s6.kx-s6.kx-s6{background:#7a4a24 !important;}
.kx-s7.kx-s7.kx-s7{background:#16202b !important;}
.kx-i8.kx-i8.kx-i8 img{border-radius:2px !important; box-shadow:var(--shadow-lg) !important;}
.kx-s9.kx-s9.kx-s9{color:var(--gold-light) !important;}
.kx-s10.kx-s10.kx-s10{margin-top:30px !important;}
.kx-s11.kx-s11.kx-s11{text-align:center !important; margin-top:38px !important;}
.kx-s12.kx-s12.kx-s12{margin-top:14px !important;}
.kx-i13.kx-i13.kx-i13 img{border-radius:2px !important; box-shadow:var(--shadow-lg) !important; width:100% !important; height:480px !important; object-fit:cover !important;}
.kx-s14.kx-s14.kx-s14{margin-top:10px !important;}
.kx-s15.kx-s15.kx-s15{font-size:13px !important; color:var(--ink-soft) !important; font-style:italic !important;}
.kx-h16.kx-h16.kx-h16 .elementor-heading-title{margin-top:0 !important;}
.kx-s17.kx-s17.kx-s17{align-items:start !important;}
.kx-s18.kx-s18.kx-s18{color:var(--red) !important; font-weight:700 !important; margin-top:14px !important;}
.kx-s19.kx-s19.kx-s19{row-gap:30px !important;}
.kx-s20.kx-s20.kx-s20{margin-top:50px !important;}
.kx-i21.kx-i21.kx-i21 img{border-radius:2px !important; box-shadow:var(--shadow-lg) !important; width:100% !important; max-width:640px !important; margin:10px 0 28px !important;}
.kx-s22.kx-s22.kx-s22{margin:0 !important; max-width:640px !important;}
.kx-i23.kx-i23.kx-i23 img{border-radius:2px !important; box-shadow:var(--shadow-lg) !important; width:100% !important; border:1px solid var(--line) !important;}
.kx-s24.kx-s24.kx-s24{border-bottom:2px solid var(--navy) !important;}
.kx-s25.kx-s25.kx-s25{color:var(--red) !important; font-weight:700 !important;}
.kx-s26.kx-s26.kx-s26{margin:0 !important;}
.kx-i27.kx-i27.kx-i27 img{border-radius:2px !important; box-shadow:var(--shadow-lg) !important; border:1px solid var(--line) !important;}
.kx-s28.kx-s28.kx-s28{margin-top:26px !important; color:var(--ink-soft) !important; font-size:14px !important;}
.kx-s29.kx-s29.kx-s29{color:var(--navy) !important;}
.kx-s30.kx-s30.kx-s30{margin-top:20px !important;}
.kx-s31.kx-s31.kx-s31{aspect-ratio:16/9 !important; padding-top:0 !important; height:200px !important;}
.kx-s32.kx-s32.kx-s32{text-align:center !important; margin-top:40px !important;}
.kx-s33.kx-s33.kx-s33{align-items:start !important; grid-template-columns:1.3fr 1fr !important;}
.kx-h34.kx-h34.kx-h34 .elementor-heading-title{margin-top:10px !important;}
.kx-s35.kx-s35.kx-s35{position:sticky !important; top:112px !important; display:flex !important; flex-direction:column !important; gap:20px !important;}
.kx-i36.kx-i36.kx-i36 img{width:100% !important; border-radius:2px !important; box-shadow:var(--shadow-lg) !important;}
.kx-s37.kx-s37.kx-s37{margin-top:60px !important;}
.kx-s38.kx-s38.kx-s38{display:block !important;}
.kx-s39.kx-s39.kx-s39{color:var(--ink-soft) !important;}
.kx-s40.kx-s40.kx-s40{margin-top:30px !important; max-width:420px !important;}
.kx-s41.kx-s41.kx-s41{background:var(--white) !important; border:1px solid var(--line) !important; padding:32px !important; box-shadow:var(--shadow-sm) !important;}
.kx-s42.kx-s42.kx-s42{margin-bottom:20px !important;}
.kx-s43.kx-s43.kx-s43{display:grid !important; gap:16px !important;}
.kx-s44.kx-s44.kx-s44{padding:13px 14px !important; border:1px solid var(--line) !important; font-family:inherit !important; font-size:14.5px !important;}
.kx-s45.kx-s45.kx-s45{padding:13px 14px !important; border:1px solid var(--line) !important; font-family:inherit !important; font-size:14.5px !important; resize:vertical !important;}
.kx-s46.kx-s46.kx-s46{justify-self:start !important;}
.kx-s47.kx-s47.kx-s47{padding:20px 24px !important; color:var(--ink-soft) !important; font-size:14.5px !important;}
.kx-s48.kx-s48.kx-s48{margin:0 0 14px !important;}
.kx-s49.kx-s49.kx-s49{color:var(--ink-soft) !important; font-weight:400 !important; font-size:13px !important;}
.kx-s50.kx-s50.kx-s50{margin-top:34px !important;}
.kx-s51.kx-s51.kx-s51{border:1px solid var(--line) !important; overflow:hidden !important;}
