/* Round 17: audience proof, readable supporting copy, and a robust high-conversion final CTA */

/* Supporting copy should never read like legal fine print. */
.section-no{font-size:.82rem!important}
.voices-head p{font-size:1rem!important;line-height:1.6!important}
.testimonial figcaption{font-size:.88rem!important}
.facts span{font-size:.9rem!important}
.practical .wrap>p{font-size:1rem!important;line-height:1.65!important}

/* Hero: the current poster is the fallback and remains visible until the loop is ready. */
.hero{background:#0b1630 url('assets/hero-nili-poster.jpg') center 44%/cover no-repeat!important}
.hero-media{opacity:0;transition:opacity .22s ease}
.hero-media.is-ready{opacity:1}

/* Sticky CTA is intentionally mobile-only and visually restrained. */
.mobile-sticky-cta{display:none}

/* Audience quotes: compact, intentional and balanced. Keep four verified quotes rather than inventing filler. */
.written-reactions{padding:28px 0 24px!important}
.reactions-heading{margin-bottom:16px!important}
.reactions-heading span{font-size:.9rem!important;color:#686f7b!important}
.reaction-grid{gap:12px!important;align-items:stretch!important}
.reaction-grid .reaction{min-height:0!important;padding:20px 24px!important;justify-content:center!important;border-top:3px solid #c2a467!important}
.reaction-grid .reaction p{max-width:92%!important;margin:0!important;font-size:1.08rem!important;line-height:1.48!important}
.reaction-grid .reaction:before{top:9px!important;left:15px!important;font-size:2.8rem!important;opacity:.24!important}

/* Closing gallery: make the images read as one deliberate cinematic strip, not four floating assets. */
#contact .contact-gallery{background:#0b1630!important;position:relative!important}
#contact .contact-shot{background:#111d35!important;overflow:hidden!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)!important}
#contact .contact-shot img{display:block!important;transition:opacity .2s ease!important}

@media (min-width:851px){
  .reaction-grid{display:grid!important;grid-template-columns:1fr 1fr!important;grid-auto-rows:auto!important}
  .reaction-grid .reaction:nth-child(n){grid-column:auto!important;grid-row:auto!important;min-height:118px!important;background:#f7f4ee!important}
  .reaction-grid .reaction:nth-child(1){border-top-color:#d84447!important;background:#17233b!important;color:#fff!important}
  .reaction-grid .reaction:nth-child(1) p{font-size:1.34rem!important;line-height:1.42!important}
  .reaction-grid .reaction:nth-child(4){background:#eeeae2!important}

  /* Desktop only: restore photographic presence while keeping the four frames visually bound as one strip. */
  #contact .contact-gallery{width:100%!important;padding:34px 3vw 38px!important;gap:clamp(10px,1vw,18px)!important;border-top:1px solid rgba(255,255,255,.08)!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
  #contact .contact-shot{border:1px solid rgba(255,255,255,.11)!important;box-shadow:none!important}
  #contact .contact-shot img{width:100%!important;height:100%!important;object-fit:cover!important}

  /* Final CTA: dark cinematic closing beat, visually distinct without introducing a foreign white card. */
  #contact.contact{background:linear-gradient(180deg,#111d35 0%,#0b1630 100%)!important;color:#fff!important;overflow:hidden!important}
  #contact .contact-layout{padding:64px 0 76px!important}
  #contact .contact-copy{position:relative;max-width:930px!important;padding:48px 58px 50px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 24px 65px rgba(0,0,0,.18)!important}
  #contact .contact-copy:before{content:"";position:absolute;top:0;right:0;left:0;height:5px;background:var(--red)}
  #contact .contact-copy .section-no{color:#d3ae64!important}
  #contact .contact-copy h2{color:#fff!important;font-size:clamp(2.65rem,4.45vw,4.85rem)!important;margin-bottom:16px!important}
  #contact .contact-copy>p:not(.section-no){color:#e6e9ef!important;font-size:1.16rem!important;line-height:1.7!important;margin-bottom:28px!important}
  #contact .contact-actions .btn{min-width:238px!important;padding:17px 26px!important;font-size:1rem!important}
  #contact .contact-actions .primary{background:var(--red)!important;color:#fff!important;transform:scale(1.03);box-shadow:0 14px 32px rgba(216,68,71,.28)!important}
  #contact .contact-actions .primary:hover{transform:scale(1.03) translateY(-2px)}
  #contact .contact-actions .secondary{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.52)!important}
}

@media(max-width:850px){
  .hero{background-position:center center!important}
  .voices-head p{font-size:.98rem!important}
  .testimonial figcaption{font-size:.86rem!important;margin-top:7px!important}

  .written-reactions{padding:20px 0 22px!important}
  .reactions-heading{margin-bottom:13px!important}
  .reaction-grid{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .reaction-grid .reaction{min-height:0!important;padding:16px 18px!important;border-top:3px solid #c2a467!important;justify-content:center!important}
  .reaction-grid .reaction p{max-width:92%!important;font-size:1.02rem!important;line-height:1.46!important;margin:0!important}
  .reaction-grid .reaction-real{padding:19px 18px!important;border-top-color:#d84447!important;background:#17233b!important;color:#fff!important}
  .reaction-grid .reaction-real p{font-size:1.2rem!important;line-height:1.4!important}
  .reaction-grid .reaction:before{top:7px!important;left:11px!important}

  .facts span{font-size:.86rem!important}
  .practical .wrap>p{font-size:.96rem!important}

  .mobile-sticky-cta{
    position:fixed;z-index:30;right:10px;left:10px;bottom:calc(10px + env(safe-area-inset-bottom));
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    min-height:58px;padding:8px 8px 8px 14px;
    background:rgba(11,22,48,.96);color:#fff;border:1px solid rgba(255,255,255,.15);
    box-shadow:0 12px 30px rgba(0,0,0,.24);
    transform:translateY(calc(100% + 24px));opacity:0;pointer-events:none;
    transition:transform .22s ease,opacity .22s ease;
    backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  }
  .mobile-sticky-cta.is-visible{transform:translateY(0);opacity:1;pointer-events:auto}
  .mobile-sticky-cta span{font:700 .88rem Heebo;line-height:1.25}
  .mobile-sticky-cta a{
    flex:0 0 auto;min-height:42px;display:inline-flex;align-items:center;justify-content:center;
    padding:10px 15px;background:var(--red);color:#fff;text-decoration:none;border-radius:2px;
    font:700 .88rem Heebo;
  }
  .mobile-sticky-cta a:focus-visible{outline:3px solid #d3ae64;outline-offset:2px}

  /* Same cinematic closing language on mobile, with the successful 2x2 gallery retained. */
  #contact.contact{padding:0!important;background:linear-gradient(180deg,#111d35 0%,#0b1630 100%)!important;color:#fff!important;overflow:hidden!important}
  #contact .contact-gallery{width:100%!important;height:auto!important;aspect-ratio:1.45/1!important;display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:1fr 1fr!important;gap:3px!important;margin:0!important;padding:3px!important;background:#0b1630!important;direction:ltr!important;border-top:1px solid rgba(255,255,255,.1)!important;border-bottom:1px solid rgba(255,255,255,.1)!important}
  #contact .contact-shot{display:block!important;width:auto!important;height:auto!important;margin:0!important;position:relative!important;inset:auto!important;transform:none!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.1)!important}
  #contact .contact-shot img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;transform:none!important}
  #contact .contact-layout{width:min(100% - 32px,680px)!important;margin:0 auto!important;padding:34px 0 48px!important}
  #contact .contact-copy{position:relative!important;width:100%!important;margin:0!important;padding:30px 20px 24px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.16)!important;box-shadow:0 18px 42px rgba(0,0,0,.16)!important;text-align:center!important}
  #contact .contact-copy:before{content:"";position:absolute;top:0;right:0;left:0;height:5px;background:var(--red)}
  #contact .contact-copy .section-no{color:#d3ae64!important;font-size:.82rem!important;margin-bottom:12px!important}
  #contact .contact-copy h2{max-width:330px!important;margin:0 auto 15px!important;color:#fff!important;font-size:clamp(2.25rem,11.5vw,3.25rem)!important;line-height:1.05!important}
  #contact .contact-copy>p:not(.section-no){max-width:330px!important;margin:0 auto 22px!important;color:#e6e9ef!important;font-size:1rem!important;line-height:1.65!important}
  #contact .contact-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;margin-top:0!important}
  #contact .contact-actions .btn{width:100%!important;min-height:52px!important;padding:14px 16px!important;font-size:.98rem!important;display:flex!important;align-items:center!important;justify-content:center!important}
  #contact .contact-actions .primary{background:var(--red)!important;color:#fff!important;box-shadow:0 10px 25px rgba(216,68,71,.24)!important}
  #contact .contact-actions .secondary{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.5)!important}
}

@media(prefers-reduced-motion:reduce){
  .hero-media{display:none!important}
  .mobile-sticky-cta{transition:none}
}

/* Round 18: subject-derived encounter composition + dual-action mobile sticky CTA */
.encounter{position:relative;overflow:hidden}
.encounter-lead{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(44px,5vw,78px);align-items:center;margin-bottom:38px}
.encounter-copy-block{max-width:560px}
.encounter-copy-block h2{font-size:clamp(2.55rem,3.7vw,4rem);line-height:1.08;margin:0 0 24px;color:#152039}
.encounter-copy-block p{font-size:1.06rem;line-height:1.78;color:#454e5e;margin:0}
.encounter-visual{position:relative;margin:0;min-height:360px;overflow:hidden;background:#0b1630}
.encounter-visual:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 58%,rgba(7,12,22,.72) 100%)}
.encounter-visual:after{content:"";position:absolute;top:0;right:0;width:5px;height:100%;z-index:2;background:var(--red)}
.encounter-visual img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover;object-position:50% 48%;filter:saturate(.88) contrast(1.04)}
.encounter-visual figcaption{position:absolute;z-index:2;right:22px;bottom:18px;margin:0;color:#fff;font:700 .78rem Heebo;letter-spacing:.02em}
.encounter-points{counter-reset:encounter-beat;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:0!important;margin:0 0 22px!important;border-top:1px solid #17233b1c!important;border-bottom:1px solid #17233b1c!important}
.encounter-points article{counter-increment:encounter-beat;position:relative!important;padding:28px 26px 30px!important;border-left:1px solid #17233b18!important}
.encounter-points article:last-child{border-left:0!important}
.encounter-points article:before{content:"0" counter(encounter-beat)!important;display:block!important;position:static!important;width:auto!important;height:auto!important;background:none!important;margin-bottom:20px;color:#b47b23;font:800 .72rem Heebo;letter-spacing:.1em}
.encounter-points h3{font-size:1.18rem!important;margin-bottom:8px!important}
.encounter-points p{font-size:.9rem!important;line-height:1.58!important;color:#596171!important;max-width:300px}
.encounter-meta{display:grid!important;grid-template-columns:repeat(4,1fr)!important;margin-top:0!important;background:#0f1d38!important;border:0!important}
.encounter-meta div{position:relative;padding:20px 22px!important;border-left:1px solid rgba(255,255,255,.12)!important}
.encounter-meta div:last-child{border-left:0!important}
.encounter-meta strong{color:#fff!important;font-size:1.06rem!important}
.encounter-meta span{color:#b9c0cd!important;font-size:.8rem!important;margin-top:3px}

@media(max-width:850px){
  .encounter-lead{grid-template-columns:1fr;gap:28px;margin-bottom:30px}
  .encounter-copy-block{max-width:none}
  .encounter-copy-block h2{font-size:clamp(2rem,9.4vw,2.7rem);line-height:1.1;margin-bottom:18px}
  .encounter-copy-block p{font-size:.97rem;line-height:1.7}
  .encounter-visual{min-height:0;aspect-ratio:16/10}
  .encounter-visual img{min-height:0;height:100%;object-position:50% 48%}
  .encounter-visual figcaption{right:14px;bottom:12px;font-size:.7rem}
  .encounter-points{grid-template-columns:1fr!important;margin-bottom:16px!important;border-bottom:0!important}
  .encounter-points article,.encounter-points article:nth-child(2),.encounter-points article:nth-child(even){display:grid!important;grid-template-columns:42px 1fr!important;column-gap:12px!important;padding:18px 0 19px!important;border-left:0!important;border-bottom:1px solid #17233b18!important}
  .encounter-points article:before{grid-row:1/3;grid-column:1;margin:2px 0 0!important;font-size:.7rem}
  .encounter-points h3{grid-column:2;font-size:1.06rem!important;margin:0 0 5px!important}
  .encounter-points p{grid-column:2;font-size:.84rem!important;line-height:1.55!important;max-width:none}
  .encounter-meta{grid-template-columns:1fr 1fr!important}
  .encounter-meta div{padding:15px 14px!important;border-left:1px solid rgba(255,255,255,.1)!important;border-bottom:1px solid rgba(255,255,255,.1)!important}
  .encounter-meta div:nth-child(2n){border-left:0!important}
  .encounter-meta strong{font-size:1rem!important}
  .encounter-meta span{font-size:.75rem!important}

  .mobile-sticky-actions{display:flex;align-items:center;gap:6px}
  .mobile-sticky-cta a{padding:10px 13px!important}
  .mobile-sticky-cta .sticky-email{background:transparent!important;border:1px solid rgba(255,255,255,.45)!important;color:#fff!important;min-width:52px}
}

@media(max-width:420px){
  .mobile-sticky-cta{right:7px;left:7px;gap:8px;padding-left:9px}
  .mobile-sticky-cta span{font-size:.8rem}
  .mobile-sticky-actions{gap:5px}
  .mobile-sticky-cta a{padding:9px 10px!important;font-size:.8rem!important}
}

/* Round 19: tighten the encounter, make the closing strip chronological RTL,
   and keep the mobile CTA available through the actual decision window. */
@media(min-width:851px){
  .encounter-lead{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;
    gap:clamp(36px,4vw,60px)!important;
    margin-bottom:26px!important;
  }
  .encounter-copy-block{max-width:590px!important}
  .encounter-copy-block h2{font-size:clamp(2.65rem,3.85vw,4.15rem)!important;margin-bottom:20px!important}
  .encounter-visual{min-height:390px!important}
  .encounter-visual img{min-height:390px!important}
  .encounter-points{margin-top:-1px!important;margin-bottom:18px!important}
  .encounter-points article{padding:24px 26px 27px!important}
  .encounter-points article:before{margin-bottom:15px!important}
  .encounter-meta div{padding-block:18px!important}

  #contact .contact-gallery{
    direction:rtl!important;
    grid-template-columns:1.15fr 1fr 1fr 1.15fr!important;
  }
}

#contact .gallery-process img{object-position:50% 50%!important}
#contact .gallery-film img{object-position:50% 43%!important}
#contact .gallery-edit img{object-position:50% 50%!important}
#contact .gallery-audience img{object-position:50% 46%!important}

@media(max-width:850px){
  .encounter-lead{gap:22px!important;margin-bottom:23px!important}
  .encounter-copy-block h2{margin-bottom:15px!important}
  .encounter-points{margin-top:0!important;margin-bottom:13px!important}
  .encounter-points article,
  .encounter-points article:nth-child(2),
  .encounter-points article:nth-child(even){padding-block:15px 16px!important}
  .encounter-points article:before{margin-top:1px!important}
  .encounter-meta div{padding:14px 13px!important}

  #contact .contact-gallery{direction:rtl!important}
  #contact .gallery-process img{object-position:50% 52%!important}
  #contact .gallery-film img{object-position:50% 42%!important}
  #contact .gallery-edit img{object-position:50% 50%!important}
  #contact .gallery-audience img{object-position:50% 44%!important}
}

/* Round 20: stronger encounter hierarchy + polished mobile conversion dock */
.encounter>.wrap{position:relative}
.encounter-lead{position:relative}
.encounter-copy-block{position:relative}
.encounter-copy-block:before{
  content:"";display:block;width:54px;height:4px;background:var(--red);
  margin:0 0 22px auto
}
.encounter-visual{
  box-shadow:0 22px 50px rgba(18,31,55,.13);
  border:1px solid rgba(23,35,59,.14)
}
.encounter-visual:after{width:6px!important;background:#b8842b!important}
.encounter-points article{transition:background .18s ease}
.encounter-points article:nth-child(2){background:#f3f0e9!important}
.encounter-points article:before{font-size:.76rem!important;color:#9e6b1f!important}
.encounter-meta{box-shadow:0 14px 34px rgba(15,29,56,.08)}

@media(min-width:851px){
  .encounter{padding-top:78px!important;padding-bottom:78px!important}
  .encounter>.wrap>.section-no{margin-bottom:22px!important}
  .encounter-lead{
    grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr)!important;
    align-items:stretch!important;
    gap:52px!important;
    margin-bottom:32px!important
  }
  .encounter-copy-block{
    display:flex;flex-direction:column;justify-content:center;
    padding:34px 4px 34px 0
  }
  .encounter-copy-block h2{
    font-size:clamp(2.8rem,4vw,4.35rem)!important;
    line-height:1.04!important;
    max-width:580px
  }
  .encounter-copy-block p{max-width:610px;font-size:1.08rem!important}
  .encounter-visual{min-height:430px!important}
  .encounter-visual img{
    min-height:430px!important;
    object-position:50% 42%!important;
    transform:scale(1.02)
  }
  .encounter-visual figcaption{
    right:20px!important;bottom:18px!important;
    padding:7px 10px;background:rgba(11,22,48,.72);
    backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)
  }
  .encounter-points{margin-bottom:20px!important}
  .encounter-points article{padding:28px 28px 30px!important}
  .encounter-points h3{font-size:1.22rem!important}
  .encounter-points p{font-size:.93rem!important}
}

@media(max-width:850px){
  .encounter{padding-top:54px!important;padding-bottom:54px!important}
  .encounter>.wrap>.section-no{margin-bottom:16px!important}
  .encounter-copy-block:before{width:42px;height:3px;margin-bottom:16px}
  .encounter-lead{gap:20px!important;margin-bottom:26px!important}
  .encounter-copy-block h2{
    font-size:clamp(2.15rem,10vw,2.9rem)!important;
    line-height:1.06!important;
    max-width:340px
  }
  .encounter-copy-block p{font-size:.98rem!important}
  .encounter-visual{
    aspect-ratio:4/3!important;
    box-shadow:0 16px 32px rgba(18,31,55,.12)
  }
  .encounter-visual img{object-position:50% 40%!important}
  .encounter-visual figcaption{
    right:12px!important;bottom:10px!important;
    padding:5px 7px;background:rgba(11,22,48,.7)
  }
  .encounter-points article,
  .encounter-points article:nth-child(2),
  .encounter-points article:nth-child(even){
    grid-template-columns:38px 1fr!important;
    column-gap:10px!important;
    padding:15px 0 16px!important
  }
  .encounter-points article:nth-child(2){background:transparent!important}
  .encounter-points article:before{font-size:.72rem!important}
  .encounter-meta{box-shadow:none}

  .mobile-sticky-cta{
    right:12px!important;left:12px!important;
    bottom:calc(12px + env(safe-area-inset-bottom))!important;
    min-height:62px!important;
    max-width:430px;margin-inline:auto;
    padding:6px 6px 6px 14px!important;
    gap:10px!important;
    border-radius:12px!important;
    background:rgba(10,21,43,.97)!important;
    border:1px solid rgba(255,255,255,.18)!important;
    box-shadow:0 14px 34px rgba(4,10,22,.28)!important
  }
  .mobile-sticky-cta span{
    flex:1 1 auto;
    font:700 .83rem/1.25 Heebo!important;
    letter-spacing:0;
    padding-inline-start:2px
  }
  .mobile-sticky-actions{
    flex:0 0 auto;
    display:grid!important;
    grid-template-columns:auto 48px;
    gap:6px!important;
    align-items:stretch
  }
  .mobile-sticky-cta a{
    min-height:48px!important;
    border-radius:8px!important;
    padding:0 14px!important;
    font:800 .82rem Heebo!important;
    line-height:1!important
  }
  .mobile-sticky-cta .sticky-whatsapp{
    min-width:102px;
    background:var(--red)!important;
    box-shadow:0 7px 18px rgba(216,68,71,.22)
  }
  .mobile-sticky-cta .sticky-email{
    min-width:48px!important;
    width:48px;
    padding:0!important;
    background:rgba(255,255,255,.06)!important;
    border:1px solid rgba(255,255,255,.28)!important;
    font-size:0!important
  }
  .mobile-sticky-cta .sticky-email:before{
    content:"✉";font:700 1.05rem/1 Arial,sans-serif;color:#fff
  }

  #contact .gallery-process img{object-position:50% 47%!important}
  #contact .gallery-film img{object-position:50% 42%!important}
  #contact .gallery-edit img{object-position:50% 50%!important}
  #contact .gallery-audience img{object-position:50% 40%!important}
}

@media(max-width:370px){
  .mobile-sticky-cta{right:8px!important;left:8px!important;padding-left:9px!important}
  .mobile-sticky-cta span{font-size:.76rem!important}
  .mobile-sticky-actions{grid-template-columns:auto 44px!important}
  .mobile-sticky-cta .sticky-whatsapp{min-width:92px;padding-inline:11px!important}
  .mobile-sticky-cta .sticky-email{width:44px;min-width:44px!important}
}

/* Round 21: rebalance encounter image, fix gallery crops, unify sticky actions */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media(min-width:851px){
  .encounter-lead{
    grid-template-columns:minmax(0,1fr) minmax(390px,.92fr)!important;
    align-items:center!important;
    gap:46px!important;
  }
  .encounter-copy-block{padding-block:22px!important}
  .encounter-visual{
    min-height:0!important;
    aspect-ratio:5/4!important;
    max-height:410px;
  }
  .encounter-visual img{
    min-height:0!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:50% 46%!important;
    transform:none!important;
  }
  #contact .gallery-process img{
    object-fit:contain!important;
    object-position:center!important;
    background:#111d35!important;
  }
  #contact .gallery-audience img{
    object-fit:cover!important;
    object-position:50% 48%!important;
  }
}

@media(max-width:850px){
  .encounter-visual{
    min-height:0!important;
    aspect-ratio:16/10!important;
  }
  .encounter-visual img{
    min-height:0!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:50% 43%!important;
  }

  .mobile-sticky-cta{
    left:50%!important;
    right:auto!important;
    width:min(390px,calc(100vw - 20px))!important;
    max-width:none!important;
    min-height:58px!important;
    padding:6px 8px!important;
    display:grid!important;
    grid-template-columns:auto auto!important;
    justify-content:center!important;
    align-items:center!important;
    column-gap:8px!important;
    background:linear-gradient(180deg,rgba(24,41,71,.98),rgba(12,24,49,.98))!important;
    border:1px solid rgba(211,174,100,.58)!important;
    box-shadow:0 14px 34px rgba(4,10,22,.34),inset 0 1px 0 rgba(255,255,255,.07)!important;
    border-radius:13px!important;
    transform:translate(-50%,calc(100% + 24px))!important;
  }
  .mobile-sticky-cta.is-visible{transform:translate(-50%,0)!important}
  .mobile-sticky-cta>span{
    flex:none!important;
    padding:0!important;
    white-space:nowrap;
    font:700 .82rem/1.2 Heebo!important;
  }
  .mobile-sticky-actions{
    display:flex!important;
    gap:6px!important;
    align-items:center!important;
  }
  .mobile-sticky-cta a{
    min-height:44px!important;
    height:44px!important;
    border-radius:9px!important;
    padding:0 12px!important;
    background:rgba(255,255,255,.08)!important;
    border:1px solid rgba(255,255,255,.26)!important;
    box-shadow:none!important;
    color:#fff!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    font:800 .8rem/1 Heebo!important;
  }
  .mobile-sticky-cta .sticky-whatsapp{
    min-width:112px!important;
    background:rgba(255,255,255,.10)!important;
    border-color:rgba(255,255,255,.34)!important;
  }
  .mobile-sticky-cta .sticky-email{
    width:44px!important;
    min-width:44px!important;
    padding:0!important;
    background:rgba(255,255,255,.10)!important;
    border-color:rgba(255,255,255,.34)!important;
    font-size:inherit!important;
  }
  .mobile-sticky-cta .sticky-email:before{content:none!important}
  .sticky-action-icon{
    width:17px;height:17px;flex:none;
    fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
  }
  .sticky-whatsapp .sticky-action-icon path:first-child{fill:none}
  .sticky-whatsapp .sticky-action-icon path:last-child{fill:none}
  #contact .gallery-process img{
    object-fit:contain!important;
    object-position:center!important;
    background:#111d35!important;
  }
  #contact .gallery-audience img{
    object-fit:cover!important;
    object-position:50% 48%!important;
  }
}

@media(max-width:370px){
  .mobile-sticky-cta{
    width:calc(100vw - 14px)!important;
    column-gap:6px!important;
    padding-inline:6px!important;
  }
  .mobile-sticky-cta>span{font-size:.75rem!important}
  .mobile-sticky-cta a{padding-inline:9px!important}
  .mobile-sticky-cta .sticky-whatsapp{min-width:102px!important}
}

/* Round 22: final gallery crop tuning + stronger sticky separation */
@media(min-width:851px){
  #contact .gallery-process img{
    object-fit:cover!important;
    object-position:50% 24%!important;
    background:none!important;
  }
  #contact .gallery-audience img{
    object-fit:cover!important;
    object-position:50% 68%!important;
  }
}

@media(max-width:850px){
  #contact .gallery-process img{
    object-fit:cover!important;
    object-position:50% 28%!important;
    background:none!important;
  }
  #contact .gallery-audience img{
    object-fit:cover!important;
    object-position:50% 62%!important;
  }

  .mobile-sticky-cta{
    background:linear-gradient(180deg,rgba(37,58,91,.99),rgba(19,36,66,.99))!important;
    border:1px solid rgba(222,188,115,.88)!important;
    box-shadow:
      0 16px 38px rgba(2,8,20,.42),
      0 0 0 1px rgba(222,188,115,.10),
      inset 0 1px 0 rgba(255,255,255,.11)!important;
  }
}

/* Round 23: partner-review pass — festival marks, story gallery, encounter readability,
   WhatsApp conversion cues and authentic chat-inspired audience proof */

/* Festival marks: real supplied festival assets, compact enough not to compete with the hero copy. */
.hero-festival-marks{
  width:min(280px,72vw);
  margin-top:18px;
  opacity:.94;
  filter:drop-shadow(0 5px 14px rgba(0,0,0,.28));
}
.hero-festival-marks img{
  display:block;
  width:100%;
  height:auto;
}
@media(max-width:850px){
  .hero-festival-marks{
    width:min(230px,66vw);
    margin-top:14px;
  }
}

/* Move the photographic journey directly after "הסרט הוא רק חלק מהסיפור". */
.story-gallery-shell{
  padding:18px 0 42px;
  background:#0b1630!important;
}
.story-gallery{
  display:grid;
  grid-template-columns:1.15fr 1fr 1fr 1.15fr;
  gap:clamp(8px,1vw,16px);
  direction:rtl;
}
.story-gallery .contact-shot{
  position:relative;
  overflow:hidden;
  min-height:185px;
  margin:0;
  border:1px solid rgba(255,255,255,.13);
  background:#111d35;
}
.story-gallery .contact-shot img{
  display:block;
  width:100%;
  height:100%;
  min-height:185px;
  object-fit:cover;
}
.story-gallery .gallery-process img{object-position:50% 24%}
.story-gallery .gallery-film img{object-position:50% 43%}
.story-gallery .gallery-edit img{object-position:50% 50%}
.story-gallery .gallery-audience img{object-position:50% 68%}

@media(max-width:850px){
  .story-gallery-shell{padding:6px 0 28px}
  .story-gallery{
    width:min(100% - 32px,680px);
    grid-template-columns:1fr 1fr;
    grid-template-rows:1fr 1fr;
    gap:3px;
  }
  .story-gallery .contact-shot{
    min-height:0;
    aspect-ratio:1.35/1;
  }
  .story-gallery .contact-shot img{min-height:0}
  .story-gallery .gallery-process img{object-position:50% 28%}
  .story-gallery .gallery-film img{object-position:50% 42%}
  .story-gallery .gallery-edit img{object-position:50% 50%}
  .story-gallery .gallery-audience img{object-position:50% 62%}
}

/* Encounter: cleaner centering, an intentional short gold accent, and readable supporting copy. */
.encounter-visual:after{
  top:28%!important;
  bottom:auto!important;
  right:0!important;
  width:5px!important;
  height:44%!important;
  background:#b8842b!important;
}
.encounter-visual img{
  object-position:50% 50%!important;
}
.encounter-visual figcaption{
  font-size:.9rem!important;
  line-height:1.35!important;
  padding:8px 11px!important;
}
.encounter-points p{
  font-size:1rem!important;
  line-height:1.64!important;
}
.encounter-meta span{
  font-size:.88rem!important;
  line-height:1.45!important;
}
@media(max-width:850px){
  .encounter-visual img{object-position:50% 47%!important}
  .encounter-visual figcaption{
    font-size:.8rem!important;
    padding:6px 8px!important;
  }
  .encounter-points p{
    font-size:.93rem!important;
    line-height:1.6!important;
  }
  .encounter-meta span{font-size:.8rem!important}
}

/* WhatsApp should be immediately recognizable; email stays secondary. */
#contact .contact-actions .whatsapp,
.mobile-sticky-cta .sticky-whatsapp{
  background:#25D366!important;
  border-color:#25D366!important;
  color:#fff!important;
  box-shadow:0 10px 25px rgba(37,211,102,.22)!important;
}
#contact .contact-actions .whatsapp:hover,
.mobile-sticky-cta .sticky-whatsapp:hover{
  background:#20bd5a!important;
  border-color:#20bd5a!important;
}
.mobile-sticky-cta .sticky-whatsapp .sticky-action-icon{
  stroke:#fff!important;
}

/* Verified audience quotes presented as message bubbles, not as a fake screenshot. */
.written-reactions{
  max-width:980px;
  margin-inline:auto;
}
.reaction-chat{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  padding:22px!important;
  background:
    radial-gradient(circle at 20% 20%,rgba(21,32,57,.035) 0 1px,transparent 1.5px) 0 0/22px 22px,
    #eeeae2!important;
  border:1px solid #17233b14;
}
.reaction-chat .reaction{
  width:auto!important;
  max-width:78%!important;
  min-height:0!important;
  margin:0!important;
  padding:14px 18px!important;
  border:0!important;
  border-radius:10px 10px 2px 10px!important;
  background:#e4f4dc!important;
  color:#17233b!important;
  box-shadow:0 1px 1px rgba(0,0,0,.06)!important;
  position:relative!important;
  justify-self:end;
}
.reaction-chat .reaction:nth-child(even){
  justify-self:start;
  border-radius:10px 10px 10px 2px!important;
  background:#fff!important;
}
.reaction-chat .reaction:before{display:none!important}
.reaction-chat .reaction p,
.reaction-chat .reaction-real p{
  max-width:none!important;
  margin:0!important;
  font-size:1.03rem!important;
  line-height:1.52!important;
  color:inherit!important;
}
@media(max-width:850px){
  .reaction-chat{
    padding:14px!important;
    gap:8px!important;
  }
  .reaction-chat .reaction{max-width:92%!important;padding:12px 14px!important}
  .reaction-chat .reaction p,
  .reaction-chat .reaction-real p{font-size:.98rem!important}
}

/* The closing CTA no longer needs to reserve space for the old gallery. */
@media(min-width:851px){
  #contact .contact-layout{padding-top:70px!important}
}


/* Round 24: focused polish after visual QA */

/* Encounter: remove the remaining gold edge and tighten the crop toward the speakers. */
.encounter-visual:after{
  display:none!important;
}
@media(min-width:851px){
  .encounter-visual img{
    object-fit:cover!important;
    object-position:62% 50%!important;
    transform:scale(1.08)!important;
    transform-origin:center center!important;
  }
}
@media(max-width:850px){
  .encounter-visual img{
    object-position:57% 48%!important;
    transform:scale(1.035)!important;
    transform-origin:center center!important;
  }
}

/* Email is a clear secondary action, without a red/green good-vs-bad reading. */
#contact .contact-actions .email{
  background:#526a86!important;
  border:1px solid #6d829a!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(18,31,55,.18)!important;
}
#contact .contact-actions .email:hover{
  background:#607a99!important;
  border-color:#7f92a8!important;
}
.mobile-sticky-cta .sticky-email{
  background:#526a86!important;
  border-color:#71869e!important;
  color:#fff!important;
}
.mobile-sticky-cta .sticky-email:hover{
  background:#607a99!important;
  border-color:#7f92a8!important;
}

/* Audience proof: each quote is its own WhatsApp-inspired fragment,
   avoiding the impression that all messages came from one conversation. */
.reaction-cards{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
.reaction-cards .reaction{
  max-width:none!important;
  width:100%!important;
  min-height:190px!important;
  justify-self:stretch!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  padding:54px 18px 18px!important;
  border:1px solid rgba(23,35,59,.11)!important;
  border-radius:15px!important;
  background:
    radial-gradient(circle at 16px 16px,rgba(21,32,57,.035) 0 1px,transparent 1.4px) 0 0/22px 22px,
    #efece5!important;
  box-shadow:0 10px 28px rgba(20,31,50,.07)!important;
  position:relative!important;
  overflow:hidden!important;
}
.reaction-cards .reaction:nth-child(even){
  justify-self:stretch!important;
  border-radius:15px!important;
  background:
    radial-gradient(circle at 16px 16px,rgba(21,32,57,.035) 0 1px,transparent 1.4px) 0 0/22px 22px,
    #efece5!important;
}
.reaction-cards .reaction:before{
  content:"WhatsApp";
  display:flex!important;
  align-items:center;
  justify-content:flex-start;
  position:absolute!important;
  top:0!important;
  right:0!important;
  left:0!important;
  height:38px!important;
  padding:0 14px!important;
  background:#f8f8f8!important;
  border-bottom:1px solid rgba(23,35,59,.08)!important;
  color:#53606f!important;
  font:700 .76rem/1 Heebo!important;
  letter-spacing:0!important;
}
.reaction-cards .reaction:after{
  content:"";
  position:absolute;
  top:13px;
  right:76px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:#25D366;
}
.reaction-cards .reaction p,
.reaction-cards .reaction-real p{
  width:fit-content!important;
  max-width:94%!important;
  margin:0!important;
  padding:14px 16px!important;
  border-radius:13px 13px 4px 13px!important;
  background:#dcf8c6!important;
  color:#17233b!important;
  font-size:1.02rem!important;
  line-height:1.55!important;
  box-shadow:0 1px 2px rgba(0,0,0,.08)!important;
}
.reaction-cards .reaction:nth-child(even) p{
  background:#fff!important;
  border-radius:13px 13px 13px 4px!important;
  align-self:flex-start!important;
}
.reaction-cards .reaction:nth-child(odd) p{
  align-self:flex-end!important;
}
@media(max-width:850px){
  .reaction-cards{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .reaction-cards .reaction{
    min-height:155px!important;
    padding:50px 14px 14px!important;
  }
  .reaction-cards .reaction p,
  .reaction-cards .reaction-real p{
    max-width:96%!important;
    font-size:.97rem!important;
  }
}


/* Round 25: close partner-review pass — consistent reaction cards, interactive press, centered email */

/* Reactions: four equal standalone message captures, one coherent visual system. */
.reactions-heading{
  margin-bottom:16px!important;
}
.reactions-heading .reactions-title{
  margin-bottom:0!important;
}
.reactions-heading>span{
  display:none!important;
}
.reaction-cards{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}
.reaction-cards .reaction,
.reaction-cards .reaction:nth-child(even),
.reaction-cards .reaction-real{
  min-height:170px!important;
  padding:18px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
  background:
    radial-gradient(circle at 16px 16px,rgba(21,32,57,.035) 0 1px,transparent 1.4px) 0 0/22px 22px,
    #f1eee7!important;
  border:1px solid rgba(23,35,59,.11)!important;
  border-radius:15px!important;
  box-shadow:0 10px 26px rgba(20,31,50,.065)!important;
  color:#17233b!important;
  overflow:hidden!important;
}
.reaction-cards .reaction:before,
.reaction-cards .reaction:after{
  content:none!important;
  display:none!important;
}
.reaction-cards .reaction p,
.reaction-cards .reaction-real p,
.reaction-cards .reaction:nth-child(even) p,
.reaction-cards .reaction:nth-child(odd) p{
  align-self:auto!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:14px 16px!important;
  background:#fff!important;
  color:#17233b!important;
  border:1px solid rgba(23,35,59,.07)!important;
  border-radius:14px 14px 4px 14px!important;
  box-shadow:0 2px 5px rgba(20,31,50,.08)!important;
  font-size:1.02rem!important;
  line-height:1.55!important;
}
.reaction-cards .reaction p:before{
  content:"";
  display:inline-block;
  width:8px;
  height:8px;
  margin-left:8px;
  border-radius:50%;
  background:#25D366;
  vertical-align:.08em;
}
@media(max-width:850px){
  .reaction-cards{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .reaction-cards .reaction,
  .reaction-cards .reaction:nth-child(even),
  .reaction-cards .reaction-real{
    min-height:132px!important;
    padding:13px!important;
  }
  .reaction-cards .reaction p,
  .reaction-cards .reaction-real p{
    font-size:.97rem!important;
  }
}

/* Press: unmistakably interactive without turning into loud marketing cards. */
.press{
  margin-top:38px!important;
  padding:26px!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  background:#f3f0e9!important;
  border-top:1px solid rgba(23,35,59,.13)!important;
  border-bottom:1px solid rgba(23,35,59,.08)!important;
}
.press .press-title{
  grid-column:1/-1!important;
  display:block!important;
  margin:0 0 4px!important;
  color:#17233b!important;
  font:800 1.15rem/1.3 Heebo!important;
}
.press a{
  position:relative!important;
  min-height:86px!important;
  padding:17px 18px 16px 44px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:4px!important;
  background:#fff!important;
  border:1px solid rgba(23,35,59,.13)!important;
  color:#17233b!important;
  text-decoration:none!important;
  box-shadow:0 5px 16px rgba(20,31,50,.045)!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
.press a:hover,
.press a:focus-visible{
  transform:translateY(-2px)!important;
  border-color:rgba(23,35,59,.3)!important;
  box-shadow:0 10px 24px rgba(20,31,50,.09)!important;
  outline:none!important;
}
.press a strong{
  font:800 1rem/1.2 Heebo!important;
  color:#17233b!important;
}
.press a small{
  font:500 .78rem/1.2 Assistant!important;
  color:#6b7380!important;
}
.press .press-arrow{
  position:absolute!important;
  left:16px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:#526a86!important;
  font-size:1.15rem!important;
  line-height:1!important;
}
@media(max-width:850px){
  .press{
    grid-template-columns:1fr!important;
    padding:20px 16px!important;
    gap:9px!important;
  }
  .press .press-title{grid-column:auto!important}
  .press a{min-height:72px!important}
}

/* Email icon + label are centered as one unit in the button. */
#contact .contact-actions .email{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  text-align:center!important;
}
#contact .contact-actions .email:before{
  content:"✉"!important;
  position:static!important;
  display:inline-block!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  transform:none!important;
  background:none!important;
  color:currentColor!important;
  font:700 1rem/1 Arial,sans-serif!important;
}


/* Round 26: approved visual direction — clearer WhatsApp references and icon-led press cards */

/* Audience quotes: each card reads as a standalone received-message fragment. */
.reaction-cards .reaction,
.reaction-cards .reaction:nth-child(even),
.reaction-cards .reaction-real{
  position:relative!important;
  min-height:164px!important;
  padding:24px 22px 22px 80px!important;
  align-items:flex-end!important;
  background:
    radial-gradient(circle at 16px 16px,rgba(21,32,57,.028) 0 1px,transparent 1.4px) 0 0/22px 22px,
    #f3f0e9!important;
}
.reaction-cards .reaction-wa-icon{
  position:absolute;
  left:22px;
  top:22px;
  width:42px;
  height:42px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#25D366;
  color:#fff;
  box-shadow:0 4px 12px rgba(37,211,102,.20);
}
.reaction-cards .reaction-wa-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.reaction-cards .reaction p,
.reaction-cards .reaction-real p,
.reaction-cards .reaction:nth-child(even) p,
.reaction-cards .reaction:nth-child(odd) p{
  border:0!important;
  border-radius:17px 17px 5px 17px!important;
  padding:16px 18px!important;
  box-shadow:0 5px 14px rgba(20,31,50,.08)!important;
}
.reaction-cards .reaction:nth-child(odd) p{
  background:#e4f8d8!important;
}
.reaction-cards .reaction:nth-child(even) p{
  background:#fff!important;
}
.reaction-cards .reaction p:before{
  content:none!important;
  display:none!important;
}
@media(max-width:850px){
  .reaction-cards .reaction,
  .reaction-cards .reaction:nth-child(even),
  .reaction-cards .reaction-real{
    padding:18px 16px 16px 64px!important;
  }
  .reaction-cards .reaction-wa-icon{
    left:16px;
    top:16px;
    width:36px;
    height:36px;
  }
  .reaction-cards .reaction-wa-icon svg{
    width:21px;
    height:21px;
  }
}

/* Press cards: generic article/video icons instead of thumbnails, same weight for both interviews. */
.press{
  background:transparent!important;
  padding:0!important;
  border:0!important;
  margin-top:34px!important;
}
.press .press-title{
  margin-bottom:12px!important;
}
.press a{
  min-height:96px!important;
  padding:14px 54px 14px 18px!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 24px!important;
  align-items:center!important;
  column-gap:14px!important;
  border-radius:10px!important;
}
.press .press-kind-icon{
  width:48px;
  height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#eef3f8;
  color:#173154;
}
.press .press-kind-icon svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.press .press-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.press .press-copy strong{
  font:800 1.03rem/1.2 Heebo!important;
  color:#17233b!important;
}
.press .press-copy small{
  font:500 .82rem/1.2 Assistant!important;
  color:#66717f!important;
}
.press .press-arrow{
  position:static!important;
  transform:none!important;
  justify-self:start!important;
  color:#526a86!important;
}
@media(max-width:850px){
  .press{
    gap:10px!important;
  }
  .press a{
    min-height:82px!important;
    grid-template-columns:42px minmax(0,1fr) 22px!important;
    padding:12px 14px!important;
  }
  .press .press-kind-icon{
    width:42px;
    height:42px;
  }
  .press .press-kind-icon svg{
    width:21px;
    height:21px;
  }
}


/* Round 27: clean standalone components to avoid legacy cascade conflicts */

/* Audience quotes */
.audience-quotes-v2{
  max-width:1080px;
  margin:34px auto 0;
  padding:0;
}
.audience-quotes-v2__heading{
  margin-bottom:16px;
}
.audience-quotes-v2__heading p{
  margin:0;
  font:800 1.15rem/1.3 Heebo;
  color:#17233b;
}
.audience-quotes-v2__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.audience-quote-v2{
  margin:0;
  min-height:162px;
  padding:22px 22px 20px 78px;
  position:relative;
  display:flex;
  align-items:flex-end;
  background:
    radial-gradient(circle at 16px 16px,rgba(21,32,57,.028) 0 1px,transparent 1.4px) 0 0/22px 22px,
    #f3f0e9;
  border:1px solid rgba(23,35,59,.11);
  border-radius:15px;
  box-shadow:0 10px 26px rgba(20,31,50,.055);
}
.audience-quote-v2__wa{
  position:absolute;
  left:22px;
  top:22px;
  width:42px;
  height:42px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#25D366;
  color:#fff;
  box-shadow:0 4px 12px rgba(37,211,102,.18);
}
.audience-quote-v2__wa svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.audience-quote-v2 p{
  width:100%;
  margin:0;
  padding:16px 18px;
  background:#fff;
  color:#17233b;
  border-radius:17px 17px 5px 17px;
  box-shadow:0 5px 14px rgba(20,31,50,.075);
  font:700 1.04rem/1.55 Heebo;
}
.audience-quote-v2:nth-child(odd) p{
  background:#e4f8d8;
}
@media(max-width:850px){
  .audience-quotes-v2{margin-top:26px}
  .audience-quotes-v2__grid{grid-template-columns:1fr;gap:12px}
  .audience-quote-v2{
    min-height:132px;
    padding:17px 16px 15px 62px;
  }
  .audience-quote-v2__wa{
    left:15px;
    top:15px;
    width:36px;
    height:36px;
  }
  .audience-quote-v2__wa svg{width:21px;height:21px}
  .audience-quote-v2 p{font-size:.97rem;padding:14px 15px}
}

/* Media links */
.media-links-v2{
  max-width:1080px;
  margin:34px auto 0;
  padding-top:26px;
  border-top:1px solid rgba(23,35,59,.16);
}
.media-links-v2 h3{
  margin:0 0 14px;
  font:800 1.15rem/1.3 Heebo;
  color:#17233b;
}
.media-links-v2__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.media-links-v2__grid a{
  min-height:94px;
  padding:14px 16px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 24px;
  align-items:center;
  gap:14px;
  background:#fff;
  border:1px solid rgba(23,35,59,.14);
  border-radius:10px;
  color:#17233b;
  text-decoration:none;
  box-shadow:0 5px 16px rgba(20,31,50,.045);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;
}
.media-links-v2__grid a:hover,
.media-links-v2__grid a:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(23,35,59,.30);
  background:#fcfbf8;
  box-shadow:0 10px 24px rgba(20,31,50,.09);
  outline:none;
}
.media-links-v2__icon{
  width:48px;
  height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#eef3f8;
  color:#173154;
}
.media-links-v2__icon svg,
.media-links-v2__external svg{
  width:24px;
  height:24px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.media-links-v2__copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
.media-links-v2__copy strong{
  font:800 1.03rem/1.2 Heebo;
  color:#17233b;
}
.media-links-v2__copy small{
  font:500 .82rem/1.2 Assistant;
  color:#66717f;
}
.media-links-v2__external{
  display:flex;
  align-items:center;
  justify-content:center;
  color:#526a86;
}
.media-links-v2__external svg{width:20px;height:20px}
@media(max-width:850px){
  .media-links-v2{margin-top:28px;padding-top:22px}
  .media-links-v2__grid{grid-template-columns:1fr;gap:9px}
  .media-links-v2__grid a{
    min-height:80px;
    grid-template-columns:42px minmax(0,1fr) 22px;
    gap:12px;
    padding:12px 14px;
  }
  .media-links-v2__icon{width:42px;height:42px}
  .media-links-v2__icon svg{width:21px;height:21px}
}

/* Contact CTA: icon + label are one explicitly centered group. */
#contact .contact-actions .btn:before{
  content:none!important;
  display:none!important;
}
#contact .contact-actions .btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#contact .contact-btn-inner{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  width:max-content;
  margin:auto;
  line-height:1;
}
#contact .contact-btn-icon{
  width:19px;
  height:19px;
  flex:0 0 19px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}


/* Round 28: reference-accurate composition */
.audience-quotes-v2__heading,
.media-links-v2 h3{position:relative;padding-top:18px}
.audience-quotes-v2__heading:before,
.media-links-v2 h3:before{content:"";position:absolute;top:0;right:0;width:44px;height:3px;background:#d84447;border-radius:999px}

.audience-quotes-v2__grid{gap:14px!important}
.audience-quote-v2{min-height:146px!important;padding:18px 18px 18px 72px!important;border-radius:14px!important;background:radial-gradient(circle at 16px 16px,rgba(21,32,57,.022) 0 1px,transparent 1.35px) 0 0/22px 22px,#f6f3ed!important;box-shadow:0 7px 20px rgba(20,31,50,.05)!important}
.audience-quote-v2__wa{left:18px!important;top:18px!important;width:48px!important;height:48px!important;border:4px solid #fff;box-shadow:0 5px 16px rgba(20,31,50,.12),0 4px 12px rgba(37,211,102,.16)!important}
.audience-quote-v2__wa svg{width:26px!important;height:26px!important}
.audience-quote-v2 p{position:relative;min-height:62px;display:flex;align-items:center;padding:14px 18px!important;border-radius:16px!important;font-size:1.02rem!important;line-height:1.48!important;box-shadow:0 5px 14px rgba(20,31,50,.07)!important}
.audience-quote-v2 p:before{content:"";position:absolute;left:-11px;bottom:13px;width:0;height:0;border-top:9px solid transparent;border-right:12px solid #fff}
.audience-quote-v2:nth-child(odd) p:before{border-right-color:#e4f8d8}

.media-links-v2{margin-top:38px!important;padding-top:28px!important}
.media-links-v2__grid{gap:12px!important}
.media-links-v2__grid a{min-height:88px!important;padding:10px 14px!important;grid-template-columns:44px minmax(0,1fr) 46px 20px!important;column-gap:12px!important;border-radius:8px!important;box-shadow:0 5px 14px rgba(20,31,50,.05)!important}
.media-links-v2__icon{width:44px!important;height:44px!important}
.media-links-v2__brand{width:46px;height:46px;display:flex;align-items:center;justify-content:center;font:900 1.05rem/1 Heebo}
.media-links-v2__brand--hayom{background:#e31f26;color:#fff;border-radius:4px;font-size:.9rem}
.media-links-v2__brand--13{color:#17233b;background:linear-gradient(135deg,#e6195d 0 32%,#25c5d9 32% 64%,#f0d331 64% 100%);border-radius:4px;text-shadow:0 1px 0 rgba(255,255,255,.45)}
.media-links-v2__brand--14{border-radius:50%;background:#e51d2a;color:#fff}
.media-links-v2__external svg{width:18px!important;height:18px!important}

#contact .contact-actions .btn{min-width:238px!important}
#contact .contact-btn-inner{min-width:118px;display:grid!important;grid-template-columns:20px auto!important;align-items:center!important;justify-content:center!important;column-gap:10px!important;direction:ltr;margin-inline:auto!important}
#contact .contact-btn-inner>span{direction:rtl;text-align:center;line-height:1}
#contact .contact-btn-icon{width:20px!important;height:20px!important}

@media(max-width:850px){
  .audience-quotes-v2__heading,.media-links-v2 h3{padding-top:15px}
  .audience-quotes-v2__heading:before,.media-links-v2 h3:before{width:36px}
  .audience-quote-v2{min-height:126px!important;padding:15px 14px 15px 60px!important}
  .audience-quote-v2__wa{left:14px!important;top:14px!important;width:40px!important;height:40px!important}
  .audience-quote-v2 p{min-height:56px;padding:13px 15px!important;font-size:.96rem!important}
  .media-links-v2__grid a{min-height:80px!important;grid-template-columns:40px minmax(0,1fr) 40px 20px!important;gap:10px!important}
  .media-links-v2__icon,.media-links-v2__brand{width:40px!important;height:40px!important}
  #contact .contact-actions .btn{min-width:0!important}
  #contact .contact-btn-inner{min-width:110px}
}

/* Round 29: icon repair, true RTL button order, readable small text, no invented outlet marks */

/* Contact CTA: keep icon on the RTL leading side while centering icon+label as one unit. */
#contact .contact-btn-inner{
  min-width:118px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  direction:rtl!important;
  margin-inline:auto!important;
}
#contact .contact-btn-inner>span{
  direction:rtl!important;
  text-align:center!important;
  line-height:1!important;
}
#contact .contact-btn-icon{
  width:20px!important;
  height:20px!important;
  flex:0 0 20px!important;
}

/* WhatsApp pictogram: consistent stroke treatment everywhere it appears. */
.audience-quote-v2__wa svg,
#contact .whatsapp .contact-btn-icon,
.mobile-sticky-cta .sticky-whatsapp .sticky-action-icon{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.75!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* Media cards use only truthful generic content-type icons. */
.media-links-v2__grid a{
  grid-template-columns:44px minmax(0,1fr) 20px!important;
}
.media-links-v2__brand{
  display:none!important;
}

/* Raise only the smallest text layer; preserve the main hierarchy. */
.section-no,
.cred-label,
.cred-item small,
.testimonial figcaption,
.facts span,
.encounter-meta span,
.media-links-v2__copy small{
  font-size:.95rem!important;
  line-height:1.45!important;
}
.practical-reassurance{
  font-size:.95rem!important;
}
@media(max-width:850px){
  #contact .contact-btn-inner{min-width:110px!important}
  .media-links-v2__grid a{
    grid-template-columns:40px minmax(0,1fr) 20px!important;
  }
  .section-no,
  .cred-label,
  .cred-item small,
  .testimonial figcaption,
  .facts span,
  .encounter-meta span,
  .media-links-v2__copy small,
  .practical-reassurance{
    font-size:.9rem!important;
  }
}


/* Round 30: mobile email label + final small-text readability floor */
.mobile-sticky-cta .sticky-email{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
}
.mobile-sticky-cta .sticky-email span{
  position:static!important;
  width:auto!important;
  height:auto!important;
  clip:auto!important;
  clip-path:none!important;
  overflow:visible!important;
  white-space:nowrap!important;
  font-size:.86rem!important;
  line-height:1!important;
}

/* A controlled floor for genuinely small visible text, without flattening hierarchy. */
.hero-action .offering,
.hero-copy,
.quote .narrow>p:last-child,
.voices-head p,
.faq summary,
.faq p{
  font-size:.95rem!important;
  line-height:1.5!important;
}

@media(max-width:850px){
  .mobile-sticky-cta>span,
  .mobile-sticky-cta a{
    font-size:.86rem!important;
  }
  .hero-action .offering,
  .hero-copy,
  .quote .narrow>p:last-child,
  .voices-head p,
  .faq summary,
  .faq p{
    font-size:.92rem!important;
  }
}


/* Round 31: rebalance mobile sticky after adding visible email label */
@media(max-width:850px){
  .mobile-sticky-cta{
    width:min(410px,calc(100vw - 14px))!important;
    min-height:58px!important;
    padding:6px!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    justify-content:stretch!important;
    column-gap:8px!important;
  }
  .mobile-sticky-cta>span{
    min-width:0!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    padding-inline:4px!important;
    font-size:.78rem!important;
    line-height:1!important;
  }
  .mobile-sticky-actions{
    display:flex!important;
    align-items:center!important;
    gap:6px!important;
    flex:none!important;
  }
  .mobile-sticky-cta a{
    min-height:44px!important;
    height:44px!important;
    padding:0 10px!important;
    gap:7px!important;
    white-space:nowrap!important;
    font-size:.82rem!important;
  }
  .mobile-sticky-cta .sticky-whatsapp{
    min-width:108px!important;
    width:108px!important;
  }
  .mobile-sticky-cta .sticky-email{
    min-width:76px!important;
    width:76px!important;
    padding:0 9px!important;
  }
  .mobile-sticky-cta .sticky-email span{
    font-size:.82rem!important;
  }
  .mobile-sticky-cta .sticky-action-icon{
    width:16px!important;
    height:16px!important;
    flex:0 0 16px!important;
  }
}

@media(max-width:360px){
  .mobile-sticky-cta{
    width:calc(100vw - 10px)!important;
    column-gap:5px!important;
    padding:5px!important;
  }
  .mobile-sticky-cta>span{
    font-size:.72rem!important;
    padding-inline:2px!important;
  }
  .mobile-sticky-actions{gap:4px!important}
  .mobile-sticky-cta .sticky-whatsapp{
    min-width:100px!important;
    width:100px!important;
  }
  .mobile-sticky-cta .sticky-email{
    min-width:68px!important;
    width:68px!important;
    padding-inline:7px!important;
  }
  .mobile-sticky-cta a,
  .mobile-sticky-cta .sticky-email span{
    font-size:.76rem!important;
  }
}


/* Round 32: launch-readiness accessibility hardening */
.skip-link{
  position:fixed;
  top:10px;
  right:10px;
  z-index:10000;
  transform:translateY(-160%);
  padding:10px 14px;
  background:#fff;
  color:#0b1630;
  border:2px solid #0b1630;
  border-radius:4px;
  font:700 .95rem Heebo,Arial,sans-serif;
  text-decoration:none;
}
.skip-link:focus{transform:none}

#main-content:focus{outline:none}

.site-footer{
  background:#070c16;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.12);
}
.site-footer .wrap{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.site-footer a{
  color:#fff;
  font:600 .92rem Heebo,Arial,sans-serif;
  text-underline-offset:3px;
}
.site-footer a:focus-visible,
.media-links-v2__grid a:focus-visible,
#contact .contact-actions a:focus-visible,
.mobile-sticky-cta a:focus-visible{
  outline:3px solid #c2a467!important;
  outline-offset:3px!important;
}

/* Accessible dark WhatsApp green: white text contrast > 5:1. */
#contact .contact-actions .whatsapp,
.mobile-sticky-cta .sticky-whatsapp,
.audience-quote-v2__wa{
  background:#0B7A3B!important;
  border-color:#0B7A3B!important;
  color:#fff!important;
}
#contact .contact-actions .whatsapp:hover,
.mobile-sticky-cta .sticky-whatsapp:hover{
  background:#096733!important;
  border-color:#096733!important;
}

/* Do not animate interface movement for visitors requesting reduced motion. */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
  .hero-media{display:none!important}
  .media-links-v2__grid a:hover{transform:none!important}
}


/* Round 33: reduce mobile sticky intrusion after full-page real-device QA */
@media(max-width:850px){
  .mobile-sticky-cta{
    bottom:calc(6px + env(safe-area-inset-bottom))!important;
    min-height:52px!important;
    padding:4px 5px!important;
    column-gap:6px!important;
    border-radius:12px!important;
  }
  .mobile-sticky-cta>span{
    padding-inline:3px!important;
    font-size:.75rem!important;
  }
  .mobile-sticky-actions{gap:5px!important}
  .mobile-sticky-cta a{
    min-height:40px!important;
    height:40px!important;
    padding:0 8px!important;
    font-size:.79rem!important;
  }
  .mobile-sticky-cta .sticky-whatsapp{
    min-width:104px!important;
    width:104px!important;
  }
  .mobile-sticky-cta .sticky-email{
    min-width:72px!important;
    width:72px!important;
    padding-inline:7px!important;
  }
  .mobile-sticky-cta .sticky-email span{font-size:.79rem!important}
  .mobile-sticky-cta .sticky-action-icon{
    width:15px!important;
    height:15px!important;
    flex-basis:15px!important;
  }
}
@media(max-width:360px){
  .mobile-sticky-cta a,
  .mobile-sticky-cta .sticky-email span{font-size:.73rem!important}
  .mobile-sticky-cta .sticky-whatsapp{
    min-width:96px!important;
    width:96px!important;
  }
  .mobile-sticky-cta .sticky-email{
    min-width:65px!important;
    width:65px!important;
  }
}


/* Round 34: AA contrast for gold labels on light surfaces */
.film .section-no,
.encounter .section-no,
.voices .section-no,
.encounter-points article:before{
  color:#8A6421!important;
}


/* Round 35: final AA contrast correction for white text on the red Hero CTA */
.hero-action .btn.primary{
  background:#D13D40!important;
}
.hero-action .btn.primary:hover{
  background:#C9363B!important;
}
