.elementor-4730 .elementor-element.elementor-element-35358e2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for shortcode, class: .elementor-element-9428c6b *//* =========================================
   MORAN HOMEPAGE HEADER + VIDEO HERO
   Chiyoda-style layout (only your pages)
   ========================================= */

:root{
  --moran-blue:#1C3FAA;
  --moran-green:#00D02D;
  --moran-text:#111;
  --moran-muted:rgba(0,0,0,.65);
  --moran-line:rgba(0,0,0,.12);
  --moran-max:1400px;
}

/* RESET SAFE */
.moran-header, .moran-hero { font-family: Arial, sans-serif; }
.moran-header * , .moran-hero * { box-sizing: border-box; }

/* CONTAINER */
.moran-container{
  max-width: var(--moran-max);
  margin: 0 auto;
  padding: 0 24px;
}

/* =========================
   HEADER (Chiyoda-like)
   ========================= */
.moran-header{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,.0);
  transition: box-shadow .18s ease, background .18s ease, border-color .18s ease;
}

.moran-header.scrolled{
  background: rgba(255,255,255,.98);
  border-bottom-color: rgba(0,0,0,.08);
  box-shadow: 0 10px 30px rgba(0,0,0,.10);
}

.moran-header .moran-container{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
  padding-top: 12px;
  padding-bottom: 12px;
}

.moran-logo img{
  width: 210px;
  height: auto;
  display:block;
}

/* Desktop nav */
.moran-desktop-nav ul{
  list-style:none;
  display:flex;
  gap: 34px;
  margin: 0;
  padding: 0;
  align-items:center;
}

.moran-desktop-nav a{
  text-decoration:none;
  color: var(--moran-text);
  font-weight: 600;
  font-size: 16px;
  padding: 10px 0;
  position: relative;
}

.moran-desktop-nav a::after{
  content:"";
  position:absolute;
  left:0;
  bottom: 4px;
  height: 2px;
  width: 0;
  background: var(--moran-blue);
  transition: width .18s ease;
}

.moran-desktop-nav a:hover::after{
  width: 100%;
}

/* Right actions */
.moran-actions{
  display:flex;
  align-items:center;
  gap: 16px;
  white-space: nowrap;
}

.moran-link{
  text-decoration:none;
  color: var(--moran-text);
  font-size: 14px;
  padding: 10px 2px;
}

.moran-link:hover{ color: var(--moran-blue); }

.moran-search{
  width: 38px;
  height: 38px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.14);
  background: #fff;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition: transform .16s ease, border-color .16s ease;
}
.moran-search:hover{
  transform: translateY(-1px);
  border-color: rgba(28,63,170,.35);
}

/* Mobile toggle */
.moran-toggle{
  width: 42px;
  height: 42px;
  border: 1px solid rgba(0,0,0,.14);
  border-radius: 10px;
  background: #fff;
  cursor:pointer;
  display:none;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap: 5px;
}

.moran-toggle span{
  width: 22px;
  height: 2px;
  background: #111;
  display:block;
}

/* =========================
   SEARCH OVERLAY
   ========================= */
.moran-search-overlay{
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.55);
  display:none;
  align-items:center;
  justify-content:center;
  padding: 24px;
  z-index: 99999;
}

.moran-search-overlay.active{ display:flex; }

.moran-search-wrapper{
  width: min(720px, 92vw);
  background: #fff;
  border-radius: 16px;
  padding: 18px;
  position: relative;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
}

.moran-search-close{
  position:absolute;
  top: 12px;
  right: 12px;
  border: none;
  background: transparent;
  cursor:pointer;
}

.moran-search-form{
  display:flex;
  gap: 10px;
  align-items:center;
  padding-top: 22px;
}

.moran-search-input{
  flex:1;
  padding: 14px 14px;
  border: 1px solid rgba(0,0,0,.18);
  border-radius: 12px;
  font-size: 16px;
  outline: none;
}

.moran-search-input:focus{
  border-color: rgba(28,63,170,.45);
  box-shadow: 0 0 0 4px rgba(28,63,170,.12);
}

.moran-search-submit{
  width: 46px;
  height: 46px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.18);
  background: #fff;
  cursor:pointer;
}

/* =========================
   MOBILE MENU
   ========================= */
.moran-mobile-menu{
  position: fixed;
  top: 0;
  right: -100%;
  width: min(420px, 92vw);
  height: 100vh;
  background: #fff;
  z-index: 99998;
  transition: right .22s ease;
  box-shadow: -20px 0 60px rgba(0,0,0,.18);
  display:flex;
  flex-direction:column;
}

.moran-mobile-menu.active{ right: 0; }

.moran-mobile-header{
  padding: 16px;
  border-bottom: 1px solid rgba(0,0,0,.08);
  display:flex;
  justify-content:flex-end;
}

.moran-close{
  border: 1px solid rgba(0,0,0,.14);
  background: #fff;
  border-radius: 10px;
  width: 44px;
  height: 44px;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
}

.moran-mobile-nav{
  overflow:auto;
  padding: 10px 16px 24px;
}

.moran-mobile-nav ul{
  list-style:none;
  margin:0;
  padding:0;
}

.moran-mobile-nav a{
  display:block;
  padding: 14px 8px;
  text-decoration:none;
  color:#111;
  font-weight: 600;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

.moran-has-sub{
  position: relative;
}

.moran-sub-toggle{
  position:absolute;
  right: 6px;
  top: 10px;
  width: 44px;
  height: 44px;
  border: none;
  background: transparent;
  cursor:pointer;
}

.moran-sub-toggle::after{
  content:"▾";
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  color: rgba(0,0,0,.55);
  font-size: 16px;
}

.moran-has-sub.open > .moran-sub-toggle::after{
  content:"▴";
}

.moran-submenu{
  display:none;
  padding-left: 10px;
  margin-bottom: 10px;
}

.moran-has-sub.open > .moran-submenu{
  display:block;
}

.moran-submenu a{
  font-weight: 500;
  color: rgba(0,0,0,.78);
}

/* =========================
   HERO (Video) - Chiyoda style
   ========================= */
.moran-hero{
  position: relative;
  min-height: 92vh;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  padding-top: 84px; /* space for fixed header */
}

.moran-hero-video{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
}

.moran-hero-video iframe{
  position:absolute;
  top:50%;
  left:50%;
  transform: translate(-50%,-50%);
  width: 120vw;
  height: 120vh;
  pointer-events:none;
}

/* Left geometric panel */
.moran-hero-geo{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(120deg, rgba(28,63,170,.85) 0%, rgba(28,63,170,.55) 28%, rgba(28,63,170,0) 55%),
    linear-gradient(60deg, rgba(0,0,0,.25) 0%, rgba(0,0,0,0) 50%);
  clip-path: polygon(0 0, 42% 0, 22% 100%, 0% 100%);
  opacity: .95;
}

/* Overall overlay */
.moran-hero-overlay{
  position:absolute;
  inset:0;
  z-index:2;
  background: linear-gradient(90deg, rgba(0,0,0,.25) 0%, rgba(0,0,0,.10) 45%, rgba(0,0,0,.18) 100%);
}

/* Content */
.moran-hero-content{
  position: relative;
  z-index: 3;
  width: 100%;
}

.moran-hero-content h1{
  color:#fff;
  font-size: clamp(34px, 4vw, 62px);
  line-height: 1.05;
  letter-spacing: -0.5px;
  margin: 0 0 12px;
  font-weight: 800;
  max-width: 760px;
}

.moran-tagline{
  color: rgba(255,255,255,.92);
  font-size: 18px;
  margin: 0 0 26px;
}

.moran-hero-buttons{
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
}

.moran-btn-primary,
.moran-btn-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding: 12px 18px;
  border-radius: 12px;
  text-decoration:none;
  font-weight: 700;
  font-size: 14px;
}

.moran-btn-primary{
  background: var(--moran-green);
  color:#000;
}

.moran-btn-secondary{
  background: rgba(255,255,255,.12);
  color:#fff;
  border: 1px solid rgba(255,255,255,.22);
}

.moran-btn-secondary:hover{
  background: rgba(255,255,255,.18);
}

/* Small hero footer link like Chiyoda */
.moran-hero-footer{
  position:absolute;
  right: 18px;
  bottom: 16px;
  z-index: 4;
}

.moran-hero-footer a{
  color: rgba(255,255,255,.92);
  text-decoration:none;
  font-weight: 700;
  font-size: 12px;
}

.moran-hero-footer span{
  margin-left: 6px;
}

/* =========================
   RESPONSIVE
   ========================= */
@media (max-width: 1024px){
  .moran-desktop-nav{ display:none; }
  .moran-toggle{ display:flex; }
  .moran-hero{ padding-top: 76px; }
  .moran-hero-geo{
    clip-path: polygon(0 0, 68% 0, 35% 100%, 0% 100%);
  }
}

@media (max-width: 640px){
  .moran-logo img{ width: 180px; }
  .moran-actions{ gap: 10px; }
  .moran-link{ display:none; } /* keeps header clean like Chiyoda on mobile */
  .moran-hero-video iframe{
    width: 160vw;
    height: 120vh;
  }
}/* End custom CSS */