/* Landing finishing pass — ARIS type, readable contrast, compact capability cards and resident UI. */
.kicker::before { display:none !important; content:none !important; }
.kicker { gap:0 !important; letter-spacing:0 !important; }
.hero .wrap { min-height:clamp(420px,59svh,620px); display:flex !important; flex-direction:column; align-items:flex-start; justify-content:center; }
.hero { padding-block:clamp(130px,13vw,192px) clamp(75px,10vw,145px); }
.hero .lead { color:#233640 !important; text-shadow:none; }
.hero .kicker,.portal .kicker,.early-connect .kicker,.inline-lead-section .kicker,.faq .kicker,.contact .kicker { color:#a83e12 !important; }
.hero-mark { display:none !important; }
.hero .hero-actions,.hero .hero-lead-inline { display:none !important; }
.early-connect { background:#eff3f0; color:#162732; border-block:1px solid #dce5e0; padding:clamp(45px,6vw,84px) 0; }
.early-connect-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); align-items:center; gap:clamp(28px,5vw,86px); }
.early-connect-copy h2 { font-size:clamp(31px,3.4vw,45px); line-height:1.2; max-width:16ch; margin:12px 0; color:#162732; }
.early-connect-copy > p { color:#3e525d; font-size:17px; max-width:34ch; line-height:1.65; }
.early-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.early-actions .btn-ghost { background:#fff; color:#20333e; border:1px solid #9fb4a9; }
.early-actions .btn-ghost:hover { background:#e0eae4; color:#152732; }
.early-lead-form .lead-form { margin:0; padding:24px; background:#fff; border:1px solid #d9e3dd; border-radius:17px; box-shadow:0 14px 43px rgba(20,46,37,.07); color:#162732; }
.early-lead-form .lead-heading { color:#162732; }
.early-lead-form .lead-form label.field { color:#2f454e; }
.early-lead-form .lead-form input { color:#172b34; background:#fff; border-color:#acbbb5; }
.early-lead-form .lead-form .notice { color:#465b63; }
.early-lead-form .lead-form .status { color:#a52020; }
.early-lead-form .lead-result { background:white; color:#19303a; }
.portal,.portal.flip { color:#182b35 !important; }
.portal h2,.faq h2,.contact h2 { color:#152936 !important; }
.portal .lead,.faq .lead,.contact .lead,.inline-lead-section .lead { color:#41555e !important; }
.portal .wrap > .rv > .lead { max-width:40ch; }
.portal .feature-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:26px; }
.feature-card { min-width:0; border:1px solid #d7e0dc; background:#fff; border-radius:14px; padding:14px 12px 16px; min-height:137px; box-shadow:0 5px 17px rgba(14,39,31,.035); color:#1c313b; }
.portal.flip .feature-card { background:#fff; }
.feature-card-symbol { display:block; width:max-content; min-width:27px; line-height:1; padding-bottom:11px; font-size:11px; font-weight:800; letter-spacing:.07em; color:#a3441d; font-variant-numeric:tabular-nums; }
.feature-card h3 { font-size:clamp(14px,1.35vw,17px); line-height:1.4; color:#172b35 !important; margin:0 0 8px; font-weight:750; letter-spacing:-.015em; }
.feature-card p { color:#4a5e68 !important; font-size:12.5px; line-height:1.55; margin:0; }
.portal .feature-grid .feature-card:hover { border-color:#b2c3bb; box-shadow:0 10px 24px rgba(14,39,31,.08); }
.strip .name { color:#1a323f !important; }
.strip .what { color:#43565f !important; }
.nav .nav-links a,.nav .nav-links a:visited { color:#28414d !important; }
.nav .nav-links a:hover { color:#142c37 !important; }
.faq a,.faq details p,.faq details summary { color:#243b48; }
.contact-card,.contact-card p,.contact-card dd,.contact-card dt { color:#2d4650 !important; }
.contact-card dt { color:#465c66 !important; }
.contact-card .phone,.contact-card dd a { color:#152e3c !important; }
.contact .lead-form label.field { color:#2b424e !important; }
.contact .lead-form input { color:#142b36 !important; border-color:#a7bbb0 !important; }
.contact .lead-form .notice { color:#475a63 !important; }
.contact .lead-form .status { color:#a52020 !important; }
.event-reopen { font-weight:700; }
.event-launch { display:inline-flex; align-items:center; gap:7px; margin-top:20px; padding:8px 13px; border-radius:999px; border:1px solid #cbd8d1; background:rgba(255,255,255,.87); color:#2b454e; font:650 13px var(--font); cursor:pointer; }
.event-launch[hidden] { display:none!important; }
.event-launch:hover { background:#fff; }
#residents .resident-product-stage { min-width:0; position:relative; min-height:615px; background:#f0f3f5; border-radius:23px; isolation:isolate; display:flex; justify-content:center; align-items:center; overflow:hidden; }
#residents .resident-backdrop { position:absolute; inset:0; background:linear-gradient(140deg,#e9efee,#e0e9f0 55%,#f5e8dc); z-index:-1; }
#residents .scene-orb { position:absolute; border-radius:50%; opacity:.55; filter:blur(1px); }
#residents .scene-orb.one { width:320px; height:320px; background:#bcd4d0; left:-120px; top:-110px; }
#residents .scene-orb.two { width:230px; height:230px; background:#f3d5ba; right:-85px; bottom:-80px; }
#residents .resident-phone { position:relative; width:min(302px,72%); aspect-ratio:302/555; border:8px solid #172532; border-radius:43px; background:#172532; box-shadow:0 25px 55px rgba(18,40,45,.27); color:#1a1a2e; z-index:2; direction:rtl; overflow:hidden; transform:translate3d(var(--phone-shift,0px),0,0) rotate(-3deg); will-change:transform; }
#residents .resident-device-top { position:absolute; top:0; left:0; right:0; height:23px; z-index:4; display:flex; justify-content:center; align-items:flex-start; }
#residents .resident-device-top > span { width:36%; height:18px; border-radius:0 0 13px 13px; background:#172532; }
#residents .resident-device-bottom { position:absolute; z-index:5; bottom:4px; left:33%; width:34%; height:4px; border-radius:9px; background:#8a929b; }
#residents .resident-screen { height:100%; background:#f5f5f7; border-radius:35px; overflow:hidden; padding-top:25px; font-family:'Noto Sans Hebrew',sans-serif; display:flex; flex-direction:column; }
#residents .resident-app-top { display:flex; align-items:center; justify-content:space-between; padding:12px 16px; background:white; border-bottom:1px solid #e5e5ea; font-size:21px; font-weight:850; letter-spacing:-.04em; }
#residents .resident-app-brand { color:#1a1a2e; }
#residents .resident-app-brand > span { font-size:10px; font-weight:500; color:#737887; display:block; letter-spacing:0; margin-top:-4px; }
#residents .resident-app-bell { color:#ea580c; font-size:31px; line-height:1; }
#residents .resident-apartment { display:flex; justify-content:space-between; align-items:center; padding:14px; font-size:13px; gap:5px; color:#1a1a2e; }
#residents .resident-apartment span { font-size:10px; color:#626779; }
#residents .resident-app-tabs { display:flex; gap:7px; padding:8px 12px 14px; }
#residents .resident-app-tabs span { display:grid; place-items:center; flex:1; min-height:36px; border-radius:999px; font-size:10px; white-space:nowrap; color:#1a1a2e; background:#fff; border:1px solid #e5e5ea; font-weight:650; }
#residents .resident-app-tabs .active { background:#1a1a2e; color:#fff; border-color:#1a1a2e; }
#residents .resident-request { display:flex; align-items:flex-start; gap:9px; margin:0 12px 7px; background:#fff; border:1px solid #e5e5ea; border-radius:13px; padding:10px 8px; min-height:72px; }
#residents .resident-avatar { width:30px; height:30px; border-radius:50%; background:#fff0e8; color:#a44114; font-weight:700; font-size:12px; display:grid; place-items:center; flex:none; }
#residents .resident-avatar.second { background:#e5edf8; color:#355e8b; }
#residents .resident-avatar.third { background:#d9f0e2; color:#2e7660; }
#residents .resident-request > div { flex:1; min-width:0; display:flex; flex-direction:column; gap:3px; }
#residents .resident-request strong { font-size:11px; font-weight:750; }
#residents .resident-request small { font-size:9px; color:#4f5467; line-height:1.4; }
#residents .resident-request i { font-size:9px; color:#a34519; font-style:normal; }
#residents .resident-request time { font-size:8px; color:#8a8a9a; white-space:nowrap; }
#residents .resident-bottom-nav { margin-top:auto; display:flex; justify-content:space-around; align-items:center; min-height:49px; background:#fff; border-top:1px solid #e5e5ea; font-size:9px; color:#77778a; }
#residents .resident-bottom-nav .active { color:#1a1a2e; font-weight:800; }
#residents .resident-floating-card { position:absolute; z-index:3; background:white; border:1px solid #d7e2dd; color:#1b3240; border-radius:13px; padding:12px 14px; display:flex; flex-direction:column; gap:4px; box-shadow:0 9px 28px rgba(21,45,52,.09); white-space:nowrap; }
#residents .resident-floating-card b { font-size:13px; }
#residents .resident-floating-card span { color:#4d656b; font-size:12px; }
#residents .resident-floating-card.card-a { left:clamp(6px,3vw,45px); top:19%; transform:rotate(-4deg); }
#residents .resident-floating-card.card-b { right:clamp(6px,3vw,42px); bottom:21%; transform:rotate(3deg); }
#residents .resident-disclaimer { position:absolute; bottom:16px; width:100%; text-align:center; color:#47606b; font-size:11px; }
@media(max-width:1024px) {
 .early-connect-grid { grid-template-columns:1fr; gap:26px; }
 .early-connect-copy h2 { max-width:none; }
 .portal .feature-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:720px) {
 .hero { padding-block:130px 85px; min-height:calc(86svh - 50px); }
 .hero .wrap { min-height:52svh; }
 .early-connect { padding:44px 0; }
 .early-actions { gap:8px; margin-top:20px; }
 .early-actions .btn { font-size:14px; padding:12px 14px; }
 .early-lead-form .lead-form { padding:18px; }
 .portal .feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
 .feature-card { min-height:117px; padding:12px 10px; }
 .feature-card h3 { font-size:14px; }
 .feature-card p { font-size:12px; }
 .feature-card:last-child:nth-child(odd) { grid-column:1 / -1; min-height:auto; }
 #residents .resident-product-stage { min-height:560px; }
 #residents .resident-phone { width:min(285px,77%); }
 #residents .resident-floating-card { padding:9px 10px; }
 #residents .resident-floating-card b { font-size:11px; }
 #residents .resident-floating-card span { font-size:10px; }
 #residents .resident-floating-card.card-a { top:15%; left:5px; }
 #residents .resident-floating-card.card-b { right:5px; bottom:20%; }
}
@media(prefers-reduced-motion:reduce) {
 #residents .resident-phone { transform:rotate(-3deg)!important; will-change:auto; }
}
html[data-a11y-motion] #residents .resident-phone { transform:rotate(-3deg)!important; will-change:auto; }
html[data-a11y-contrast] .early-connect,html[data-a11y-contrast] .feature-card,html[data-a11y-contrast] #residents .resident-product-stage { background:#fff!important;color:#000!important;border-color:#000!important; }
html[data-a11y-contrast] .feature-card p,html[data-a11y-contrast] .feature-card h3 { color:#000!important; }


/* 2026 congress/landing pass: contrast, mobile rhythm, brand and focused calls to action. */
.nav .nav-brand-logo { width:94px; height:58px; max-width:none; object-fit:contain; display:block; }
.nav .wrap { gap:12px; }
.hero-tint { background:linear-gradient(to left,rgba(247,248,245,.94) 0%,rgba(247,248,245,.91) 32%,rgba(247,248,245,.66) 58%,rgba(247,248,245,.08) 100%)!important; }
@media(max-width:1024px) {
 .hero-tint { background:linear-gradient(to top,rgba(247,248,245,.94),rgba(247,248,245,.82) 48%,rgba(247,248,245,.53) 100%)!important; }
}
@media(max-width:720px) {
 .nav .nav-brand-logo { width:88px; height:56px; }
 .hero-tint { background:linear-gradient(to top,rgba(247,248,245,.91),rgba(247,248,245,.78) 48%,rgba(247,248,245,.50) 100%)!important; }
}
/* The top lead capture is now a single destination CTA, not a duplicate form. */
.early-connect-grid { display:block; }
.early-connect-copy { max-width:680px; margin-inline:auto; text-align:center; }
.early-connect-copy h2,.early-connect-copy > p { max-width:none; }
.early-actions { justify-content:center; }
/* Four capabilities always form a balanced 2x2 grid. */
.portal .feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.feature-card { min-height:130px; }
/* Captions must remain legible on bright skies and facade photos alike. */
.portal .visual .caption { right:14px; left:14px; bottom:14px; border-radius:11px; background:rgba(15,29,37,.87); padding:13px 16px; box-shadow:0 4px 18px rgba(0,0,0,.16); }
.portal .visual .caption b { color:#fff!important; text-shadow:0 1px 2px rgba(0,0,0,.3); font-size:clamp(16px,1.8vw,21px); line-height:1.45; }
.portal .visual::after { background:linear-gradient(to top,rgba(15,29,37,.28),transparent 52%); }
/* Real text input contrast across the middle and bottom forms. */
.lead-form .field-title { display:inline-flex; align-items:baseline; gap:4px; white-space:nowrap; }
.lead-form label.field { display:flex; flex-direction:column; align-items:stretch; gap:8px; color:#253e48!important; }
.lead-form label.field input { background:#fff!important; color:#172e3b!important; border:1.5px solid #98aea3!important; opacity:1!important; -webkit-text-fill-color:#172e3b!important; }
.lead-form label.field input:focus { outline:2px solid rgba(34,80,65,.32); outline-offset:1px; border-color:#466f60!important; }
.lead-form .notice { color:#405662!important; }
.lead-form .actions .btn { min-height:48px; }
/* Product phone: only genuine app icons and uploaded ARIS wordmark. */
#residents .resident-app-brand { display:flex; align-items:center; min-height:28px; }
#residents .resident-app-brand img { width:66px; height:40px; object-fit:contain; }
#residents .resident-app-bell { display:flex; align-items:center; justify-content:center; width:26px; }
#residents .resident-avatar svg { display:block; width:17px; height:17px; }
/* Why ARIS: credible, quiet, card-led content rather than another competing CTA. */
.aris-values { padding:clamp(68px,8vw,115px) 0; background:#f5f6f2; color:#19303a; border-block:1px solid #dce5e0; }
.aris-values .kicker { color:#9b3b12; }
.aris-values h2 { margin:12px 0 16px; font-size:clamp(32px,4.1vw,52px); max-width:24ch; }
.aris-values .lead { color:#415862; max-width:58ch; }
.values-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-top:35px; }
.value-card { padding:clamp(19px,2.4vw,29px); background:#fff; border:1px solid #d7e0dc; border-radius:16px; box-shadow:0 8px 26px rgba(16,45,36,.035); }
.value-number { display:block; font-weight:800; font-size:13px; color:#99502b; margin-bottom:20px; font-variant-numeric:tabular-nums; }
.value-card h3 { font-size:clamp(18px,1.9vw,23px); margin-bottom:10px; color:#19303a; }
.value-card p { color:#4c626a; font-size:15px; line-height:1.7; }
.contact-brand-title { display:block; font-size:16px; font-weight:800; margin-bottom:12px; color:#1c3745; }
/* Pop-up: light, minimal close, balanced date boxes, single dismiss action. */
.event-overlay { background:rgba(10,22,30,.49); }
.event-dialog { background:#fbfcfa!important; color:#182b36!important; border:1px solid #dfe5e3!important; box-shadow:0 24px 65px rgba(10,22,30,.25)!important; padding:clamp(28px,5.5vw,42px)!important; }
.event-dialog::before { display:none!important; content:none!important; }
.event-dialog h2 { color:#192b36; font-size:clamp(26px,4.7vw,39px); line-height:1.25; margin-top:16px; }
.event-dialog .kicker { color:#a34218; padding-inline-start:48px; }
.event-dialog .event-close { width:34px; height:34px; left:16px; top:16px; border:0!important; border-radius:8px!important; background:transparent!important; color:#596c75!important; font-size:25px; line-height:1; }
.event-dialog .event-close:hover { background:rgba(29,53,64,.07)!important; color:#182b36!important; }
.event-dialog .event-close:focus-visible { outline:2px solid #829398!important; outline-offset:2px!important; }
.event-dialog .event-detail { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:21px 0 19px; gap:9px; }
.event-dialog .event-detail span,.event-dialog .event-detail span:last-child { display:flex; justify-content:center; align-items:center; min-height:52px; white-space:nowrap; padding:10px 8px; border-radius:10px; border:1px solid #d6e0db; color:#243943; background:#fff; font-size:clamp(13px,2.8vw,16px); }
.event-dialog .event-date { direction:ltr; unicode-bidi:isolate; font-variant-numeric:tabular-nums; }
.event-dialog .event-surprise { text-align:center; color:#273e49!important; font-weight:700; font-size:17px; margin-top:8px; }
.event-dialog .event-actions { display:block; margin-top:19px; }
.event-dialog .event-actions .btn { display:flex; width:100%; padding:14px 20px; }
/* Popup entrance and finite button pulse live exclusively in motion.css.
   Do not animate two transforms on the dialog at the same time. */
@media(max-width:720px) {
 .values-grid { grid-template-columns:1fr; gap:12px; margin-top:25px; }
 .value-card { padding:20px; }
 .value-number { margin-bottom:12px; }
 .feature-card { min-height:128px; }
 .portal .visual .caption { right:10px; left:10px; bottom:10px; padding:11px 13px; }
 .event-dialog { padding:26px 20px!important; }
 .event-dialog .event-close { left:10px; top:10px; }
}
@media(prefers-reduced-motion:reduce) { .event-overlay:not([hidden]) .event-dialog { animation:none!important; } }
html[data-a11y-motion] .event-overlay:not([hidden]) .event-dialog { animation:none!important; }
/* Independent, staggered fade-up for each content block and capability card.
   The parent portal copy is NOT animated as a unit, so child cards can move. */
html.cinema-ready .cinema-reveal {
  opacity: 0;
  transform: translate3d(0, 30px, 0);
  transition:
    opacity 820ms cubic-bezier(.22,.75,.22,1),
    transform 820ms cubic-bezier(.22,.75,.22,1);
}
html.cinema-ready .cinema-reveal.cinema-in {
  opacity: 1;
  transform: translate3d(0,0,0);
}
html.cinema-ready .portal .feature-card.cinema-reveal,
html.cinema-ready .value-card.cinema-reveal {
  transform: translate3d(0, 42px, 0) scale(.985);
  transition-delay: calc(var(--stagger,0) * 95ms);
  transition-duration: 820ms;
}
html.cinema-ready .portal .feature-card.cinema-reveal.cinema-in,
html.cinema-ready .value-card.cinema-reveal.cinema-in {
  transform: translate3d(0,0,0) scale(1);
}
@media (prefers-reduced-motion: reduce) {
  html.cinema-ready .cinema-reveal {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
html[data-a11y-motion].cinema-ready .cinema-reveal {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* The hero photo is intentionally photographic rather than washed out. */
.event-overlay:not([hidden]) { animation:eventBackdropIn .42s ease-out both; }
@keyframes eventBackdropIn { from { opacity:0; } to { opacity:1; } }
@media(prefers-reduced-motion:reduce) { .event-overlay:not([hidden]) { animation:none!important; } }
html[data-a11y-motion] .event-overlay:not([hidden]) { animation:none!important; }

/* Hero: restore depth to the architecture while preserving legibility. */
.hero .hero-bg {
  opacity: .88;
  filter: saturate(.84) brightness(.74) contrast(1.13);
}
.hero .hero-tint {
  background: linear-gradient(to left,
    rgba(247,248,245,.95) 0%,
    rgba(247,248,245,.89) 34%,
    rgba(247,248,245,.62) 58%,
    rgba(247,248,245,.12) 100%
  ) !important;
}
@media (max-width:1024px) {
  .hero .hero-bg { opacity:.78; }
  .hero .hero-tint {
    background:linear-gradient(to top,
      rgba(247,248,245,.96) 0%,
      rgba(247,248,245,.83) 52%,
      rgba(247,248,245,.44) 100%
    ) !important;
  }
}
@media (max-width:720px) {
  .hero .hero-bg { opacity:.83; filter:saturate(.88) brightness(.78) contrast(1.1); }
  .hero .hero-tint {
    background:linear-gradient(to top,
      rgba(247,248,245,.96) 0%,
      rgba(247,248,245,.84) 50%,
      rgba(247,248,245,.39) 100%
    ) !important;
  }
}

/* Field edges should be visible against white AND pale-green form panels. */
.inline-lead-section .lead-form {
  border:1px solid #c2d0ca;
  background:#fff !important;
  box-shadow:0 14px 42px rgba(18,44,39,.10);
}
.inline-lead-section .lead-form label.field input[type="text"],
.inline-lead-section .lead-form label.field input[type="tel"],
.inline-lead-section .lead-form label.field input[type="email"],
.contact .lead-form label.field input[type="text"],
.contact .lead-form label.field input[type="tel"],
.contact .lead-form label.field input[type="email"] {
  border:2px solid #657e86 !important;
  border-radius:12px;
  background:#fff !important;
  box-shadow:inset 0 1px 2px rgba(13,34,42,.07),0 1px 0 rgba(255,255,255,.7);
  min-height:50px;
  color:#172e3b !important;
  -webkit-text-fill-color:#172e3b !important;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.inline-lead-section .lead-form label.field input:hover,
.contact .lead-form label.field input:hover {
  border-color:#314f5d !important;
}
.inline-lead-section .lead-form label.field input:focus,
.contact .lead-form label.field input:focus {
  border-color:#1e485e !important;
  outline:2px solid rgba(30,72,94,.30);
  outline-offset:2px;
  box-shadow:0 0 0 4px rgba(30,72,94,.09);
}
.inline-lead-section .lead-form label.field input[aria-invalid="true"],
.contact .lead-form label.field input[aria-invalid="true"] {
  border-color:#b43b35 !important;
  outline-color:rgba(180,59,53,.25);
}
.inline-lead-section .lead-form .field-title,
.contact .lead-form .field-title {
  font-weight:600;
  color:#223a47;
}

/* The photograph caption is a readable, fine-bordered editorial plaque. */
.portal .visual .caption {
  right:clamp(12px,2vw,23px);
  left:clamp(12px,2vw,23px);
  bottom:clamp(12px,2vw,23px);
  padding:clamp(12px,1.7vw,18px) clamp(14px,2vw,22px);
  border:1px solid rgba(255,255,255,.68);
  border-radius:12px;
  background:rgba(14,29,38,.94);
  box-shadow:0 12px 28px rgba(5,19,26,.30), inset 0 1px rgba(255,255,255,.13);
  -webkit-backdrop-filter:blur(7px);
  backdrop-filter:blur(7px);
}
.portal .visual .caption b {
  color:#fff !important;
  font-size:clamp(16px,1.85vw,21px);
  line-height:1.43;
  text-shadow:none;
}
@media (max-width:720px) {
  .portal .visual .caption {
    right:10px;left:10px;bottom:10px;
    padding:12px 14px;
    border-radius:10px;
  }
}

/* On mobile/tablet the chrome's dynamic visual viewport should never force
   a composited photo layer to move. Keep its crop static and free the GPU
   from unnecessary will-change hints while retaining the visual design. */
@media (max-width:1024px) {
  .portal .visual img.photo,
  .portal .visual picture.photo-frame {
    transform:scale(1.08);
    will-change:auto;
  }
  .parallax-story .sticky-scene picture.scene-picture {
    transform:scale(1.08);
    will-change:auto;
  }
  #residents .resident-phone { will-change:auto; }
}

/* Single header size; provide 10px breathing room around the tall source SVG. */
.nav .wrap { height:80px; }
.nav .wrap > a[aria-label="אריס — לראש הדף"] {
  display:flex; align-items:center; justify-content:center; flex:0 0 auto;
  align-self:stretch; min-height:0; padding-block:10px;
}
.nav .nav-brand-logo { max-height:100%; }
.nav .nav-toggle {
  display:none;
  width:44px; height:44px; padding:0;
  border:0; border-radius:10px;
  color:#263d48; background:transparent;
  cursor:pointer; box-shadow:none;
  -webkit-tap-highlight-color:transparent;
  place-items:center;
}
.nav .nav-toggle svg { display:block; width:24px; height:24px; }
.nav .nav-toggle:hover { background:rgba(22,49,58,.07); }
.nav .nav-toggle:focus-visible { outline:2px solid #607781; outline-offset:2px; }
@media (max-width:1080px) {
  .nav .nav-toggle { display:grid; }
  .nav .nav-links { top:80px; }
}
@media (max-width:720px) {
  .nav .wrap { height:76px; gap:10px; }
  .nav .nav-brand-logo { width:88px; height:56px; }
  .nav .nav-links { top:76px; }
}

/* Congress modal: remove all ornamental stripes and orange focus rings.
   Explicit scoping prevents light/dark site defaults from leaking in. */
#engineers-event .event-dialog {
  background:#fbfcfa !important; color:#172e39 !important;
  border:1px solid #dce4e1 !important;
  box-shadow:0 24px 70px rgba(15,34,43,.22) !important;
  color-scheme:light;
}
#engineers-event .event-dialog::before,
#engineers-event .event-dialog::after,
#engineers-event .event-dialog .kicker::before {
  content:none !important; display:none !important;
  border:0 !important; background:none !important;
}
#engineers-event .event-dialog h2 { color:#172e39 !important; }
#engineers-event .event-dialog p { color:#3c5560 !important; }
#engineers-event .event-close,
#engineers-event .event-close:hover,
#engineers-event .event-close:active {
  width:36px; height:36px; border:0 !important;
  border-radius:8px !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#4a626d !important;
  font-size:inherit; cursor:pointer;
}
#engineers-event .event-close svg { display:block; width:21px; height:21px; }
#engineers-event .event-close:hover { background:#edf2ef !important; color:#213d4a !important; }
#engineers-event .event-close:focus-visible {
  outline:2px solid #718a92 !important;
  outline-offset:2px !important;
  box-shadow:none !important;
}
#engineers-event .event-detail span,
#engineers-event .event-detail span:last-child {
  color:#203843 !important; background:#fff !important;
  border-color:#d8e1dd !important;
}

/* Footer logo uses the supplied artwork, rendered white for the dark footer. */
footer .footer-brand-logo {
  display:block; width:108px; height:83px; object-fit:contain;
  filter:brightness(0) invert(1);
  opacity:.97;
  margin:0 0 8px;
}

/* A single contact card carries all four contact channels. */
.contact-card .contact-details {
  display:flex; flex-direction:column; gap:0;
  margin-top:15px; width:100%;
  font-size:15px;
}
.contact-card .contact-detail-row {
  display:grid;
  grid-template-columns:minmax(0,42%) minmax(0,58%);
  gap:9px;
  align-items:center;
  padding:13px 0;
  border-bottom:1px solid #e3e9e6;
  min-width:0;
}
.contact-card .contact-detail-row:last-child { border-bottom:0; }
.contact-card .contact-detail-row dt {
  display:flex; gap:9px; align-items:center;
  color:#49606a !important;
  font-size:15px; padding:0; margin:0;
  font-weight:600; white-space:nowrap;
}
.contact-card .contact-detail-row dd {
  margin:0; min-width:0; font-size:15px;
  line-height:1.6; font-weight:600;
}
.contact-card .contact-detail-row dd a {
  font:inherit; font-size:15px;
  color:#203c49 !important;
  text-decoration:underline;
  text-underline-offset:3px;
  overflow-wrap:anywhere;
  border-bottom:0 !important;
}
.contact-card .contact-detail-row dd a:hover { color:#a34218 !important; }
.contact-card .contact-icon {
  display:block; width:19px; height:19px; flex:0 0 19px;
  color:#536d77;
}
@media (max-width:720px) {
  .contact-card { padding:23px 20px; }
  .contact-card .contact-detail-row {
    grid-template-columns:minmax(0,39%) minmax(0,61%); gap:6px;
  }
}

/* Lead confirmation: the old ink-dark surface and generic success green
   combined into nearly invisible text against the light contact page.
   Use the same warm-neutral surface and dark typography everywhere. */
.lead-unit .lead-result[data-lead-success] {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
  width:100%;
  max-width:640px;
  margin-block:28px 0;
  padding:22px 25px;
  background:#ffffff !important;
  border:1px solid #cbd8d3 !important;
  border-radius:15px;
  box-shadow:0 12px 32px rgba(22,46,53,.09);
  color:#354d5a !important;
  font-family:var(--display);
  font-size:17px;
  line-height:1.6;
  text-align:start;
}
.lead-unit .lead-result[data-lead-success][hidden] { display:none!important; }
.lead-unit .lead-result[data-lead-success] strong {
  display:block;
  font-size:20px;
  font-weight:800;
  color:#17313f !important;
}
.lead-unit .lead-result[data-lead-success] span {
  display:block;
  color:#354d5a !important;
  font-size:17px;
  font-weight:500;
}
.lead-unit .lead-result[data-lead-success]:focus { outline:none; }
.lead-unit .lead-result[data-lead-success]:focus-visible {
  outline:2px solid #54717a;
  outline-offset:3px;
}
@media(max-width:720px) {
  .lead-unit .lead-result[data-lead-success] { padding:19px 20px; }
  .lead-unit .lead-result[data-lead-success] strong { font-size:19px; }
}
