/* SchoolOnline Marketing UI Fix */
:root{
  --m-navy:#061f2c;
  --m-navy2:#0a3344;
  --m-teal:#078078;
  --m-mint:#91eee7;
  --m-soft:#eaf3f3;
  --m-ink:#102d39;
}

/* =========================
   HEADER / TASKBAR
   ========================= */

.header,
.site-header{
  isolation:isolate;
}

.header .nav-wrap,
.site-header .nav{
  position:relative;
  z-index:20;
}

.header .nav-wrap>*:not(.main-nav),
.site-header .nav>*:not(.nav-links){
  flex-shrink:0;
}

.main-nav,
.nav-links{
  min-width:0;
}

.main-nav a,
.nav-links a,
.phone,
.header-phone,
.global-login-link,
.header-login,
.menu-toggle,
.menu-btn,
.marketing-search-submit{
  position:relative;
  z-index:3;
  pointer-events:auto;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
}

/* לא לתת ל-CSS כללי להפוך כפתורי ניווט לריבועים לבנים */
.main-nav a,
.nav-links a{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.main-nav a:hover,
.main-nav a:focus-visible,
.nav-links a:hover,
.nav-links a:focus-visible,
.nav-links a[aria-current="page"]{
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
}

.main-nav a svg,
.nav-links a svg,
.phone svg,
.header-phone svg,
.menu-toggle span{
  pointer-events:none;
}

.phone,
.header-phone{
  background:transparent!important;
  box-shadow:none!important;
}

.menu-toggle,
.menu-btn{
  background:rgba(255,255,255,.035)!important;
  box-shadow:none!important;
}

.menu-toggle:hover,
.menu-btn:hover,
.menu-toggle:focus-visible,
.menu-btn:focus-visible{
  background:rgba(255,255,255,.10)!important;
  border-color:rgba(145,238,231,.55)!important;
}

.global-login-link,
.header-login{
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
  line-height:1!important;
}

/* =========================
   SEARCH
   ========================= */

.marketing-search-wrap{
  z-index:150!important;
}

.marketing-search-form{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.20)!important;
  box-shadow:none!important;
}

.marketing-search-form:hover{
  background:rgba(255,255,255,.09)!important;
  border-color:rgba(255,255,255,.30)!important;
}

.marketing-search-form:focus-within{
  background:#eef6f6!important;
  border-color:var(--m-mint)!important;
  box-shadow:0 12px 32px rgba(0,0,0,.16)!important;
}

.marketing-search-form input{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.marketing-search-submit{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:999px!important;
}

.marketing-search-submit:hover{
  background:rgba(145,238,231,.12)!important;
  color:var(--m-mint)!important;
  transform:none!important;
}

.marketing-search-results{
  z-index:300!important;
  background:#f3f8f8!important;
  border-color:#cfe0e2!important;
}

.marketing-search-item{
  background:transparent!important;
}

.marketing-search-item:hover,
.marketing-search-item:focus-visible{
  background:#dfeeed!important;
}

/* desktop */
@media(min-width:1121px){
  .header .nav-wrap,
  .site-header .nav{
    gap:12px!important;
  }

  .main-nav,
  .nav-links{
    gap:2px!important;
  }

  .main-nav a,
  .nav-links a{
    padding-inline:8px!important;
  }

  .marketing-search-wrap.desktop-search{
    width:190px!important;
    min-width:165px!important;
    flex:0 1 190px!important;
  }
}

/* laptop */
@media(min-width:1121px) and (max-width:1320px){
  .marketing-search-wrap.desktop-search{
    width:165px!important;
    min-width:145px!important;
    flex-basis:165px!important;
  }

  .phone span{
    display:none!important;
  }

  .phone{
    width:44px!important;
    height:44px!important;
    padding:0!important;
    justify-content:center!important;
  }

  .header-phone{
    width:44px!important;
    height:44px!important;
    padding:0!important;
    font-size:0!important;
    display:grid!important;
    place-items:center!important;
  }

  .header-phone:before{
    content:"☎";
    font-size:1.05rem;
  }
}

/* mobile */
@media(max-width:1120px){
  .main-nav,
  .nav-links{
    z-index:250!important;
    overflow:visible!important;
  }

  .marketing-search-mobile{
    width:100%!important;
    padding:4px 0 9px!important;
  }

  .marketing-search-mobile .marketing-search-form{
    width:100%!important;
    background:rgba(255,255,255,.07)!important;
  }

  .marketing-search-mobile .marketing-search-results{
    background:#f3f8f8!important;
  }

  .main-nav a,
  .nav-links a{
    width:100%!important;
    min-height:46px!important;
  }
}

/* =========================
   MARKETING AI
   שונה לחלוטין מהבוט בתוך המערכת
   ========================= */

.marketing-ai-fab{
  position:fixed!important;
  z-index:138!important;
  left:92px!important;
  bottom:22px!important;

  width:58px!important;
  height:58px!important;

  padding:0!important;
  gap:0!important;

  display:flex!important;
  align-items:center!important;
  justify-content:center!important;

  border:1px solid rgba(255,255,255,.25)!important;
  border-radius:50%!important;

  background:
    linear-gradient(145deg,#0b8178 0%,#075f69 52%,#0a3344 100%)!important;

  color:#fff!important;
  font:inherit!important;
  font-weight:800!important;
  cursor:pointer!important;
  transition:.2s!important;

  box-shadow:
    0 16px 38px rgba(6,31,44,.30),
    inset 0 1px 0 rgba(255,255,255,.18)!important;
}

.marketing-ai-fab:before{
  content:"";
  position:absolute;
  inset:-5px;

  border:1px solid rgba(145,238,231,.32);
  border-radius:50%;
}

.marketing-ai-fab:hover{
  transform:translateY(-3px) scale(1.035)!important;

  background:
    linear-gradient(145deg,#10958a,#08717b 55%,#0a3344)!important;
}

.marketing-ai-fab-icon{
  font-size:1.45rem!important;
  color:#d9fffb!important;
  line-height:1!important;

  text-shadow:
    0 0 18px rgba(145,238,231,.55);
}

.marketing-ai-fab-label{
  display:none!important;
}

/* panel */

.marketing-ai-panel{
  padding:0!important;
  margin:0!important;
  min-height:0!important;
  box-sizing:border-box!important;
  position:fixed!important;
  z-index:160!important;
  left:22px!important;
  bottom:var(--assistant-bottom,96px)!important;

  width:min(390px,calc(100% - 44px))!important;
  height:auto!important;
  max-height:min(540px,calc(100dvh - var(--assistant-bottom,96px) - 16px))!important;
  display:none!important;

  background:
    linear-gradient(180deg,#eaf4f4 0%,#dfecee 100%)!important;

  border:1px solid #bcd4d7!important;
  border-radius:26px!important;

  box-shadow:
    0 30px 90px rgba(6,31,44,.32)!important;

  color:var(--m-ink)!important;
  grid-template-rows:auto minmax(0,1fr) auto auto!important;
  overflow:hidden!important;
}
.marketing-ai-panel.open{display:grid!important}

/* אין יותר חלקים לבנים שנדרסים */

.marketing-ai-head{
  padding:17px 18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;

  background:
    linear-gradient(
      135deg,
      #082a38 0%,
      #0a4754 50%,
      #0a766f 100%
    )!important;
}

.marketing-ai-head strong{
  color:#fff!important;
  display:block!important;
  font-size:1rem!important;
}

.marketing-ai-head small{
  display:block!important;
  color:#c7e1e1!important;
  font-size:.78rem!important;
  margin-top:2px!important;
}

.marketing-ai-close{
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.06)!important;
  border-color:rgba(255,255,255,.20)!important;
  color:#fff!important;
  font-size:1.4rem!important;
  cursor:pointer!important;
  box-shadow:none!important;
}

.marketing-ai-close:hover{
  background:rgba(255,255,255,.13)!important;
  transform:none!important;
}

.marketing-ai-body{
  background:
    linear-gradient(180deg,#edf6f5,#e5eff0)!important;

  padding:16px!important;
  min-height:0!important;
  overflow:auto!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
}

.marketing-ai-msg{max-width:88%;padding:10px 12px;border-radius:15px;line-height:1.55;font-size:.9rem;white-space:pre-wrap;overflow-wrap:anywhere}

.marketing-ai-msg.bot{
  align-self:flex-start!important;
  background:#d7e9e7!important;
  border:1px solid #bdd6d4!important;
  color:#173941!important;
  box-shadow:none!important;
}

.marketing-ai-msg.user{
  align-self:flex-end!important;
  background:
    linear-gradient(135deg,#087e76,#08646c)!important;

  border:0!important;
  color:#fff!important;
}

.marketing-ai-msg.error{
  align-self:flex-start!important;
  background:#f4e5df!important;
  border-color:#e6c5ba!important;
  color:#7d3329!important;
}

.marketing-ai-chips{display:flex!important;gap:6px!important;flex-wrap:wrap!important}

.marketing-ai-chips button{
  background:#d8ebe9!important;
  border:1px solid #bad6d3!important;
  color:#0a625e!important;
  box-shadow:none!important;
  border-radius:999px!important;
  padding:7px 10px!important;
  font:inherit!important;
  font-size:.78rem!important;
  cursor:pointer!important;
}

.marketing-ai-chips button:hover{
  background:#c7e1de!important;
  border-color:#8fc6c1!important;
  transform:none!important;
}

.marketing-ai-form{
  display:flex!important;
  gap:8px!important;
  padding:11px!important;
  background:#d7e6e8!important;
  border-top:1px solid #bfd3d6!important;
}

.marketing-ai-form input{
  min-width:0!important;
  flex:1!important;
  background:#edf5f5!important;
  border:1px solid #b8ced1!important;
  color:#173941!important;
  box-shadow:none!important;
  border-radius:12px!important;
  padding:10px 11px!important;
  font:inherit!important;
}

.marketing-ai-form input:focus{
  outline:2px solid rgba(7,128,120,.26)!important;
  border-color:#078078!important;
}

.marketing-ai-form button{
  background:
    linear-gradient(135deg,#078078,#075e67)!important;

  border:0!important;
  color:#fff!important;
  box-shadow:none!important;
  border-radius:12px!important;
  padding:0 14px!important;
  font:inherit!important;
  font-weight:800!important;
  cursor:pointer!important;
}

.marketing-ai-form button:hover{
  background:
    linear-gradient(135deg,#086e68,#064e59)!important;

  transform:none!important;
}

.marketing-ai-note{
  padding:8px 13px!important;
  background:#d7e6e8!important;
  color:#587078!important;
  border-top:1px solid #bfd3d6!important;
  font-size:.72rem!important;
}

/* =========================
   GENERAL BUTTON BEHAVIOUR
   ========================= */

a.primary-action,
a.secondary-action,
button.primary-action,
button.secondary-action,
.submit-action{
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}

a.primary-action:active,
a.secondary-action:active,
button.primary-action:active,
button.secondary-action:active,
.submit-action:active{
  transform:translateY(0) scale(.985)!important;
}

button:disabled,
[aria-disabled="true"]{
  cursor:not-allowed!important;
  opacity:.58!important;
}

@media(max-width:600px){
  .marketing-ai-fab{
    left:80px!important;
    bottom:16px!important;
    width:54px!important;
    height:54px!important;
  }

  .marketing-ai-panel{
    left:12px!important;
    --assistant-bottom:82px;
    width:calc(100% - 24px)!important;
    border-radius:22px!important;
  }
}

/* Fit the complete desktop navigation without splitting Hebrew words. */
@media(min-width:1121px){
 .header .nav-wrap,.site-header .nav{gap:14px;width:min(1320px,calc(100% - 40px))}
 .header .logo,.site-header .brand{width:220px}
 .main-nav a,.nav-links a{white-space:nowrap;padding-inline:8px}
 .main-nav a svg,.nav-links a svg{flex-shrink:0}
 .header .marketing-search-wrap,.site-header .marketing-search-wrap{flex:1 1 150px!important;min-width:130px;max-width:190px}
}
/* The mobile primary-action rule must not expand the header login to a full row. */
@media(max-width:760px){
 .header .nav-wrap,.site-header .nav{gap:8px}
 .header .logo,.site-header .brand{width:min(170px,calc(100vw - 190px))}
 .header .global-login-link{width:44px!important;min-width:44px;padding:0!important;font-size:0!important;flex:0 0 44px}
 .header .global-login-link::before{content:'↪';font-size:22px}
 .header .phone,.site-header .header-phone{width:44px;height:44px;padding:0;justify-content:center}
 .header .menu-toggle,.site-header .menu-btn{width:44px;height:44px;flex:0 0 44px}
}
/* Shared success state for the homepage and dedicated contact form. */
.lead-success{grid-column:1/-1}
.lead-success h2{color:#102d39!important;font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.2}
.lead-success .eyebrow{color:#077770}
.lead-success p{color:#405962;line-height:1.8}
.contact form.submitted{display:block}
.contact .lead-success{padding:26px 12px;text-align:center}

body.cookie-open .marketing-ai-fab{bottom:150px!important}body.cookie-open .marketing-ai-panel{--assistant-bottom:218px}@media(max-width:820px){body.cookie-open .marketing-ai-fab{bottom:238px!important}body.cookie-open .marketing-ai-panel{--assistant-bottom:306px}}

/* SchoolOnline mobile login icon */
@media(max-width:760px){
  .header-login:before{
    content:""!important;
    width:20px!important;
    height:20px!important;
    display:block!important;
    background:currentColor!important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M10 17l5-5-5-5M15 12H3M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4'/%3E%3C/svg%3E") center/contain no-repeat!important;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M10 17l5-5-5-5M15 12H3M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4'/%3E%3C/svg%3E") center/contain no-repeat!important;
  }
}

/* SchoolOnline mobile login icon */
@media (max-width:760px){
  .header-login:before{
    content:""!important;
    width:20px!important;
    height:20px!important;
    display:block!important;
    background:currentColor!important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M10 17l5-5-5-5M15 12H3M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4'/%3E%3C/svg%3E") center/contain no-repeat!important;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round' d='M10 17l5-5-5-5M15 12H3M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4'/%3E%3C/svg%3E") center/contain no-repeat!important;
  }
}
