:root{
  /* Surfaces — warm near-black, browner than the reference's neutral grey */
  --ink:#12100E;
  --ink-2:#1A1714;
  --ink-3:#242019;

  /* Kept from the old palette so existing rules keep resolving */
  --bg:#12100E;
  --bg-card:#1A1714;

  /* Accent — ours, deliberately not the reference amber #F5B754 */
  --gold:#C9A84C;
  --gold-bright:#E8C96A;
  --gold-dim:rgba(201,168,76,0.12);
  --gold-border:rgba(201,168,76,0.2);

  /* Text */
  --cream:#EDE8DC;
  --cream-dim:rgba(237,232,220,0.82);
  --cream-muted:rgba(237,232,220,0.62);

  /* Type — --font-display was referenced at 3 sites but never defined */
  --font-display:'Jost',sans-serif;
  --font-serif:'Cormorant Garamond',serif;
  --font-hebrew:'Frank Ruhl Libre',serif;

  /* Rhythm */
  --pad-section:120px;

  --ease-luxury:cubic-bezier(0.25,0.46,0.45,0.94);
  --ease-spring:cubic-bezier(0.34,1.56,0.64,1);
  --ease-out-expo:cubic-bezier(0.19, 1, 0.22, 1);
}

@media (max-width:768px){ :root{ --pad-section:72px; } }

#scroll-progress {
  position:fixed;top:0;left:0;height:3px;background:var(--gold);
  z-index:10000;width:0%;pointer-events:none;
}
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden; }
.lenis.lenis-scrolling iframe { pointer-events: none; }
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px;overflow-x:hidden;overflow-x:clip}
body{
  font-family:'Jost',sans-serif;
  background:var(--bg);
  color:var(--cream);
  overflow-x:hidden;
  overflow-x:clip;
}
::selection{background:var(--gold);color:#000}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}

/* CUSTOM SCROLLBAR */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--bg); }
::-webkit-scrollbar-thumb { 
  background: var(--gold-border); 
  border-radius: 10px; 
  border: 2px solid var(--bg);
}
::-webkit-scrollbar-thumb:hover { background: var(--gold); }

/* NAVBAR */
#navbar{
  position:fixed;
  top:30px; left:50%; transform:translateX(-50%);
  width:90%; max-width:1340px;
  padding:14px 44px;
  background:rgba(11,15,30,0.65);
  backdrop-filter:blur(24px) saturate(180%);
  -webkit-backdrop-filter:blur(24px) saturate(180%);
  border:1px solid rgba(201,168,76,0.15);
  border-radius:100px;
  display:flex;justify-content:space-between;align-items:center;
  z-index:2000;
  transition:all 0.5s var(--ease-luxury);
  box-shadow:0 10px 40px rgba(0,0,0,0.3);
}
#navbar.scrolled {
  top:15px;
  padding:10px 38px;
  background:rgba(8,12,24,0.85);
  border-color:rgba(201,168,76,0.35);
  width:94%;
}
.nav-logo{
  display:flex;align-items:center;gap:14px;
  text-decoration:none;
  flex: 0 1 auto;
}
.nav-logo-yaron{
  font-family:'Cormorant Garamond',serif;font-size:24px;letter-spacing:.15em;
  color:var(--cream);
  background:linear-gradient(135deg,#9A7A2E,#C9A84C,#E8C96A,#C9A84C,#9A7A2E);
  background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.nav-logo-sep{width:1px;height:24px;background:var(--gold-border)}
.nav-logo-vip{
  font-family:'Jost',sans-serif;font-size:14px;letter-spacing:.3em;color:var(--gold);
}
.nav-links{
  display:flex;align-items:center;gap:40px;list-style:none;
  flex: 1; justify-content: center;
}
.nav-links a{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:12px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--cream-muted);transition:color .3s;
  position:relative;
}
.nav-links a:hover{color:var(--gold)}
.nav-links a::after{
  content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;
  background:var(--gold);transition:width .4s var(--ease-luxury);
}
.nav-links a:hover::after{width:100%}
.nav-phone-wrap{
  flex: 0 1 auto; display: flex; align-items:center; gap:24px;
}
.nav-phone{
  display:flex;align-items:center;gap:8px;
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:14px;letter-spacing:.05em;color:var(--cream-dim);
  transition:color .3s;
}
.nav-phone:hover{color:var(--gold)}
.lang-btn{
  background:none;border:1px solid var(--gold-border);
  color:var(--gold);padding:6px 12px;cursor:pointer;
  font-family:'Frank Ruhl Libre',serif;font-size:12px;
  border-radius:20px; transition:all .3s;
}
.lang-btn:hover{background:var(--gold-dim);border-color:var(--gold)}

#hamburger{
  display:none;flex-direction:column;gap:5px;
  cursor:pointer;background:none;border:none;padding:4px;
}
#hamburger span{
  display:block;width:22px;height:1px;
  background:var(--cream);transition:.3s;
}
/* The full-screen menu must paint ABOVE #navbar (z-index:2000). Both create
   their own stacking context, so at z-index:999 the navbar pill sat on top of
   #menu-close and swallowed the tap — elementFromPoint() at the X returned
   NAV#navbar, leaving the menu with no way out on a phone. Covering the pill
   while the menu is open is the intended full-screen-overlay behaviour.
   visibility:hidden (not just opacity) also takes the closed menu's links out
   of the tab order and the accessibility tree. */
#mobile-menu{
  position:fixed;inset:0;background:rgba(7,10,22,0.97);
  z-index:3000;display:flex;flex-direction:column;
  align-items:center;justify-content:center;gap:36px;
  opacity:0;pointer-events:none;visibility:hidden;
  overscroll-behavior:contain;
  transition:opacity .4s var(--ease-luxury),visibility 0s linear .4s;
}
.reveal-child {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s var(--ease-out-expo), transform 0.8s var(--ease-out-expo);
}
.reveal-child.visible {
  opacity: 1;
  transform: translateY(0);
}

#mobile-menu.open{opacity:1;pointer-events:all;visibility:visible;transition-delay:0s}

/* Scroll lock. overflow:hidden on both the scroll container and body pins the
   document without moving it, so the page is exactly where it was when the
   menu closes — no jump. --yv-sbw compensates the desktop scrollbar gutter
   the lock removes; on touch (overlay scrollbars) it resolves to 0px. */
html.menu-open,html.menu-open body{overflow:hidden}
html.menu-open body{padding-right:var(--yv-sbw,0px)}
html[dir="rtl"].menu-open body{padding-right:0;padding-left:var(--yv-sbw,0px)}
#mobile-menu a{
  font-family:'Cormorant Garamond',serif;font-weight:300;
  font-size:32px;letter-spacing:.1em;color:var(--cream-dim);
  transition:color .3s;
}
#mobile-menu a:hover{color:var(--gold)}
/* The close control is an inline SVG, not a ✕ text glyph, so the box is
   sized rather than inherited from a font metric — 44px square to meet the
   minimum tap target. top/right are pulled back from the old 28/60 by the
   padding the larger box adds, keeping the icon optically where it was. */
#menu-close{
  position:absolute;top:22px;right:52px;
  width:44px;height:44px;
  display:flex;align-items:center;justify-content:center;
  background:none;border:none;color:var(--cream-dim);
  cursor:pointer;transition:color .3s;
}
#menu-close svg{width:24px;height:24px;display:block}
#menu-close:hover{color:var(--gold)}
/* RTL: the close control belongs on the leading edge, which is the left in
   Hebrew. Without this it stayed pinned to the right, mirroring nothing. */
html[dir="rtl"] #menu-close{right:auto;left:52px}
#menu-close:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:50%}

/* HERO */
#hero{
  position:relative;height:100vh;height:100svh;min-height:600px;
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
}
/* Poster — dark elegant background shown before iframe loads */
#hero-video-poster{
  position:absolute;inset:0;z-index:0;
  background:linear-gradient(155deg,#12100E 0%,#0C1326 50%,#12100E 100%);
}
/* Native <video id="hero-video"> cover-fit background, injected by
   injectVideo() in js/script.js. object-fit:cover does the aspect-ratio
   math natively, so — unlike the old Vimeo <iframe> this replaced, which
   needed translate(-50%,-50%) + min-width/min-height "background-size:cover"
   arithmetic because an <iframe> can't use object-fit — a plain
   position:absolute + inset:0 + width/height:100% is all this needs.
   opacity/transition stay here too so the fade-in works even before
   injectVideo()'s own inline styles apply. */
#hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
  pointer-events:none;
  opacity:0;
  transition:opacity 1.2s ease;
  border:0;
}
#hero-video-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    /* Text scrim. The vignette below darkens the EDGES and leaves the
       middle clear, which is exactly where the hero type sits: measured
       at 2.15:1 on desktop and 2.21:1 on mobile against the cream. This
       centred ellipse dims the type's own lane and dies out by 82% so the
       corners of the footage stay live. Both platforms share it, so the
       still hero and the video hero read identically. */
    radial-gradient(ellipse 80% 58% at 50% 46%,rgba(5,5,10,.58) 0%,rgba(5,5,10,.47) 55%,rgba(5,5,10,0) 82%),
    linear-gradient(180deg,
      rgba(7,10,22,0.18) 0%,
      rgba(7,10,22,0.38) 35%,
      rgba(7,10,22,0.62) 65%,
      rgba(7,10,22,0.88) 100%),
    radial-gradient(ellipse 80% 60% at 50% 38%,transparent 0%,rgba(0,0,0,0.45) 100%);
}
#hero-grain{
  position:absolute;inset:-10%;width:120%;height:120%;z-index:2;
  pointer-events:none;opacity:.025;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23g)' opacity='1'/%3E%3C/svg%3E");
  /* static grain — perpetual repaint animation removed for performance */
}
@keyframes heroGrain{
  0%{transform:translate(0,0)}
  10%{transform:translate(-1%,-1%)}
  20%{transform:translate(-2%,1%)}
  30%{transform:translate(1%,-2%)}
  40%{transform:translate(-1%,2%)}
  50%{transform:translate(-2%,1%)}
  60%{transform:translate(2%,0%)}
  70%{transform:translate(0%,1%)}
  80%{transform:translate(1%,2%)}
  90%{transform:translate(-1%,1%)}
  100%{transform:translate(0,0)}
}
#hero-vignette{
  position:absolute;inset:0;z-index:2;pointer-events:none;
  background:radial-gradient(ellipse 90% 80% at 50% 50%, transparent 40%, rgba(7,10,22,0.55) 100%);
}
#hero-grid{
  position:absolute;inset:0;z-index:2;
  background-image:
    linear-gradient(rgba(201,168,76,0.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(201,168,76,0.035) 1px,transparent 1px);
  background-size:80px 80px;
}
#hero-content{
  position:relative;z-index:3;
  text-align:center;padding:0 20px;
  width: 100%;
  max-width: 1400px;
  will-change:transform;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}
.hero-line-wrap{
  display:flex;align-items:center;justify-content:center;gap:20px;
  margin-bottom:24px;
  width: 100%;
  opacity:0;
  animation:heroFadeUp 1s var(--ease-luxury) 0.1s both;
}
.hero-line{
  flex:1;max-width:120px;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold));
}
.hero-line.right{
  background:linear-gradient(90deg,var(--gold),transparent);
}
/* Hero type sits over live footage, which is a background we do not
   control frame to frame. Three shadow layers (tight edge, mid glow,
   wide falloff) hold every glyph's edge whatever passes behind it. */
/* Three layers on the title: its strokes are thick enough to carry the
   wide falloff. The tagline and sub are thin italic and thin caps, where
   a 44px halo reads as grime rather than depth, so they take two. */
.hero-title,.hero-title *{
  text-shadow:0 1px 2px rgba(5,5,10,.95),0 3px 12px rgba(5,5,10,.78),0 10px 44px rgba(5,5,10,.8);
}
.hero-tagline,.hero-sub,.hero-tagline *,.hero-sub *{
  text-shadow:0 1px 2px rgba(5,5,10,.9),0 2px 10px rgba(5,5,10,.6);
}
.hero-ctas .btn-pill,.hero-ctas .btn-pill-ghost{text-shadow:none}
.hero-title{
  font-family:'Cormorant Garamond',serif;
  font-weight:300;
  font-size:clamp(54px,11vw,148px);
  letter-spacing:.18em;
  line-height:1;
  color:var(--cream);
  margin-bottom:20px;
  will-change:transform;
  opacity:0;
  clip-path:inset(0 0 30% 0);
  animation:heroTitleReveal 1s var(--ease-luxury) .15s both;
}
@keyframes heroTitleReveal{
  0%{opacity:0;clip-path:inset(0 0 30% 0);transform:translateY(20px)}
  100%{opacity:1;clip-path:inset(0 0 0% 0);transform:translateY(0)}
}
@keyframes heroFadeUp{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
.hero-sep{
  display:flex;align-items:center;justify-content:center;gap:16px;
  margin-bottom:28px;
  opacity:0;
  animation:heroFadeUp 1s var(--ease-luxury) 0.5s both;
}
.hero-sep-line{
  width:80px;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-border));
}
.hero-sep-line.right{
  background:linear-gradient(90deg,var(--gold-border),transparent);
}
.hero-diamond{
  width:7px;height:7px;
  background:var(--gold);
  transform:rotate(45deg);
  flex-shrink:0;
}
.hero-tagline{
  font-family:'Cormorant Garamond',serif;
  font-style:italic;font-weight:300;
  font-size:clamp(22px,2.8vw,36px);
  background:linear-gradient(135deg,#9A7A2E,#C9A84C,#E8C96A);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  letter-spacing:.04em;
  margin-bottom:14px;
  opacity:0;
  animation:heroFadeUp 1s var(--ease-luxury) 0.6s both;
}
.hero-sub{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:17px;letter-spacing:.25em;text-transform:uppercase;
  /* --cream-muted (62% alpha) measured 3.21:1 over the hero footage,
     under the 4.5:1 floor for text this size. --cream-dim clears it. */
  color:var(--cream-dim);margin-bottom:44px;
  opacity:0;
  animation:heroFadeUp 1s var(--ease-luxury) 0.7s both;
}
.hero-ctas{
  display:flex;align-items:center;justify-content:center;gap:20px;
  flex-wrap:wrap;
  opacity:0;
  animation:heroFadeUp 1s var(--ease-luxury) 0.85s both;
}
.btn-gold{
  font-family:'Jost',sans-serif;font-weight:400;
  font-size:14px;letter-spacing:.22em;text-transform:uppercase;
  color:#000;
  background:linear-gradient(135deg,#9A7A2E,#C9A84C,#E8C96A);
  padding:19px 58px;
  border:none;cursor:pointer;
  transition:transform .5s var(--ease-spring),box-shadow .3s;
  position:relative;overflow:hidden;
}
.btn-gold:hover{
  box-shadow:0 14px 34px rgba(0,0,0,0.5);
}
.btn-ghost{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:14px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);
  background:transparent;
  padding:18px 58px;
  border:1px solid var(--gold-border);
  cursor:pointer;
  transition:transform .5s var(--ease-spring),border-color .3s,background .3s, box-shadow .3s;
}
.btn-ghost:hover{
  border-color:var(--gold);
  background:var(--gold-dim);
  box-shadow: 0 0 30px rgba(201,168,76,0.1);
}
.scroll-indicator{
  position:absolute;bottom:40px;left:50%;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:10px;
  z-index:3;
}
.scroll-line{
  width:1px;height:50px;
  background:linear-gradient(180deg,transparent,var(--gold),transparent);
  animation:scrollPulse 2s ease-in-out infinite;
}
.scroll-text{
  font-family:'Jost',sans-serif;font-weight:200;
  font-size:9px;letter-spacing:.3em;text-transform:uppercase;
  color:rgba(237,232,220,0.75);
}

/* MARQUEE */
#marquee-strip{
  padding:20px 0;
  border-top:1px solid var(--gold-border);
  border-bottom:1px solid var(--gold-border);
  background:linear-gradient(90deg,rgba(201,168,76,0.0),rgba(201,168,76,0.04) 30%,rgba(201,168,76,0.04) 70%,rgba(201,168,76,0.0));
  overflow:hidden;
  white-space:nowrap;
  position:relative;
}
#marquee-strip::before,#marquee-strip::after{
  content:'';position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none;
}
#marquee-strip::before{left:0;background:linear-gradient(90deg,var(--bg),transparent)}
#marquee-strip::after{right:0;background:linear-gradient(270deg,var(--bg),transparent)}
.marquee-inner{
  display:flex;
  width:max-content;
  animation:marquee 30s linear infinite;
}
.marquee-track{
  display:flex;
  flex-shrink:0;
  white-space:nowrap;
}
.marquee-track span{
  font-family:'Jost',sans-serif;font-weight:200;
  font-size:12px;letter-spacing:.28em;text-transform:uppercase;
  color:rgba(237,232,220,0.65);
  padding:0 20px;
}
.marquee-dot{
  display:flex;align-items:center;justify-content:center;
  width:4px;height:4px;
  background:var(--gold);
  border-radius:50%;
  margin:0 8px;
  opacity:.6;
  align-self:center;
}
.marquee-track {
  display:flex; align-items:center;
}

/* SERVICES */
#services{
  padding:140px 60px;
  max-width:1400px;margin:0 auto;
  text-align:center;
  position:relative;
}
.section-eyebrow{
  font-family:'Jost',sans-serif;font-weight:200;
  font-size:11px;letter-spacing:.35em;text-transform:uppercase;
  color:var(--gold);margin-bottom:16px;
  display:flex;align-items:center;gap:12px;
  justify-content:center;
}
.section-eyebrow::before,.section-eyebrow::after{
  content:'';display:block;width:40px;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-border));
}
.section-eyebrow::after{
  background:linear-gradient(90deg,var(--gold-border),transparent);
}
.section-num {
  font-family:'Jost',sans-serif; font-weight:200; font-size:10px;
  color:var(--gold); opacity:0.4; margin-bottom:10px;
  display:block;
}
.section-title{
  font-family:'Cormorant Garamond',serif;font-weight:300;
  font-size:clamp(44px,5.5vw,82px);
  text-align:center;color:var(--cream);
  margin-bottom:16px;letter-spacing:.04em;
  position:relative;display:block;
  width:100%;
  clip-path: inset(100% 0 0 0);
  transition: clip-path 1.2s var(--ease-out-expo);
}
.section-title.visible {
  clip-path: inset(0% 0 0 0);
}
.section-title::after{
  content:'';
  position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);
  width:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  transition:width 1s var(--ease-luxury) .4s;
}
.section-title.visible::after{width:60%}
.section-subtitle{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:17px;color:var(--cream-dim);
  text-align:center;margin-bottom:72px;
  letter-spacing:.04em;
}
.micro-label {
  font-family:'Jost',sans-serif; font-weight:400; font-size:9px;
  letter-spacing:0.45em; color:var(--gold); opacity:0.6;
  margin-top:-8px; margin-bottom:24px; text-transform:uppercase;
  display:flex; align-items:center; gap:10px; justify-content:center;
}
.micro-label::before, .micro-label::after {
  content:''; display:block; width:12px; height:1px; background:var(--gold); opacity:0.3;
}
.services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  align-items:stretch;
}
.tilt-card{
  perspective:1200px;
  height:100%;
  display:flex;
  flex-direction:column;
}
.tilt-card .card-inner{
  background:rgba(255,255,255,0.05);
  backdrop-filter:blur(24px) saturate(180%);
  -webkit-backdrop-filter:blur(24px) saturate(180%);
  border:1px solid rgba(255,255,255,0.1);
  border-top:1px solid rgba(255,255,255,0.2);
  border-left:1px solid rgba(255,255,255,0.2);
  box-shadow:0 15px 35px rgba(0,0,0,0.5);
  transition:all 0.5s var(--ease-luxury);
  border-radius: 8px;
}
.tilt-card:hover .card-inner{
  background:rgba(255,255,255,0.08);
  border-color:var(--gold-border);
  transform: translateY(-5px);
}
.card-inner{
  position:relative;overflow:hidden;
  padding:40px 36px 36px;
  transform:perspective(1200px) rotateX(0) rotateY(0) scale3d(1,1,1);
  flex:1;
}
.tilt-card.leave .card-inner{
  transition:transform .6s var(--ease-spring);
}
.card-shine{
  position:absolute;inset:0;pointer-events:none;z-index:1;
  border-radius:inherit;
}
.card-border-bottom{
  position:absolute;bottom:0;left:0;width:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  transition:width .5s var(--ease-luxury);
}
.card-inner:hover .card-border-bottom{width:100%}
.card-inner.card-has-img{
  padding:0;
  height:100%;
  display:flex;
  flex-direction:column;
}
.service-card-img{
  height:220px;
  flex-shrink:0;
  background-size:cover;background-position:center;
  position:relative;overflow:hidden;
  transition:transform .6s var(--ease-luxury);
}
.service-card-img::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(7,10,22,0.1) 0%,rgba(7,10,22,0.72) 100%);
  transition:background .4s;
}
.tilt-card:hover .service-card-img{transform:scale(1.05)}
.service-card-body{
  padding:22px 26px 26px;
  position:relative;z-index:2;
  text-align:left;
  flex:1;
  display:flex;
  flex-direction:column;
}
.service-hebrew{
  font-family:'Frank Ruhl Libre',serif;font-weight:400;
  font-size:12px;color:var(--gold);
  letter-spacing:.04em;margin-bottom:6px;
  direction:rtl;
}
.service-name{
  font-family:'Cormorant Garamond',serif;font-weight:400;
  font-size:25px;color:#ffffff;
  margin-bottom:10px;letter-spacing:.04em;
  position:relative;z-index:2;
}
.service-desc{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:15px;color:rgba(255,255,255,0.80);
  line-height:1.7;margin-bottom:18px;
  position:relative;z-index:2;
  flex:1;
}
.service-arrow{
  color:var(--gold);
  transform:translateX(-8px);opacity:0;
  transition:transform .4s var(--ease-luxury),opacity .4s;
  display:inline-flex;align-items:center;gap:6px;
  position:relative;z-index:2;
}
/* Inline SVG, so the size comes from CSS rather than a font metric. */
.service-arrow svg{width:16px;height:16px;display:block}
/* Mirrored as a pair: the arrow flips and the reveal slides in from the
   opposite edge, so the whole gesture reads the same way in Hebrew. */
[dir="rtl"] .service-arrow{transform:translateX(8px)}
[dir="rtl"] .service-arrow svg{transform:scaleX(-1)}
.service-arrow::after{
  content:'';display:inline-block;
  width:0;height:1px;background:var(--gold);
  transition:width .4s var(--ease-luxury) .05s;
}
.card-inner:hover .service-arrow{transform:translateX(0);opacity:1}
.card-inner:hover .service-arrow::after{width:24px}

/* FLEET */
#fleet{
  background:rgba(255,255,255,0.012);
  padding:140px 60px;
  border-top:1px solid var(--gold-border);
  border-bottom:1px solid var(--gold-border);
}
.fleet-inner{max-width:1400px;margin:0 auto;text-align:center}
.fleet-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.fleet-card .card-inner{
  padding:36px 30px 30px;
  text-align:left;
  transition:border-color .5s var(--ease-luxury),box-shadow .5s var(--ease-luxury),transform .5s var(--ease-luxury);
  overflow:hidden;
}
.fleet-card .card-inner::before{
  content:'';
  position:absolute;inset:0;
  background:linear-gradient(115deg,
    transparent 20%,
    rgba(201,168,76,0.07) 40%,
    rgba(232,201,106,0.12) 50%,
    rgba(201,168,76,0.07) 60%,
    transparent 80%);
  transform:translateX(-120%) skewX(-15deg);
  transition:transform 0s;
  pointer-events:none;z-index:1;
}
.fleet-card .card-inner:hover::before{
  transform:translateX(220%) skewX(-15deg);
  transition:transform 0.75s var(--ease-luxury);
}
.fleet-card .card-inner:hover{
  border-color:rgba(201,168,76,0.55);
  box-shadow:0 0 60px rgba(201,168,76,0.2),0 30px 80px rgba(0,0,0,0.6),inset 0 1px 0 rgba(201,168,76,0.15);
  transform:translateY(-6px);
}
.fleet-card .card-inner > *:not(::before){position:relative;z-index:2}
.fleet-img-wrap{
  height:180px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:28px;
  position:relative;
  transition:transform .5s var(--ease-luxury);
  overflow:hidden;
  border-radius:6px;
  background:rgba(201,168,76,0.05);
}
.fleet-img-wrap::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 60%,rgba(7,10,22,0.5) 100%);
}
.fleet-card .card-inner:hover .fleet-img-wrap{
  transform:translateY(-4px) scale(1.02);
}
.fleet-img{
  width:100%;height:100%;object-fit:cover;
  opacity:.85;transition:opacity .4s, transform .6s var(--ease-luxury);
}
.fleet-card .card-inner:hover .fleet-img{
  opacity:1;transform:scale(1.1);
}
.fleet-name-he{
  font-family:'Frank Ruhl Libre',serif;font-size:13px;
  color:rgba(201,168,76,0.75);letter-spacing:.02em;
  margin-bottom:4px;display:block;direction:rtl;text-align:right;
}
.fleet-name-en{
  font-family:'Cormorant Garamond',serif;font-weight:400;
  font-size:25px;color:#ffffff;letter-spacing:.04em;
  margin-bottom:10px;display:block;
}
.fleet-capacity{
  font-family:'Jost',sans-serif;font-size:12px;
  letter-spacing:.18em;text-transform:uppercase;
  color:rgba(201,168,76,0.75);margin-bottom:12px;
}
.fleet-capacity strong{color:var(--gold);font-weight:400}
.fleet-desc{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:14px;color:rgba(255,255,255,0.72);
  line-height:1.7;margin-bottom:20px;
}
.fleet-book{
  display:flex;align-items:center;gap:8px;
  padding-top:18px;
  border-top:1px solid rgba(201,168,76,0.2);
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:12px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--gold);transition:gap .3s var(--ease-luxury);
  text-decoration:none;
}
.fleet-book:hover{gap:14px}

/* STATS */
#stats{
  padding:120px 60px;
  max-width:1200px;margin:0 auto;
  text-align:center;
}
.stats-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  gap:0;
  border:1px solid var(--gold-border);
  position:relative;
}
.stats-grid::before{
  content:'';position:absolute;
  top:0;left:10%;right:10%;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  transform:translateY(-1px);
}
.stat-item{
  padding:60px 20px;text-align:center;
  border-right:1px solid var(--gold-border);
  opacity:0;
  transform:perspective(600px) rotateX(30deg) translateY(20px);
  transition:opacity .9s var(--ease-luxury),transform .9s var(--ease-luxury);
}
.stat-item.visible{
  opacity:1;
  transform:perspective(600px) rotateX(0deg) translateY(0);
}
.stat-item.visible .stat-number{
  animation:statFlip .7s var(--ease-luxury) .2s both;
}
@keyframes statFlip{
  0%{transform:perspective(400px) rotateX(60deg) scale(.85);opacity:0}
  60%{transform:perspective(400px) rotateX(-8deg) scale(1.04)}
  100%{transform:perspective(400px) rotateX(0deg) scale(1);opacity:1}
}
.stat-item:last-child{border-right:none}
.stat-number{
  font-family:'Cormorant Garamond',serif;font-weight:300;
  font-size:clamp(44px,5vw,72px);
  background:linear-gradient(135deg,#9A7A2E,#C9A84C,#E8C96A);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  line-height:1;margin-bottom:12px;
  display:block;
}
.stat-label{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:11px;letter-spacing:.22em;text-transform:uppercase;
  color:rgba(255,255,255,0.72);
}

/* TESTIMONIALS */
#testimonials{
  padding:140px 60px;
  background:rgba(255,255,255,0.012);
  border-top:1px solid var(--gold-border);
  overflow:hidden;
}
.testimonials-inner{max-width:1000px;margin:0 auto;text-align:center}
.testimonials-slider{
  position:relative;margin-top:72px;
}
.testimonials-track{
  display:flex;
  transition:transform .6s var(--ease-luxury);
  direction: ltr !important;
}
.testimonial-slide{
  min-width:100%;padding:0 4px;
}
.testimonial-card .card-inner{
  padding:52px 52px 40px;
  text-align:center;
}
.quote-mark{
  font-family:'Cormorant Garamond',serif;font-weight:300;
  font-size:100px;line-height:.7;color:var(--gold-dim);
  margin-bottom:12px;display:block;
  position:relative;z-index:2;
}
.testimonial-text{
  font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;
  font-size:clamp(20px,2.2vw,26px);
  color:var(--cream-dim);line-height:1.7;
  margin-bottom:28px;
  position:relative;z-index:2;
}
.testimonial-stars{
  display:flex;align-items:center;justify-content:center;
  gap:4px;margin-bottom:20px;
  position:relative;z-index:2;
}
.testimonial-stars svg{width:14px;height:14px;fill:var(--gold);stroke:none}
.testimonial-author{
  font-family:'Jost',sans-serif;font-weight:400;
  font-size:16px;letter-spacing:.1em;color:var(--cream);
  position:relative;z-index:2;
}
.testimonial-role{
  font-family:'Jost',sans-serif;font-weight:200;
  font-size:13px;letter-spacing:.15em;
  color:var(--cream-muted);margin-top:4px;
  position:relative;z-index:2;
}
.testimonials-controls{
  display:flex;align-items:center;justify-content:center;
  gap:20px;margin-top:36px;
}
.testimonials-btn{
  width:40px;height:40px;
  border:1px solid var(--gold-border);background:none;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:border-color .3s,background .3s;
  color:var(--gold);
}
.testimonials-btn:hover{border-color:var(--gold);background:var(--gold-dim)}
.testimonials-dots{display:flex;gap:8px;align-items:center}
.t-dot{
  width:24px;height:24px;border-radius:50%;
  background:transparent;
  display:grid;place-items:center;
  cursor:pointer;
}
.t-dot::before{
  content:'';display:block;
  width:4px;height:4px;border-radius:50%;
  background:var(--gold-border);
  transition:background .3s,width .3s;
}
.t-dot.active::before{width:20px;border-radius:2px;background:var(--gold)}

/* CONTACT */
#contact{
  padding:140px 60px;
  max-width:1300px;margin:0 auto;
  text-align:center;
}
.contact-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:80px;
  margin-top:72px;
  text-align:left;
}
.contact-info-items{margin-top:32px;display:flex;flex-direction:column;gap:24px}
.contact-item{
  display:flex;align-items:flex-start;gap:16px;
}
.contact-item-icon{
  width:38px;height:38px;flex-shrink:0;
  border:1px solid var(--gold-border);
  display:flex;align-items:center;justify-content:center;
  transition:border-color .4s,box-shadow .4s,background .4s;
}
.contact-item:hover .contact-item-icon{
  border-color:rgba(201,168,76,0.5);
  background:rgba(201,168,76,0.05);
  box-shadow:0 0 16px rgba(201,168,76,0.12);
}
.contact-item-icon svg{stroke:var(--gold);fill:none;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.contact-item-label{
  font-family:'Jost',sans-serif;font-weight:200;
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--cream-muted);margin-bottom:4px;
}
.contact-item-value{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:18px;color:var(--cream-dim);
}
.contact-form{display:flex;flex-direction:column;gap:32px}
.form-field{position:relative}
.form-field input,
.form-field select,
.form-field textarea{
  width:100%;
  background:rgba(255,255,255,0.03);
  border:none;border-bottom:1px solid rgba(201,168,76,0.25);
  color:var(--cream);
  font-family:'Jost',sans-serif;font-weight:300;font-size:16px;
  padding:22px 0 10px;
  outline:none;
  transition:border-color .3s;
  -webkit-appearance:none;
  appearance:none;
  border-radius:0;
}
.form-field select{cursor:pointer}
.form-field select option{background:#0a0a0a;color:var(--cream)}
.form-field textarea{resize:none;height:100px}
.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus{
  border-bottom-color:var(--gold);
  box-shadow:0 1px 0 var(--gold-border);
}
.form-label{
  position:absolute;top:16px;left:0;
  font-family:'Jost',sans-serif;font-weight:200;
  font-size:13px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--cream-muted);
  pointer-events:none;
  transition:top .3s var(--ease-luxury),font-size .3s,color .3s;
}
.form-field.focused .form-label,
.form-field.filled .form-label{
  top:0;font-size:11px;color:var(--gold);
}
.btn-submit{
  width:100%;
  font-family:'Jost',sans-serif;font-weight:400;
  font-size:13px;letter-spacing:.25em;text-transform:uppercase;
  color:#000;
  background:linear-gradient(135deg,#9A7A2E,#C9A84C,#E8C96A);
  border:none;padding:18px;cursor:pointer;
  transition:opacity .3s,transform .5s var(--ease-spring),box-shadow .3s;
}
.btn-submit:hover{
  opacity:.92;box-shadow:0 14px 34px rgba(0,0,0,0.5);
}
.form-success{
  display:none;text-align:center;padding:40px;
}
.form-success.show{display:block;animation:fadeIn .6s var(--ease-luxury)}
.form-success-title{
  font-family:'Cormorant Garamond',serif;font-weight:300;
  font-size:28px;color:var(--gold);margin-bottom:10px;
}
.form-success-text{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:13px;color:var(--cream-dim);
}

/* FOOTER */
footer{
  border-top:1px solid var(--gold-border);
  padding:80px 60px 40px;
  text-align:center;
}
.footer-logo-wrap{
  display:flex;align-items:center;justify-content:center;gap:20px;
  margin-bottom:12px;
}
.footer-logo-line{
  flex:1;max-width:200px;height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-border));
}
.footer-logo-line.right{
  background:linear-gradient(90deg,var(--gold-border),transparent);
}
.footer-logo-text{
  font-family:'Cormorant Garamond',serif;font-weight:300;
  font-size:24px;letter-spacing:.2em;color:var(--cream);
}
.footer-tagline{
  font-family:'Cormorant Garamond',serif;font-style:italic;font-weight:300;
  font-size:14px;color:var(--cream-muted);
  margin-bottom:60px;letter-spacing:.05em;
}
.footer-cols{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:40px;margin-bottom:60px;
  text-align:left;
}
.footer-col-title{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:9px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:20px;
}
.footer-col a,.footer-col p{
  font-family:'Jost',sans-serif;font-weight:200;
  font-size:12px;color:var(--cream-muted);
  display:block;margin-bottom:10px;letter-spacing:.04em;
  transition:color .3s;
}
.footer-col a:hover{color:var(--gold)}
.footer-copyright{
  border-top:1px solid rgba(201,168,76,0.1);
  padding-top:28px;
  font-family:'Jost',sans-serif;font-weight:200;
  font-size:10px;letter-spacing:.15em;
  color:rgba(237,232,220,0.55);
}

/* ACCESSIBILITY WIDGET */
#a11y-btn{
  position:fixed;bottom:100px;left:36px;z-index:600;
  width:52px;height:52px;
  background:linear-gradient(135deg,#9A7A2E,#C9A84C);
  border-radius:50%;border:none;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  box-shadow:0 4px 20px rgba(201,168,76,0.35);
  transition:transform .3s,box-shadow .3s;
}
#a11y-btn:hover{transform:scale(1.1);box-shadow:0 6px 28px rgba(201,168,76,0.5)}
#a11y-btn svg{fill:#000;width:28px;height:28px}
#a11y-panel{
  position:fixed;bottom:162px;left:36px;z-index:600;
  width:240px;
  background:rgba(8,8,12,0.97);
  border:1px solid rgba(201,168,76,0.3);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  padding:20px 18px 16px;
  transform:translateY(12px);
  opacity:0;pointer-events:none;
  transition:opacity .3s var(--ease-luxury),transform .3s var(--ease-luxury);
  box-shadow:0 20px 60px rgba(0,0,0,0.7);
}
#a11y-panel.open{opacity:1;pointer-events:all;transform:translateY(0)}
.a11y-panel-title{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:100px; /* actually small in layout, check widget logic */
  font-size:10px;letter-spacing:.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:16px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(201,168,76,0.2);
  display:flex;align-items:center;gap:8px;
}
.a11y-row{
  display:flex;align-items:center;justify-content:space-between;
  padding:9px 0;
  border-bottom:1px solid rgba(255,255,255,0.05);
}
.a11y-row:last-child{border-bottom:none}
.a11y-label{
  font-family:'Jost',sans-serif;font-weight:300;
  font-size:12px;color:var(--cream-dim);
  display:flex;align-items:center;gap:8px;
}
.a11y-label svg{stroke:var(--gold);fill:none;width:14px;height:14px;flex-shrink:0}
.a11y-toggle{
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  color:var(--cream-muted);
  font-family:'Jost',sans-serif;font-size:11px;
  padding:3px 10px;cursor:pointer;
  transition:background .2s,border-color .2s,color .2s;
  border-radius:0;
}
.a11y-toggle:hover,.a11y-toggle.active{
  background:rgba(201,168,76,0.15);
  border-color:var(--gold);
  color:var(--gold);
}
.a11y-size-row{
  display:flex;align-items:center;justify-content:space-between;
  padding:9px 0;
  border-bottom:1px solid rgba(255,255,255,0.05);
}
.a11y-size-btns{display:flex;gap:6px}
.a11y-size-btn{
  width:28px;height:28px;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.12);
  color:var(--cream-dim);
  font-family:'Jost',sans-serif;font-size:14px;font-weight:300;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background .2s,border-color .2s,color .2s;
}
/* Icons are inline SVG stroked with currentColor, so they follow the
   button's colour on hover and under a11y-high-contrast without a
   second rule. The button's font-size no longer sets the glyph size. */
.a11y-size-btn svg{width:15px;height:15px;display:block}
.a11y-size-btn:hover{background:rgba(201,168,76,0.15);border-color:var(--gold);color:var(--gold)}
.a11y-reset{
  width:100%;margin-top:14px;
  background:none;border:1px solid rgba(201,168,76,0.25);
  color:var(--cream-muted);
  font-family:'Jost',sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  padding:8px;cursor:pointer;
  transition:border-color .2s,color .2s;
}
.a11y-reset:hover{border-color:var(--gold);color:var(--gold)}
/* Accessibility modes applied to <html> */
html.a11y-high-contrast{filter:contrast(1.6) brightness(1.1)}
html.a11y-grayscale{filter:grayscale(1)}
html.a11y-high-contrast.a11y-grayscale{filter:grayscale(1) contrast(1.6) brightness(1.1)}
html.a11y-underline-links a{text-decoration:underline!important}
html.a11y-readable-font,html.a11y-readable-font *{font-family:'Arial',sans-serif!important;letter-spacing:.02em!important}
html.a11y-stop-animations *{animation:none!important;transition:none!important}
html.a11y-big-cursor,html.a11y-big-cursor *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24'%3E%3Cpath fill='%23C9A84C' d='M4 0l16 12-7 1-4 8z'/%3E%3C/svg%3E") 0 0,auto!important}

/* WHATSAPP */
#whatsapp-btn{
  position:fixed;bottom:36px;left:36px;z-index:500;
  width:52px;height:52px;
  background:linear-gradient(135deg,#9A7A2E,#C9A84C);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;
  box-shadow:0 4px 20px rgba(201,168,76,0.3);
  animation:pulseSlow 3s ease-in-out infinite;
  transition:transform .3s;
}
#whatsapp-btn:hover{transform:scale(1.1)}
#whatsapp-btn svg{fill:#000;width:26px;height:26px}

/* SCROLL REVEAL */
.reveal{
  opacity:0;
  transform:translateY(36px);
  clip-path:inset(0 0 18% 0);
  transition:opacity 1.1s var(--ease-luxury),transform 1.1s var(--ease-luxury),clip-path 1.1s var(--ease-luxury);
}
.reveal.visible{
  opacity:1;
  transform:translateY(0);
  clip-path:inset(0 0 0% 0);
}
/* Stagger grid children */
.services-grid .tilt-card:nth-child(1){transition-delay:.08s}
.services-grid .tilt-card:nth-child(2){transition-delay:.18s}
.services-grid .tilt-card:nth-child(3){transition-delay:.28s}
.services-grid .tilt-card:nth-child(4){transition-delay:.38s}
.services-grid .tilt-card:nth-child(5){transition-delay:.48s}
.services-grid .tilt-card:nth-child(6){transition-delay:.58s}
.fleet-grid .tilt-card:nth-child(1){transition-delay:.06s}
.fleet-grid .tilt-card:nth-child(2){transition-delay:.14s}
.fleet-grid .tilt-card:nth-child(3){transition-delay:.22s}
.fleet-grid .tilt-card:nth-child(4){transition-delay:.30s}
.fleet-grid .tilt-card:nth-child(5){transition-delay:.38s}
.fleet-grid .tilt-card:nth-child(6){transition-delay:.46s}

/* KEYFRAMES */
@keyframes shimmer{
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
@keyframes marquee{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}
@keyframes scrollPulse{
  0%,100%{opacity:.3;transform:scaleY(1)}
  50%{opacity:.9;transform:scaleY(1.2)}
}
@keyframes fadeIn{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes pulseSlow{
  0%,100%{box-shadow:0 4px 20px rgba(201,168,76,0.3),0 0 0 0 rgba(201,168,76,0.3)}
  50%{box-shadow:0 4px 20px rgba(201,168,76,0.4),0 0 0 14px rgba(201,168,76,0)}
}

/* LANGUAGE TOGGLE */
.lang-btn{
  font-family:'Jost',sans-serif;font-weight:400;
  font-size:11px;letter-spacing:.15em;
  color:var(--gold);background:transparent;
  border:1px solid var(--gold-border);
  padding:6px 14px;cursor:pointer;
  transition:background .3s,border-color .3s;
  flex-shrink:0;
}
.lang-btn:hover{background:var(--gold-dim);border-color:var(--gold)}
/* Hide .t-he spans by default (English mode) */
.t-he{display:none!important}
.service-hebrew,.fleet-name-he{display:none!important}
/* Hebrew mode swap */
html.lang-he .t-en{display:none!important}
html.lang-he .t-he{display:inline-block!important}
html.lang-he .t-he.block{display:block!important}
html.lang-he .service-hebrew{display:block!important}
html.lang-he .fleet-name-he{display:block!important;text-align:right}
html.lang-he .testimonial-text, html.lang-he .testimonial-author, html.lang-he .testimonial-role {
  direction: rtl;
}
html.lang-he #mobile-menu a,html.lang-he .nav-links a{letter-spacing:.04em}
html.lang-he .section-title,
html.lang-he .section-subtitle,
html.lang-he .section-eyebrow{text-align:center!important}
html.lang-he .hero-ctas{direction:rtl; justify-content:center;}
html.lang-he .contact-grid{direction:rtl}
html.lang-he .footer-cols{direction:rtl;text-align:right}
html.lang-he .service-card-body{
  direction:rtl;
  text-align:right;
}
/* .service-arrow used to be pinned direction:ltr because the → text glyph
   and its trailing rule reordered badly under RTL. It is an inline SVG
   now: the row inherits rtl so the rule lays out on the arrow's left, and
   [dir="rtl"] .service-arrow svg flips the head to point the same way the
   text runs. Forcing ltr here would undo that mirror. */

/* ════════════════════════════════════════════════════════════════
   BEN GURION VIP MEET & GREET
════════════════════════════════════════════════════════════════ */
#airport{padding:120px 60px;max-width:1340px;margin:0 auto;position:relative;overflow:hidden}
#airport>.section-num,#airport>.section-eyebrow,#airport>.section-title,#airport>.section-subtitle{text-align:center}
.bgv-steps{display:flex;flex-direction:column;margin:64px 0;border:1px solid var(--gold-border)}
.bgv-step{display:grid;grid-template-columns:100px 1fr;border-bottom:1px solid var(--gold-border);transition:background .35s}
.bgv-step:last-child{border-bottom:none}
.bgv-step:hover{background:rgba(201,168,76,0.025)}
.bgv-step-num{display:flex;align-items:center;justify-content:center;padding:32px 0;font-family:'Cormorant Garamond',serif;font-size:44px;font-weight:300;color:var(--gold);opacity:.35;border-right:1px solid var(--gold-border);letter-spacing:.05em}
.bgv-step-content{padding:28px 40px}
.bgv-step-content h3{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:400;letter-spacing:.04em;color:var(--cream);margin-bottom:9px}
.bgv-step-content p{font-family:'Jost',sans-serif;font-weight:300;font-size:14px;line-height:1.8;color:var(--cream-muted)}
.bgv-cta{text-align:center;margin-top:56px;display:flex;flex-direction:column;align-items:center;gap:18px}
.bgv-note{font-family:'Jost',sans-serif;font-weight:200;font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:var(--cream-muted);opacity:.65}

/* ════════════════════════════════════════════════════════════════
   EXECUTIVE FLEET SPECS
════════════════════════════════════════════════════════════════ */
.fleet-vehicle-model{font-family:'Jost',sans-serif;font-size:10px;font-weight:300;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);opacity:.8;margin-top:2px;margin-bottom:8px;display:block}
.fleet-specs{list-style:none;margin-top:14px;padding-top:14px;border-top:1px solid rgba(201,168,76,0.1);display:flex;flex-direction:column;gap:5px}
.fleet-spec{display:flex;align-items:flex-start;gap:8px;font-family:'Jost',sans-serif;font-size:12px;font-weight:300;color:var(--cream-muted);line-height:1.5}
.fleet-spec::before{content:'◈';color:var(--gold);font-size:8px;opacity:.55;margin-top:3px;flex-shrink:0}

/* ════════════════════════════════════════════════════════════════
   CORPORATE & DIPLOMATIC SERVICES
════════════════════════════════════════════════════════════════ */
#corporate{padding:120px 60px;max-width:1340px;margin:0 auto;text-align:center}
.corp-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:64px;border:1px solid var(--gold-border)}
.corp-feature{padding:44px 36px;background:var(--bg-card);border-right:1px solid var(--gold-border);text-align:left;transition:background .35s;position:relative;overflow:hidden}
.corp-feature:last-child{border-right:none}
.corp-feature:hover{background:rgba(201,168,76,0.03)}
.corp-feature::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--gold),var(--gold-bright));transition:width .55s var(--ease-luxury)}
.corp-feature:hover::after{width:100%}
.corp-feature-icon{width:32px;height:32px;margin-bottom:20px;color:var(--gold);opacity:.65}
.corp-feature h3{font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:400;letter-spacing:.04em;color:var(--cream);margin-bottom:11px}
.corp-feature p{font-family:'Jost',sans-serif;font-size:14px;font-weight:300;line-height:1.78;color:var(--cream-muted)}
.corp-bottom{margin-top:56px;display:flex;flex-direction:column;align-items:center;gap:18px}
.corp-note{font-family:'Jost',sans-serif;font-weight:200;font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:var(--cream-muted);opacity:.65}

/* ════════════════════════════════════════════════════════════════
   TRUST & AUTHORITY SIGNALS
════════════════════════════════════════════════════════════════ */
#trust{padding:100px 60px;max-width:1340px;margin:0 auto;text-align:center;border-top:1px solid var(--gold-border)}
.trust-founded{display:inline-flex;align-items:center;gap:32px;padding:18px 52px;border:1px solid var(--gold-border);background:var(--bg-card);margin-bottom:68px}
.trust-founded-year{font-family:'Cormorant Garamond',serif;font-size:72px;font-weight:300;color:var(--gold);line-height:1;letter-spacing:.05em;background:linear-gradient(135deg,#9A7A2E,#C9A84C,#E8C96A,#C9A84C,#9A7A2E);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s ease-in-out infinite}
.trust-founded-text{text-align:left}
.trust-founded-text strong{display:block;font-family:'Jost',sans-serif;font-size:10px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--cream);margin-bottom:5px}
.trust-founded-text span{font-family:'Jost',sans-serif;font-size:13px;font-weight:300;color:var(--cream-muted)}
/* trust-logos-block, trust-logos-label, trust-logos-row, logo-ph
   → defined in FAN FLEET / TRUST PLAQUES block further below */

/* ════════════════════════════════════════════════════════════════
   FAQ SECTION
════════════════════════════════════════════════════════════════ */
#faq{padding:120px 60px;max-width:900px;margin:0 auto;text-align:center}
.faq-list{margin-top:56px;text-align:left}
.faq-item{border-bottom:1px solid var(--gold-border)}
.faq-item:first-child{border-top:1px solid var(--gold-border)}
.faq-btn{width:100%;background:none;border:none;color:var(--cream);font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:400;letter-spacing:.03em;padding:24px 0;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;transition:color .3s;line-height:1.4}
.faq-btn:hover{color:var(--gold)}
.faq-icon{width:22px;height:22px;flex-shrink:0;border:1px solid var(--gold-border);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .35s var(--ease-luxury);position:relative}
.faq-icon::before,.faq-icon::after{content:'';position:absolute;background:var(--gold);border-radius:1px;transition:transform .35s var(--ease-luxury)}
.faq-icon::before{width:10px;height:1px}
.faq-icon::after{width:1px;height:10px}
.faq-item.faq-open .faq-icon{border-color:var(--gold);background:var(--gold-dim)}
.faq-item.faq-open .faq-icon::after{transform:rotate(90deg)}
.faq-answer{overflow:hidden;max-height:0;transition:max-height .45s var(--ease-luxury),padding-bottom .45s var(--ease-luxury);padding-bottom:0}
.faq-item.faq-open .faq-answer{max-height:300px;padding-bottom:26px}
.faq-answer p{font-family:'Jost',sans-serif;font-size:15px;font-weight:300;line-height:1.85;color:var(--cream-muted)}
.faq-answer strong{color:var(--gold);font-weight:400}

/* ════════════════════════════════════════════════════════════════
   FOOTER SERVICE AREA
════════════════════════════════════════════════════════════════ */
.footer-service-list{list-style:none;margin-top:2px;display:flex;flex-direction:column;gap:4px}
.footer-service-list li{font-family:'Jost',sans-serif;font-size:12px;font-weight:300;color:var(--cream-muted)}

/* fleet styles are in the EXECUTIVE FLEET (fgv2) block below */


/* ════════════════════════════════════════════════════════════════
   TRUST PLAQUES — Complete glassmorphism redesign
════════════════════════════════════════════════════════════════ */
@keyframes plaqueSweep{
  0%,70%{background-position:200% 0}
  80%,90%{background-position:-60% 0}
  100%{background-position:200% 0}
}
.trust-logos-block{margin-bottom:56px}
.trust-logos-label{
  font-family:'Jost',sans-serif;font-weight:400;font-size:9px;
  letter-spacing:.52em;text-transform:uppercase;
  background:linear-gradient(90deg,#9A7A2E,#D4AF37,#FFD700,#D4AF37,#9A7A2E);
  background-size:200% auto;
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;
  background-clip:text;
  animation:shimmer 5s ease-in-out infinite;
  margin-bottom:28px;display:block}
.trust-logos-row{display:flex;align-items:stretch;justify-content:center;gap:12px;flex-wrap:wrap}

/* Glassmorphism plaque — darker glass, whisper-gold border */
.logo-ph{
  position:relative;overflow:hidden;
  min-width:140px;padding:18px 26px;
  display:flex;align-items:center;justify-content:center;
  /* Darker glass for better contrast */
  background:rgba(12,16,32,0.72);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid transparent;
  background-clip:padding-box;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.06),
    inset 0 -1px 0 rgba(0,0,0,0.4),
    0 4px 20px rgba(0,0,0,0.55),
    0 0 0 1px rgba(212,175,55,0.18);
  border-radius:3px;
  transform-style:preserve-3d;
  transform:perspective(600px) rotateX(0deg) rotateY(0deg);
  transition:transform .35s ease,box-shadow .35s ease;
  cursor:default;
  text-align:center;
}
/* Auto-sweep metallic sheen — thin white/gold, once every 8s */
.logo-ph::before{
  content:'';position:absolute;inset:0;pointer-events:none;z-index:1;
  background:linear-gradient(110deg,
    transparent 20%,
    rgba(255,255,255,0.03) 38%,
    rgba(255,255,255,0.07) 50%,
    rgba(255,255,255,0.03) 62%,
    transparent 80%);
  background-size:400% 100%;background-position:200% 0;
  animation:plaqueSweep 8s ease-in-out infinite}
/* Stagger sweeps — offset across the 8s cycle */
.trust-logos-row .logo-ph:nth-child(2)::before{animation-delay:1.6s}
.trust-logos-row .logo-ph:nth-child(3)::before{animation-delay:3.2s}
.trust-logos-row .logo-ph:nth-child(4)::before{animation-delay:4.8s}
.trust-logos-row .logo-ph:nth-child(5)::before{animation-delay:6.4s}
/* Top bevel highlight */
.logo-ph::after{
  content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(140deg,rgba(255,255,255,0.07) 0%,transparent 40%,rgba(0,0,0,0.08) 100%);
}
/* Gold text — high contrast */
.logo-ph span{
  position:relative;z-index:2;
  font-family:'Jost',sans-serif;font-size:8.5px;font-weight:500;
  letter-spacing:.26em;text-transform:uppercase;
  color:#FFD700;
  text-shadow:0 1px 6px rgba(0,0,0,0.9),0 0 12px rgba(212,175,55,0.2);
  line-height:1.4}
/* Hover — restrained gold accent */
.logo-ph:hover{
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.08),
    inset 0 -1px 0 rgba(0,0,0,0.4),
    0 6px 28px rgba(0,0,0,0.6),
    0 0 0 1px rgba(212,175,55,0.32),
    0 0 14px rgba(212,175,55,0.08);
  background:rgba(14,14,20,0.80);
}
/* IO-triggered entrance — subtle lift, not a spotlight */
.logo-ph.plaque-glow{
  animation:plaqueGlow .6s ease forwards}
@keyframes plaqueGlow{
  0%{box-shadow:0 4px 20px rgba(0,0,0,0.55),0 0 0 1px rgba(212,175,55,0.18),0 0 0 rgba(212,175,55,0)}
  60%{box-shadow:0 6px 28px rgba(0,0,0,0.65),0 0 0 1px rgba(212,175,55,0.38),0 0 18px rgba(212,175,55,0.10)}
  100%{box-shadow:0 5px 22px rgba(0,0,0,0.58),0 0 0 1px rgba(212,175,55,0.24),0 0 10px rgba(212,175,55,0.06)}}

/* ── FLEET GRID v2 (fgv2) — authoritative exterior grid ─────────── */
#fleet{padding:100px 40px 120px;text-align:center}
@media(max-width:900px){
  .fgv2-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:48px}
}
@media(max-width:768px){
  /* ── Fleet: horizontal swipe carousel on mobile ── */
  .fgv2-grid{
    display:flex!important;
    grid-template-columns:unset;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    gap:30px;
    padding:0 24px 20px;
    margin:40px -24px 0;
    scrollbar-width:none;
    -ms-overflow-style:none;
    -webkit-overflow-scrolling:touch}
  .fgv2-grid::-webkit-scrollbar{display:none}
  .fgv2-card{
    min-width:260px;
    flex:0 0 260px;
    scroll-snap-align:start}
  .fgv2-body{padding:16px 18px 20px}
  .fgv2-desc{font-size:.8rem}
  .fgv2-specs li{font-size:.72rem}
}
.fgv2-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
  max-width:1300px;
  margin:64px auto 0;
  text-align:left}
.fgv2-card{
  background:rgba(255,255,255,0.03);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(201,168,76,0.18);
  border-radius:4px;
  overflow:hidden;
  transition:transform .35s var(--ease-out-expo),box-shadow .35s ease,border-color .35s ease}
.fgv2-card:hover{
  transform:translateY(-6px);
  border-color:rgba(201,168,76,0.38);
  box-shadow:0 16px 48px rgba(0,0,0,0.5),0 0 24px rgba(201,168,76,0.08)}
.fgv2-img-wrap{
  position:relative;
  overflow:hidden;
  aspect-ratio:16/9}
.fgv2-img{
  width:100%;height:100%;
  object-fit:cover;
  display:block;
  transition:transform .6s var(--ease-out-expo)}
.fgv2-card:hover .fgv2-img{transform:scale(1.04)}
.fgv2-img-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to bottom,transparent 50%,rgba(7,11,24,0.85));
  pointer-events:none}
.fgv2-body{
  padding:20px 22px 24px}
.fgv2-model{
  display:block;
  font-family:var(--font-display);
  font-size:.62rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:6px}
.fgv2-name{
  font-family:var(--font-display);
  font-size:1.25rem;
  font-weight:400;
  letter-spacing:.06em;
  color:#fff;
  margin:0 0 8px}
.fgv2-pax{
  display:inline-block;
  font-size:.72rem;
  letter-spacing:.1em;
  color:rgba(201,168,76,0.75);
  border:1px solid rgba(201,168,76,0.2);
  padding:3px 10px;
  border-radius:2px;
  margin-bottom:12px}
.fgv2-desc{
  font-size:.82rem;
  line-height:1.65;
  color:rgba(255,255,255,0.62);
  margin:0 0 14px}
.fgv2-specs{
  list-style:none;
  padding:0;margin:0 0 20px;
  display:flex;flex-direction:column;gap:5px}
.fgv2-specs li{
  font-size:.75rem;
  color:rgba(255,255,255,0.72);
  font-weight:400;
  padding-left:14px;
  position:relative}
.fgv2-specs li::before{
  content:'·';
  position:absolute;left:0;
  color:var(--gold);
  font-size:1rem;
  line-height:1}
.fgv2-cta{
  display:inline-block;
  padding:9px 22px;
  font-family:var(--font-display);
  font-size:.7rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  text-decoration:none;
  color:#050508;
  background:linear-gradient(110deg,#9A7A2E 0%,#C9A84C 30%,#E8C96A 50%,#C9A84C 70%,#9A7A2E 100%);
  background-size:220% auto;
  border-radius:2px;
  transition:background-position .5s ease,box-shadow .3s ease}
.fgv2-cta:hover{
  background-position:right center;
  box-shadow:0 4px 20px rgba(201,168,76,0.3)}

/* ── NOTCH CARD — signature component ──────────────────────────────
   Corner is bitten out with a radial mask (works over photos, unlike
   a pseudo-element overlay). Notch sits top-left in LTR and mirrors to
   top-right in RTL. The badge is a sibling, not a child, so the mask
   does not erase it. */
.ncard{position:relative}
.ncard-surface{
  --notch-r:44px;
  --notch-x:0;
  position:relative;
  background:var(--ink-2);
  border-radius:20px;
  overflow:hidden;
  -webkit-mask:radial-gradient(circle var(--notch-r) at var(--notch-x) 0,transparent 99%,#000 100%);
          mask:radial-gradient(circle var(--notch-r) at var(--notch-x) 0,transparent 99%,#000 100%);
}
[dir="rtl"] .ncard-surface{--notch-x:100%}

.ncard-badge{
  position:absolute;top:0;left:0;
  width:64px;height:64px;
  display:grid;place-items:center;
  border:1px solid var(--gold-border);
  border-radius:50%;
  background:var(--ink);
  /* Serif numerals — the reference uses sans here */
  font-family:var(--font-serif);
  font-size:20px;letter-spacing:.04em;
  color:var(--gold);
  transition:border-color .4s var(--ease-luxury),color .4s var(--ease-luxury);
}
[dir="rtl"] .ncard-badge{left:auto;right:0}
.ncard:hover .ncard-badge{border-color:var(--gold);color:var(--gold-bright)}

html.lang-he .ncard-badge{font-family:var(--font-hebrew)}

/* ── PILL BUTTONS ─────────────────────────────────────────────────
   Replaces the old sharp rectangles. Arrow mirrors under RTL. */
.btn-pill,.btn-pill-ghost{
  display:inline-flex;align-items:center;gap:10px;
  padding:17px 34px;border-radius:999px;
  font-family:var(--font-display);
  font-size:14px;font-weight:500;letter-spacing:.08em;
  transition:background .35s var(--ease-luxury),color .35s var(--ease-luxury),
             border-color .35s var(--ease-luxury);
}
.btn-pill{background:var(--gold);color:var(--ink);border:1px solid var(--gold)}
.btn-pill:hover{background:var(--gold-bright);border-color:var(--gold-bright)}
.btn-pill-ghost{background:transparent;color:var(--cream);border:1px solid var(--gold-border)}
.btn-pill-ghost:hover{border-color:var(--gold);color:var(--gold-bright)}

/* The arrow is an inline SVG stroked with currentColor, so it inherits the
   pill's colour flip on hover for free and needs no second hover rule.
   The transform stays on the .arw wrapper, not the <svg>, so the RTL
   mirror and the hover nudge compose in one place as before. Under
   scaleX(-1) the subsequent translate resolves in the flipped axis, so
   translate(3px,-3px) still reads as "outward and up" in Hebrew. */
.btn-pill .arw,.btn-pill-ghost .arw{
  display:inline-flex;align-items:center;
  transition:transform .35s var(--ease-luxury);
}
.btn-pill .arw svg,.btn-pill-ghost .arw svg{width:15px;height:15px;display:block}
.btn-pill:hover .arw,.btn-pill-ghost:hover .arw{transform:translate(3px,-3px)}
[dir="rtl"] .btn-pill .arw,[dir="rtl"] .btn-pill-ghost .arw{transform:scaleX(-1)}
[dir="rtl"] .btn-pill:hover .arw,[dir="rtl"] .btn-pill-ghost:hover .arw{
  transform:scaleX(-1) translate(3px,-3px)}

/* ── SECTION HEAD + RHYTHM ────────────────────────────────────────── */
.section-head{text-align:center;margin-bottom:64px}
.eyebrow{
  display:block;
  font-family:var(--font-display);
  font-size:11px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;
  color:var(--gold);margin-bottom:18px;
}
html.lang-he .eyebrow{letter-spacing:.08em;text-transform:none}

.section-head h2{
  font-family:var(--font-display);
  font-size:clamp(32px,4vw,48px);font-weight:700;letter-spacing:-.01em;
  color:var(--cream);line-height:1.15;
}
/* Two-tone heading: emphasis word in gold, no italic */
.section-head h2 em{color:var(--gold);font-style:normal;font-weight:inherit}

.rule-vr{
  width:1px;height:50px;margin:0 auto;
  background:linear-gradient(180deg,transparent,var(--gold-border),transparent);
}

@media (prefers-reduced-motion: reduce){
  .btn-pill .arw,.btn-pill-ghost .arw,.ncard-badge{transition:none!important}
}

/* RESPONSIVE */
@media(max-width:1024px){
  .services-grid{grid-template-columns:repeat(2,1fr)}
  .fleet-grid{grid-template-columns:repeat(2,1fr)}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .stat-item:nth-child(2){border-right:none}
  .stat-item:nth-child(3){border-right:1px solid var(--gold-border)}
  .stat-item:nth-child(3),.stat-item:nth-child(4){border-top:1px solid var(--gold-border)}
  .footer-cols{grid-template-columns:1fr 1fr 1fr}
  .corp-grid{grid-template-columns:repeat(2,1fr)}
  .corp-feature:nth-child(2){border-right:none}
  .corp-feature:nth-child(3){border-top:1px solid var(--gold-border);border-right:none;grid-column:span 2}
  .corp-feature{padding:32px 24px}
  .trust-founded{padding:16px 32px;gap:20px}
}
@media(max-width:768px){
  #navbar{padding:0 24px;min-height:60px}
  #navbar.scrolled{min-height:56px}
  .nav-links{display:none}
  .nav-phone{display:none}
  #hamburger{display:flex}
  #menu-close{right:16px}
  html[dir="rtl"] #menu-close{right:auto;left:16px}
  #services,#fleet,#testimonials,#contact,#stats,#airport,#corporate,#trust,#faq,footer{padding-left:24px;padding-right:24px}
  .services-grid{grid-template-columns:1fr}
  .fleet-grid{grid-template-columns:1fr;display:grid;gap:16px}
  .fleet-card{min-width:unset}
  .stats-grid{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr;gap:48px}
  .footer-cols{grid-template-columns:1fr}
  .corp-grid{grid-template-columns:1fr}
  .corp-feature{padding:28px 20px;border-right:none;border-bottom:1px solid var(--gold-border)}
  .corp-feature:nth-child(3){grid-column:auto;border-top:none}
  .corp-feature:last-child{border-bottom:none}
  .bgv-step{grid-template-columns:60px 1fr}
  .bgv-step-num{font-size:32px}
  .bgv-step-content{padding:24px 20px}
  .trust-founded{flex-direction:column;gap:12px;padding:24px 32px}
  .trust-founded-year{font-size:56px}
  /* Trust section — mobile elegance audit */
  #trust{padding-top:72px;padding-bottom:80px}
  .trust-logos-label{
    font-size:11px;       /* +25% from 9px */
    letter-spacing:.10em;
    margin-bottom:32px;
  }
  .trust-logos-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .logo-ph{
    min-width:unset;
    width:100%;
    padding:16px 10px;
  }
  .faq-btn{font-size:17px}
  .hero-ctas{flex-direction:column;align-items:center}
  .hero-title{letter-spacing:.1em}
}
@media(max-width:480px){
  .testimonial-card .card-inner{padding:36px 24px 28px}
  .stats-grid{grid-template-columns:1fr 1fr}
}


/* ══════════════════════════════════════════════════════════════
   FLEET MOBILE CAROUSEL — Discovery UX
══════════════════════════════════════════════════════════════ */

/* ── Mobile nav bar (dots + arrows) — hidden on desktop ── */
.fgv2-mobile-nav{display:none}

/* ── Keyframes ── */
@keyframes fgv2Pulse{
  0%,100%{opacity:.55;transform:scale(1)}
  50%{opacity:1;transform:scale(1.18)}}
@keyframes fgv2Bounce{
  0%{transform:translateX(0)}
  30%{transform:translateX(-22px)}
  60%{transform:translateX(6px)}
  80%{transform:translateX(-8px)}
  100%{transform:translateX(0)}}
@keyframes fgv2DotGlow{
  0%,100%{box-shadow:0 0 0 0 rgba(201,168,76,0)}
  50%{box-shadow:0 0 10px 3px rgba(201,168,76,0.45)}}

@media(max-width:768px){
  /* ── Wrapper: relative so floating arrows can position inside ── */
  #fleet .fleet-inner{position:relative}

  /* ── Task 1: Partial Peek ── */
  /* Card sized so ~15% of the next card peeks on the right edge */
  .fgv2-card{flex:0 0 calc(75vw);min-width:unset}

  /* ── Task 2: Pagination dots ── */
  .fgv2-mobile-nav{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    margin-top:20px}
  .fgv2-dots{
    display:flex;
    align-items:center;
    gap:8px}
  .fgv2-dot{
    width:7px;height:7px;
    border-radius:50%;
    border:1px solid rgba(201,168,76,0.45);
    background:transparent;
    padding:0;cursor:pointer;
    transition:background .3s ease,border-color .3s ease,box-shadow .3s ease,transform .3s var(--ease-spring)}
  .fgv2-dot.fgv2-dot--active{
    background:var(--gold);
    border-color:var(--gold);
    transform:scale(1.45);
    box-shadow:0 0 8px 2px rgba(201,168,76,0.5);
    animation:fgv2DotGlow 2s ease-in-out infinite}

  /* ── Task 3: Ghost arrow buttons ── */
  .fgv2-arrow{
    display:flex;
    align-items:center;
    justify-content:center;
    width:34px;height:34px;
    border-radius:50%;
    border:1px solid rgba(201,168,76,0.28);
    background:rgba(7,11,24,0.55);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    color:var(--gold);
    cursor:pointer;
    transition:border-color .3s ease,background .3s ease,opacity .3s ease;
    flex-shrink:0}
  .fgv2-arrow:hover{
    border-color:rgba(201,168,76,0.7);
    background:rgba(7,11,24,0.8)}
  .fgv2-arrow.fgv2-arrow--hidden{
    opacity:.2;
    pointer-events:none}

  /* Pulsate once on section entry — class added by JS */
  .fgv2-arrow.fgv2-pulse{
    animation:fgv2Pulse 0.7s ease-in-out 2}

  /* ── Task 4: First-swipe bounce — class added by JS once ── */
  .fgv2-grid.fgv2-bounce{
    animation:fgv2Bounce 0.65s cubic-bezier(0.25,0.46,0.45,0.94) forwards}
}

/* ══════════════════════════════════════════════════════════════
   MOBILE-FIRST REFINEMENTS — VIP Quality Pass
══════════════════════════════════════════════════════════════ */

/* ── Task 2: Global mobile typography & spacing ── */
@media(max-width:768px){

  /* Typography: tighten font sizes for clean editorial look */
  .section-title{font-size:clamp(32px,9vw,60px)!important}
  .section-subtitle{font-size:14px;margin-bottom:48px}
  .hero-title{font-size:clamp(42px,12vw,80px)!important}
  .hero-tagline{font-size:clamp(18px,5vw,28px)}
  /* At 375px the sub ran the full width edge to edge. Trimming the
     tracking gives it margins without shrinking the type. */
  .hero-sub{font-size:13px;letter-spacing:.14em}
  .micro-label{font-size:8px;letter-spacing:.32em}

  /* Spacing: consistent padding */
  /* Navigation: phone number prominence */
  .mobile-nav-link[href^="tel"]{
    margin-top:8px;
    font-size:22px!important;
    letter-spacing:.04em;
    padding:12px 0;
    border-top:1px solid var(--gold-border)}

  /* Trust logos: 2-col grid on mobile — no scrolling, no truncation */
  .trust-logos-row{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    overflow-x:unset;
  }
  .trust-logos-row::-webkit-scrollbar{display:none}
  .logo-ph{flex-shrink:unset}

  /* Contact section phone link prominence */
  .contact-item-value[href^="tel"]{
    font-size:20px;
    color:var(--gold)!important}

  /* Prevent any pricing text from showing */
  [data-price]{display:none!important}
}

@media(max-width:420px){
  .section-title{font-size:clamp(28px,8.5vw,48px)!important}
  .hero-title{font-size:clamp(36px,11vw,60px)!important;letter-spacing:.06em}
  .fgv2-name{font-size:1.1rem}
}

/* ════════════════════════════════════════════════════════════════
   ACCESSIBILITY · MOTION · HEBREW TYPOGRAPHY — quality pass
════════════════════════════════════════════════════════════════ */

/* Keyboard focus — visible gold ring on every interactive element */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
textarea:focus-visible,[tabindex]:focus-visible{
  outline:2px solid var(--gold-bright);outline-offset:3px;border-radius:2px}

/* Reduced-motion: calm heavy animation */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;
    animation-delay:0ms!important;transition-delay:0ms!important;
    scroll-behavior:auto!important}
  html{scroll-behavior:auto}
  .reveal,.reveal-child{opacity:1!important;clip-path:none!important;transform:none!important}
  .section-title{clip-path:none!important}
}

/* Bigger touch/click targets for slider dots (WCAG 2.5.8).
   .t-dot is now a real 24×24 target; only .fgv2-dot needs the expander. */
.fgv2-dot{position:relative}
.fgv2-dot::after{content:'';position:absolute;inset:-12px}

/* ── HEBREW MODE: render EVERYTHING in the Hebrew brand serif ──────
   Without this, Cormorant/Jost (Latin-only) leave Hebrew to a generic
   system fallback. Frank Ruhl Libre is the brand's Hebrew face. */
html.lang-he,html.lang-he body,html.lang-he p,html.lang-he a,html.lang-he span,html.lang-he li,
html.lang-he div,html.lang-he button,html.lang-he input,html.lang-he select,
html.lang-he textarea,html.lang-he label,html.lang-he strong,html.lang-he em{
  font-family:'Heebo','Frank Ruhl Libre',sans-serif!important}
/* Headings keep the brand serif; body and UI use Heebo (both self-hosted) */
html.lang-he :is(h1,h2,h3,h4,.section-title,.hero-head,.trust-statement,.stat-number,.testimonial-text),
html.lang-he :is(h1,h2,h3,h4,.section-title,.hero-head,.trust-statement,.stat-number,.testimonial-text) *{
  font-family:'Frank Ruhl Libre',serif!important}

/* Hebrew has no idiomatic italic, and Latin-style uppercase / wide
   letter-spacing distorts Hebrew letterforms — neutralise both */
html.lang-he .hero-tagline,html.lang-he .testimonial-text,
html.lang-he .footer-tagline,html.lang-he .section-title em{font-style:normal}
html.lang-he .section-eyebrow,html.lang-he .hero-sub,html.lang-he .btn-gold,
html.lang-he .btn-ghost,html.lang-he .btn-submit,html.lang-he .micro-label,
html.lang-he .nav-links a,html.lang-he .scroll-text,html.lang-he .stat-label,
html.lang-he .contact-item-label,html.lang-he .form-label,html.lang-he .footer-col-title,
html.lang-he .marquee-track span,html.lang-he .fgv2-model,html.lang-he .fgv2-pax,
html.lang-he .bgv-note,html.lang-he .corp-note,html.lang-he .trust-logos-label,
html.lang-he .section-title,html.lang-he .nav-logo-vip,html.lang-he .fleet-vehicle-model{
  text-transform:none!important;letter-spacing:.03em!important}

/* Keep phone numbers, emails and Latin codes correctly ordered inside RTL text */
html.lang-he [href^="tel"],html.lang-he [href^="mailto"],html.lang-he .contact-item-value,
html.lang-he .nav-phone,html.lang-he .footer-copyright,html.lang-he .fgv2-pax{
  unicode-bidi:plaintext}

/* ── INTRO SPLIT (entity-definition band) ──────────────────────────
   Two columns: quotable copy beside a real photograph. Grid order is
   source order, so RTL mirrors the columns automatically. */
#intro{
  padding:var(--pad-section) 24px;max-width:1280px;margin:0 auto;
  display:grid;gap:64px;align-items:center;
  grid-template-columns:1fr 1fr;
}
@media (max-width:900px){ #intro{grid-template-columns:1fr;gap:40px} }
.intro-copy{text-align:start}
.intro-lede{
  font-family:'Cormorant Garamond',serif;font-weight:300;
  font-size:clamp(20px,2.4vw,30px);line-height:1.62;
  color:var(--cream-dim);letter-spacing:.01em}
.intro-lede strong{color:var(--gold);font-weight:400}
.intro-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.intro-media{position:relative}
.intro-media img{width:100%;height:auto;border-radius:20px;display:block}
@media(max-width:768px){#intro{padding:72px 24px}}

/* ── BOOKING BAND ─────────────────────────────────────────────────────
   Flat --ink-2 plate. The band used to carry a skyline photograph, and
   the ::before four-stop gradient existed only to hold the heading and
   the form legible over it. With no photograph there is nothing to
   scrim: the gradient would merely tint one flat colour toward another,
   so both are gone. Separation now comes from the band sitting one step
   lighter than the page (--ink-2 #1A1714 on --ink #12100E) with the
   form pill dropping back down to --ink inside it. */
.booking-band{
  padding:var(--pad-section) 24px;
  background:var(--ink-2);
  text-align:center;
}
.booking-inner{max-width:1180px;margin:0 auto}
.booking-title{
  font-family:var(--font-display);
  font-size:clamp(28px,3.4vw,44px);font-weight:700;color:var(--cream);
  margin-bottom:40px;
}
.booking-title em{color:var(--gold);font-style:normal}
.booking-form{
  display:grid;gap:12px;
  grid-template-columns:repeat(4,1fr) auto;
  align-items:stretch;
  background:var(--ink);
  border:1px solid var(--gold-border);
  border-radius:999px;
  padding:10px 10px 10px 26px;
}
[dir="rtl"] .booking-form{padding:10px 26px 10px 10px}
.bk-field{display:flex;align-items:center}
.booking-form select,.booking-form input{
  width:100%;background:transparent;border:none;
  color:var(--cream);font-family:var(--font-display);font-size:14px;
  padding:14px 8px;
}
.booking-form select:focus,.booking-form input:focus{outline:none}
.booking-form select option{background:var(--ink-2);color:var(--cream)}
.booking-form ::placeholder{color:var(--cream-muted)}
.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
@media (max-width:900px){
  .booking-form{grid-template-columns:1fr;border-radius:24px;padding:18px}
  .bk-field{border-bottom:1px solid var(--gold-border)}
  .booking-form .btn-pill{justify-content:center;margin-top:8px}
}

/* ════════════════════════════════════════════════════════════════
   TASK 8 — HOMEPAGE RE-ARCHITECTURE
   The notch card (.ncard/.ncard-surface/.ncard-badge) and the pill
   buttons are now applied to the real homepage sections. Everything
   below adapts the pre-existing card internals to the component;
   no new button or card primitive is defined here.
════════════════════════════════════════════════════════════════ */

/* ── SERVICE CARDS ────────────────────────────────────────────────── */
.services-grid .ncard{
  display:flex;flex-direction:column;height:100%;
  transition:transform .5s var(--ease-luxury);
}
.services-grid .ncard:hover{transform:translateY(-5px)}
.ncard-surface.service-card{
  flex:1;display:flex;flex-direction:column;
  border:1px solid rgba(255,255,255,0.08);
  transition:border-color .45s var(--ease-luxury),box-shadow .45s var(--ease-luxury);
}
.services-grid .ncard:hover .ncard-surface,
.services-grid .ncard:focus-within .ncard-surface{
  border-color:var(--gold-border);
  box-shadow:0 15px 35px rgba(0,0,0,0.5);
}
.ncard:hover .service-card-img{transform:scale(1.05)}
.ncard:hover .service-arrow,.ncard:focus-within .service-arrow{transform:translateX(0);opacity:1}
.ncard:hover .service-arrow::after,.ncard:focus-within .service-arrow::after{width:24px}

/* Ben Gurion arrival protocol — its own #airport section again, so the
   nav links on the other 12 pages resolve. Notch surface, no badge: it is
   not a peer of the numbered 01–06 service cards, so the top padding only
   has to clear the notch radius, not a 64px badge. */
.ncard-surface.svc-feature{
  padding:64px 48px 56px;
  border:1px solid var(--gold-border);
  text-align:center;
}
.svc-feature .section-title{font-size:clamp(30px,3.6vw,52px);margin-bottom:14px}
.svc-feature .section-subtitle{margin-bottom:0}
.svc-feature .bgv-step-content{text-align:start}
[dir="rtl"] .bgv-step-num{border-right:0;border-left:1px solid var(--gold-border)}
.bgv-cta-row{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}

/* ── PROCESS ──────────────────────────────────────────────────────── */
#process{
  padding:var(--pad-section) 24px;max-width:1280px;margin:0 auto;
  text-align:center;
}
.process-grid{
  display:grid;gap:24px;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
}
.process-grid .ncard{display:flex;transition:transform .5s var(--ease-luxury)}
.process-grid .ncard:hover{transform:translateY(-5px)}
.ncard-surface.process-card{
  flex:1;
  padding:88px 32px 40px;
  text-align:start;
  border:1px solid rgba(255,255,255,0.08);
  transition:border-color .45s var(--ease-luxury);
}
/* :hover only — process cards contain no focusable element, so a
   :focus-within branch here could never fire. */
.process-grid .ncard:hover .ncard-surface{border-color:var(--gold-border)}
.process-card h3{
  font-family:var(--font-display);
  font-size:22px;font-weight:700;color:var(--cream);margin-bottom:14px;
}
.process-card p{color:var(--cream-muted);line-height:1.75;font-size:15px}

/* ── FLEET CARDS ──────────────────────────────────────────────────── */
/* .fgv2-card keeps its class (the mobile carousel JS selects on it) but
   hands its surface treatment over to .ncard-surface, so the notch mask
   is not fighting a second rounded box. */
.fgv2-card.ncard{
  background:none;border:0;border-radius:0;overflow:visible;box-shadow:none;
  -webkit-backdrop-filter:none;backdrop-filter:none;
}
.fgv2-card.ncard:hover{transform:translateY(-6px)}
.ncard-surface.fgv2-surface{
  border:1px solid rgba(201,168,76,0.18);
  transition:border-color .35s ease,box-shadow .35s ease;
}
.ncard:hover .fgv2-surface,.ncard:focus-within .fgv2-surface{
  border-color:rgba(201,168,76,0.38);
  box-shadow:0 16px 48px rgba(0,0,0,0.5),0 0 24px rgba(201,168,76,0.08);
}
.ncard:hover .fgv2-img{transform:scale(1.04)}

/* ── TESTIMONIAL CARDS ────────────────────────────────────────────── */
.testimonial-card .ncard-surface{
  padding:104px 52px 40px;
  text-align:center;
  border:1px solid rgba(255,255,255,0.08);
}
.testimonial-card .ncard-badge{
  font-size:44px;line-height:1;
  align-items:start;padding-top:16px;
}
/* The track is 5 slides wide; without this the neighbouring slides bleed
   past the 1000px inner column and are only clipped by the section. */
.testimonials-slider{overflow:hidden}

/* ── HEBREW / RTL ─────────────────────────────────────────────────── */
html.lang-he .btn-pill,html.lang-he .btn-pill-ghost{
  text-transform:none!important;letter-spacing:.03em!important}
html.lang-he .process-card h3,html.lang-he .intro-lede{letter-spacing:.01em}

@media(max-width:768px){
  .ncard-surface.svc-feature{padding:56px 20px 40px}
  .testimonial-card .ncard-surface{padding:96px 22px 28px}
  .ncard-surface.process-card{padding:88px 24px 34px}
  .intro-actions .btn-pill,.intro-actions .btn-pill-ghost{flex:1 1 100%;justify-content:center}
}

/* ════════════════════════════════════════════════════════════════
   TASK 10 — SERVICE PAGES
   No new component here. wedding-transportation.html and
   security-escort.html are the only two of the six whose sections were
   never given the shared container rhythm that #corporate/#airport/
   #trust carry everywhere else — they had zero padding and no max-width.
   Two consequences, both visible at 1440:
     · their <h1> sat at top:32px, underneath the fixed navbar;
     · their card grids ran flush to the viewport, badge and all, once
       .corp-grid's own full-bleed bordered box was replaced by notch
       cards that do not draw an outer container.
   Same values as #corporate, so all six service pages share one measure.
════════════════════════════════════════════════════════════════ */
#wed-header,#wed-fleet,#wed-coordination,#wed-nationwide,#wed-cta,
#overview,#what-included,#why-us,#cta{
  padding:120px 60px;max-width:1340px;margin:0 auto;text-align:center}
@media(max-width:768px){
  #wed-header,#wed-fleet,#wed-coordination,#wed-nationwide,#wed-cta,
  #overview,#what-included,#why-us,#cta{padding-left:24px;padding-right:24px}
}

/* ════════════════════════════════════════════════════════════════
   TASK 11 — LOCATION PAGES
   No new component. The per-page header plate, plus the #intro
   single-column case the split layout never covered.
════════════════════════════════════════════════════════════════ */

/* ── LOCATION HEADER ──────────────────────────────────────────────
   The location headers are now the same bare #services plate the eight
   service pages already use: eyebrow rule, <h1>, subtitle, centred,
   140px of top padding clearing the fixed navbar. The decorative
   photograph behind the <h1> is gone at the owner's request, and with
   it the absolutely-positioned media box, its scrim, and the z-index
   lift its siblings needed to paint above it. #services already
   declares position:relative, so .loc-hero itself no longer carries any
   style — the class stays on the markup purely as a page-type hook.
   assets/img/locations/*.webp remain on disk, unreferenced. */

/* #intro is a 1fr 1fr split built for index and About, which both pair the
   lede with a media column. The location and service pages carry the lede
   alone, so it was landing in the left half against an empty right half.
   With no sibling, run it across the full measure as a centred pull-quote. */
#intro > .intro-lede:only-child{
  grid-column:1/-1;max-width:1000px;margin:0 auto;text-align:center}

/* ════════════════════════════════════════════════════════════════
   TASK 12 — ABOUT
   No new component; one crop. limousine.webp is a 899×1599 portrait
   plate letterboxed with grey bars above and below, and the
   photograph itself occupies only the middle ~39%. Cropping to the
   photo's own 899×620 box drops the bars and keeps the #intro split's
   two columns in proportion.
════════════════════════════════════════════════════════════════ */
.intro-media .ncard-surface img{aspect-ratio:899/620;object-fit:cover}


/* ══════════════════════════════════════════════════════════════════
   MOBILE PARITY PASS
   Mobile is held to the same bar as desktop, so the phone gets a
   designed still hero rather than a shrunken desktop one.
   ══════════════════════════════════════════════════════════════════ */

/* ── THE FIVE STATIC-HERO GATES ───────────────────────────────────
   Phones, portrait tablets, coarse-pointer portrait, landscape phones,
   and reduced motion get the composed poster instead of the video, so
   they never download ~780KB of footage they were only going to see
   blurred behind a scrim.
   These five queries are duplicated character-for-character in
   js/script.js (HERO_GATES) and in index.html's critical CSS. Change
   one, change all three, or one side loads what another side hides. */
@media (max-width: 720px),
       (orientation: portrait) and (max-width: 1024px),
       (orientation: portrait) and (pointer: coarse),
       (orientation: landscape) and (pointer: coarse) and (max-height: 560px),
       (prefers-reduced-motion: reduce){
  #hero-video{display:none!important}
  #hero-video-poster{
    /* No extra tint: #hero-video-overlay already scrims this layer exactly
       as it scrims the video on desktop, so the still reads as a frame of
       the same film rather than a darker, muddier cousin. */
    background-image:url('../assets/video/hero-poster.jpg');
    background-size:cover;background-position:center;
  }
}

/* ── TOUCH TARGETS (WCAG 2.5.5, 44x44) ────────────────────────────
   Icon controls grow through a transparent ::after expander so the
   navbar's own layout is untouched; text rows grow through padding.
   Every element that gets a display change re-declares its alignment,
   because a bare inline-flex left-aligns a centred label. */
@media (pointer: coarse){
  #hamburger,.lang-btn,.t-dot{position:relative}
  #hamburger::after,.lang-btn::after,.t-dot::after{
    content:'';position:absolute;top:50%;left:50%;
    transform:translate(-50%,-50%);
    width:44px;height:44px;min-width:100%;min-height:100%;
  }
  #mobile-menu a{
    min-height:44px;display:flex;align-items:center;justify-content:center;
  }
  .footer-col a{padding:13px 0;margin-bottom:0}
  .btn-pill,.btn-pill-ghost,.btn-submit{
    min-height:44px;display:inline-flex;align-items:center;justify-content:center;
  }
}

/* ── SKIP LINK ────────────────────────────────────────────────────
   Off-canvas until focused, then it slides down from the top edge. */
.skip-link{
  position:absolute;left:50%;top:0;z-index:10001;
  transform:translateX(-50%) translateY(-140%);
  background:var(--bg);color:var(--gold);
  border:1px solid rgba(201,168,76,.4);border-radius:0 0 12px 12px;
  padding:14px 28px;
  font-family:'Jost',sans-serif;font-size:13px;
  letter-spacing:.18em;text-transform:uppercase;
  transition:transform .3s var(--ease-luxury);
}
.skip-link:focus{transform:translateX(-50%) translateY(0)}
html.lang-he .skip-link{letter-spacing:.04em;text-transform:none}
#main:focus{outline:none}

/* ── OFF-SCREEN / HIDDEN-TAB ANIMATION PAUSE ──────────────────────
   animation-play-state does not inherit, so a container-level pause
   silently never reaches nested elements or pseudo-elements. The
   universal form is the one that cannot miss. Toggled from
   js/script.js on visibilitychange. */
body.yv-paused *,
body.yv-paused *::before,
body.yv-paused *::after{animation-play-state:paused!important}

/* ════════════════════════════════════════════════════════════════════
   V3 — CORPORATE REFRESH (Oct 2026)
   Black + gold identity from the original site, restrained the way the
   large chauffeur brands are: hairlines instead of glow, square corners
   instead of pills, one gold accent per view. Appended last so it wins
   over the earlier rules without rewriting every page's markup.
   ════════════════════════════════════════════════════════════════════ */
:root{
  --ink:#060607; --ink-2:#0D0D0F; --ink-3:#151517;
  --bg:#060607; --bg-card:#0D0D0F;
  --line:rgba(237,232,220,0.12);
  --line-strong:rgba(237,232,220,0.22);
  --font-display:'Cormorant Garamond','Frank Ruhl Libre',serif;
  --font-ui:'Jost','Heebo',sans-serif;
  --font-hebrew:'Frank Ruhl Libre',serif;
  --font-hebrew-ui:'Heebo','Jost',sans-serif;
  --gutter:clamp(20px,4vw,56px);
  --radius:2px;
}
body{font-family:var(--font-ui);background:var(--bg)}
html.lang-he body{font-family:var(--font-hebrew-ui)}
#scroll-progress{height:2px}

/* ── NAV: full-width bar, logo centred, transparent over the hero ── */
#navbar{
  top:0;left:0;right:0;transform:none;width:auto;max-width:none;
  height:84px;padding:0 var(--gutter);
  display:flex;align-items:center;gap:32px;
  background:linear-gradient(180deg,rgba(6,6,7,.72),rgba(6,6,7,0));
  backdrop-filter:none;-webkit-backdrop-filter:none;
  border:0;border-bottom:1px solid transparent;border-radius:0;box-shadow:none;
  transition:height .4s var(--ease-luxury),background-color .4s,border-color .4s;
}
#navbar.scrolled{
  top:0;width:auto;height:68px;padding:0 var(--gutter);
  background:rgba(6,6,7,.9);
  backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);
  border-bottom-color:var(--line);
}
.nav-logo{position:absolute;left:50%;transform:translateX(-50%);gap:12px}
.nav-logo-yaron{
  font-family:'Cormorant Garamond',serif;font-weight:400;font-size:24px;letter-spacing:.24em;
  background:none;-webkit-text-fill-color:currentColor;color:var(--cream);
}
.nav-logo-sep{height:18px;background:var(--line-strong)}
.nav-logo-vip{font-size:12px;letter-spacing:.32em;color:var(--gold)}
.nav-links{flex:0 1 auto;justify-content:flex-start;gap:32px;order:-1}
.nav-links a{font-family:var(--font-ui);font-weight:400;font-size:12px;letter-spacing:.16em;color:rgba(237,232,220,.78)}
.nav-links a:hover{color:var(--cream)}
.nav-links a::after{bottom:-6px;background:var(--gold)}
html[dir="rtl"] .nav-links a::after{left:auto;right:0}
.nav-phone-wrap{margin-inline-start:auto;gap:28px}
.nav-phone{font-size:13px;letter-spacing:.06em;color:rgba(237,232,220,.78);direction:ltr}
.nav-phone svg{stroke:var(--gold);fill:none}
.nav-cta{
  font-family:var(--font-ui);font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;
  color:var(--cream);padding:11px 22px;border:1px solid var(--line-strong);border-radius:var(--radius);
  transition:background-color .3s,border-color .3s,color .3s;
}
.nav-cta:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}
.lang-btn{border-radius:var(--radius);border-color:var(--line-strong);color:var(--cream);padding:7px 11px;font-family:'Heebo','Frank Ruhl Libre',sans-serif}
.lang-btn:hover{border-color:var(--gold);color:var(--gold);background:none}
html.lang-he .nav-links a,html.lang-he .nav-cta{font-family:var(--font-hebrew-ui);letter-spacing:.02em;font-size:14px;text-transform:none}
@media (max-width:1100px){
  .nav-links{display:none}
  .nav-logo{position:static;transform:none}
  .nav-phone{display:none}
  #hamburger{display:flex}
}
@media (max-width:560px){
  .nav-cta{display:none}
  #navbar,#navbar.scrolled{height:64px}
}
#mobile-menu{background:rgba(6,6,7,.98)}
html.lang-he #mobile-menu a{font-family:var(--font-hebrew)}

/* ── HERO ──────────────────────────────────────────────────────────── */
#hero{height:auto;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch}
#hero-video-poster{background-color:var(--ink)}
.hero-inner{position:relative;z-index:3;width:100%;max-width:1320px;margin:0 auto;padding:140px var(--gutter) 48px}
.hero-ghost{
  position:absolute;z-index:2;inset-inline-end:-2vw;bottom:-6vw;pointer-events:none;user-select:none;
  font-family:'Cormorant Garamond',serif;font-weight:300;font-size:38vw;line-height:.8;letter-spacing:-.02em;
  color:transparent;-webkit-text-stroke:1px rgba(201,168,76,.13);
}
.hero-kicker{
  font-family:var(--font-ui);font-weight:400;font-size:12px;letter-spacing:.24em;text-transform:uppercase;
  color:rgba(237,232,220,.72);margin-bottom:28px;display:flex;align-items:center;gap:16px;
}
.hero-kicker::before{content:'';width:40px;height:1px;background:var(--gold);flex-shrink:0}
.hero-head{font-family:var(--font-display);font-weight:300;font-size:clamp(48px,7.2vw,112px);line-height:.98;letter-spacing:-.01em;color:var(--cream);max-width:12ch}
.hero-head .hl{display:inline-block}
.hero-head em{font-style:italic;color:var(--gold-bright)}
.hero-lede{margin-top:28px;max-width:540px;font-family:var(--font-ui);font-weight:300;font-size:clamp(16px,1.25vw,19px);line-height:1.65;color:rgba(237,232,220,.8)}
.hero-links{display:flex;flex-wrap:wrap;gap:36px;margin-top:36px}
.link-line{
  display:inline-flex;align-items:center;gap:12px;padding-bottom:8px;
  font-family:var(--font-ui);font-size:13px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--cream);
  background:linear-gradient(var(--gold),var(--gold)) 0 100%/100% 1px no-repeat;
  transition:background-size .4s var(--ease-luxury),color .3s;
}
.link-line svg{width:16px;height:16px;transition:transform .35s var(--ease-luxury)}
.link-line:hover svg{transform:translateX(4px)}
html[dir="rtl"] .link-line svg{transform:scaleX(-1)}
html[dir="rtl"] .link-line:hover svg{transform:scaleX(-1) translateX(4px)}
.link-quiet{background-image:linear-gradient(var(--line-strong),var(--line-strong))}
.link-quiet:hover{background-image:linear-gradient(var(--gold),var(--gold))}
.link-line bdi{letter-spacing:.08em}

/* Hebrew hero: Frank Ruhl for display, Heebo for UI, no Latin tracking */
html.lang-he .hero-head{font-family:var(--font-hebrew);font-weight:300;letter-spacing:0;line-height:1.08;font-size:clamp(44px,6.4vw,100px);max-width:11ch}
html.lang-he .hero-head em{font-style:normal}
html.lang-he .hero-kicker,html.lang-he .link-line,html.lang-he .hb-label,html.lang-he .hb-submit,html.lang-he .hb-trip span{letter-spacing:.02em;text-transform:none;font-family:var(--font-hebrew-ui)}
html.lang-he .hero-kicker{font-size:14px}
html.lang-he .link-line{font-size:15px}
html.lang-he .hero-lede,html.lang-he .hb-note{font-family:var(--font-hebrew-ui)}

/* ── BOOKING BAR (inside the hero) ─────────────────────────────────── */
.hero-book{
  position:relative;margin-top:56px;
  background:rgba(13,13,15,.78);
  backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);
  border:1px solid var(--line);border-radius:var(--radius);
  padding:20px 24px 16px;
}
.hero-book .anchor{position:absolute;top:-120px}
.hb-trip{border:0;display:flex;gap:4px;margin-bottom:18px}
.hb-trip label{cursor:pointer}
.hb-trip input{position:absolute;opacity:0;pointer-events:none}
.hb-trip span span{display:inline-block}
.hb-trip label > span{
  display:inline-block;padding:8px 16px;border:1px solid transparent;border-radius:var(--radius);
  font-family:var(--font-ui);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(237,232,220,.6);transition:color .25s,border-color .25s,background-color .25s;
}
.hb-trip input:checked + span{color:var(--cream);border-color:var(--line-strong);background:rgba(237,232,220,.04)}
.hb-trip input:focus-visible + span{outline:2px solid var(--gold);outline-offset:2px}
.hb-fields{display:grid;grid-template-columns:1.4fr 1.4fr .9fr .7fr 1.1fr auto;gap:0;align-items:end}
.hb-field{display:flex;flex-direction:column;gap:6px;padding:4px 18px 6px;border-inline-start:1px solid var(--line);min-width:0}
.hb-field:first-child{border-inline-start:0;padding-inline-start:0}
.hb-field[hidden]{display:none}
.hb-label{font-family:var(--font-ui);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.hb-field input,.hb-field select{
  width:100%;background:transparent;border:0;border-radius:0;padding:6px 0;
  font-family:var(--font-ui);font-size:16px;font-weight:300;color:var(--cream);
  appearance:none;-webkit-appearance:none;min-height:34px;
}
html.lang-he .hb-field input,html.lang-he .hb-field select{font-family:var(--font-hebrew-ui)}
.hb-field select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23C9A84C' stroke-width='1.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:14px;background-position:right 0 center;padding-inline-end:22px}
html[dir="rtl"] .hb-field select{background-position:left 0 center}
.hb-field select option{background:var(--ink-2);color:var(--cream)}
.hb-field input::placeholder{color:rgba(237,232,220,.42)}
.hb-field input:focus,.hb-field select:focus{outline:none}
.hb-field:focus-within{box-shadow:inset 0 -1px 0 var(--gold)}
.hb-submit{
  margin-inline-start:18px;height:56px;padding:0 28px;display:inline-flex;align-items:center;gap:12px;white-space:nowrap;
  background:var(--gold);color:var(--ink);border:0;border-radius:var(--radius);cursor:pointer;
  font-family:var(--font-ui);font-size:13px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;
  transition:background-color .3s;
}
.hb-submit:hover{background:var(--gold-bright)}
.hb-submit:focus-visible{outline:2px solid var(--cream);outline-offset:3px}
.hb-submit svg{width:16px;height:16px}
html[dir="rtl"] .hb-submit svg{transform:scaleX(-1)}
html.lang-he .hb-submit{font-size:15px}
.hb-note{margin-top:14px;font-size:12px;color:rgba(237,232,220,.5);letter-spacing:.02em}

@media (max-width:1100px){
  .hb-fields{grid-template-columns:1fr 1fr;gap:0}
  .hb-field{border-inline-start:0;padding:10px 0;border-bottom:1px solid var(--line)}
  .hb-field:nth-child(even){padding-inline-start:18px;border-inline-start:1px solid var(--line)}
  .hb-submit{grid-column:1/-1;margin:16px 0 0;justify-content:center}
}
@media (max-width:560px){
  .hero-inner{padding-top:112px;padding-bottom:28px}
  .hero-links{gap:24px}
  .hero-book{padding:16px}
  .hb-fields{grid-template-columns:1fr 1fr}
  .hb-field,.hb-field:nth-child(even){grid-column:1/-1;padding-inline-start:0;border-inline-start:0}
  .hb-field.hb-short{grid-column:auto}
  .hb-field.hb-short + .hb-field.hb-short{padding-inline-start:14px;border-inline-start:1px solid var(--line)}
  .hb-field input[type=date],.hb-field input[type=time]{font-size:15px}
  #a11y-btn,#whatsapp-btn{width:44px;height:44px}
  #whatsapp-btn{bottom:16px;left:16px}
  #a11y-btn{bottom:68px;left:16px}
  .hero-ghost{font-size:56vw;bottom:auto;top:18vh}
}

/* ── Global: square, quiet buttons instead of glowing pills ─────────── */
.btn-pill,.btn-pill-ghost{border-radius:var(--radius)}
.btn-pill{box-shadow:none}

/* Floating controls: dark discs with a gold icon, not gold blobs */
#a11y-btn,#whatsapp-btn{
  background:rgba(13,13,15,.92);border:1px solid var(--line-strong);box-shadow:0 8px 24px rgba(0,0,0,.4);
  width:48px;height:48px;
}
#a11y-btn svg,#whatsapp-btn svg{fill:var(--gold);width:22px;height:22px}
#a11y-btn:hover,#whatsapp-btn:hover{transform:none;border-color:var(--gold);box-shadow:0 8px 24px rgba(0,0,0,.4)}

/* GSAP owns the hero entrance; this keeps it hidden only while motion runs */
html.motion [data-in]{opacity:0}
@media (prefers-reduced-motion:reduce){html.motion [data-in]{opacity:1}}
#whatsapp-btn{animation:none}
.hero-inner{text-align:start}
html.lang-he .hero-head{max-width:13ch}

/* ── V3 round 2: daylight sections, no decorative numbering ──────────── */
/* Numbers on cards and section indexes added noise, not information */
.section-num,.ncard-badge{display:none!important}
.ncard-surface{-webkit-mask:none;mask:none;border-radius:var(--radius)}
.intro-media img{border-radius:var(--radius)}

/* The footage is a dusk shot; pull the blue cast out of it */
#hero-video,#hero-video-poster{filter:saturate(.45) contrast(1.05)}

/* Charcoal bands instead of flat black: the page alternates two
   near-blacks and three photo bands, so it never reads as one black slab. */
:root{--bg:#0E0E10;--ink:#0E0E10;--ink-2:#1A1A1E;--bg-card:#1A1A1E;--band-alt:#151518}
body{background:var(--bg)}
#intro,#fleet,#corporate,#faq{--band:var(--band-alt);background:var(--band-alt)}
#services,#testimonials,#contact{--band:var(--bg);background:var(--bg)}
#intro,#services,#fleet,#corporate,#faq,#testimonials,#contact{box-shadow:0 0 0 100vmax var(--band);clip-path:inset(0 -100vmax)}
.ncard-surface{background:#1A1A1E;border:1px solid rgba(237,232,220,.08)}
#rule-vr,.rule-vr{display:none}

/* Photo bands — real-world context behind three sections */
#process,#stats,#trust{position:relative;isolation:isolate;background:#0E0E10}
#process::before,#stats::before,#trust::before{
  content:'';position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);
  background-size:cover;background-position:center;
}
#process::before{background-image:linear-gradient(180deg,rgba(14,14,16,.82),rgba(14,14,16,.7) 50%,rgba(14,14,16,.9)),url('../assets/img/bands/road.webp')}
#stats::before{background-image:linear-gradient(180deg,rgba(14,14,16,.78),rgba(14,14,16,.6) 50%,rgba(14,14,16,.88)),url('../assets/img/bands/coast.webp');background-position:center 60%}
#trust::before{background-image:linear-gradient(180deg,rgba(14,14,16,.55),rgba(14,14,16,.35) 60%,rgba(14,14,16,.75)),url('../assets/img/bands/skyline.webp');background-position:center bottom}
#process .ncard-surface{background:rgba(20,20,23,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}

/* ── TRUST v3 ── */
#trust{padding:var(--pad-section) var(--gutter)}
.trust-v3{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(40px,7vw,120px);align-items:start}
.trust-kicker{font-family:var(--font-ui);font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:22px;display:flex;align-items:center;gap:14px}
.trust-kicker::before{content:'';width:32px;height:1px;background:currentColor}
.trust-statement{font-family:var(--font-display);font-weight:400;font-size:clamp(28px,3vw,42px);line-height:1.2;color:var(--cream)}
.sector-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.sector-list li{padding:18px 0;border-bottom:1px solid var(--line);font-family:var(--font-ui);font-size:16px;color:var(--cream)}
.sector-list li:nth-child(odd){padding-inline-end:24px}
.sector-list li:nth-child(even){padding-inline-start:24px;border-inline-start:1px solid var(--line)}
html.lang-he .trust-kicker{letter-spacing:.02em;font-size:14px;text-transform:none}
html.lang-he .trust-statement{line-height:1.35}
@media (max-width:860px){.trust-v3{grid-template-columns:1fr}}

/* Hebrew: no Latin tracking on small caps labels anywhere */
html.lang-he :is(.section-eyebrow,.eyebrow,.micro-label,.fgv2-model,.stat-label){letter-spacing:.02em!important;text-transform:none!important}
/* Light bands run edge to edge even where the section itself is width-capped */
#navbar.scrolled{background:rgba(9,9,10,.96)}
.process-card{padding-top:40px!important}
.trust-v3,.sector-list li{text-align:start}
/* Stats dividers sit on the logical start edge so RTL mirrors cleanly */
.stat-item{border-right:0!important;border-inline-start:1px solid var(--gold-border)}
.stat-item:first-child{border-inline-start:0}
@media (max-width:768px){.stat-item:nth-child(3){border-inline-start:0}}
/* The wordmark is Latin: it reads YARON | V·I·P in both languages */
.nav-logo,.footer-logo,[class*="logo-yaron"]{direction:ltr;unicode-bidi:isolate}
/* No orphans: headings balance their lines, paragraphs avoid a lone last word */
h1,h2,h3,h4,.section-title,.hero-head,.trust-statement,.section-subtitle{text-wrap:balance}
p,li,.hero-lede,.fgv2-desc{text-wrap:pretty}

/* RTL: list bullets and spec lines sit on the logical start edge */
.fgv2-specs li{padding-left:0;padding-inline-start:14px;text-align:start}
.fgv2-specs li::before{left:auto;inset-inline-start:0}
.fgv2-body{text-align:start}
/* Airport steps: no oversized index numbers, a gold tick on the start edge instead */
.bgv-step,.bgv-step:nth-child(n){grid-template-columns:1fr!important}
.bgv-step-num{display:none!important}
.bgv-step-content{position:relative;padding-inline-start:56px!important}
.bgv-step-content::before{content:'';position:absolute;inset-inline-start:28px;top:38px;width:12px;height:1px;background:var(--gold)}
@media (max-width:768px){.bgv-step-content{padding-inline-start:44px!important}.bgv-step-content::before{inset-inline-start:20px}}

/* ════════════════════════════════════════════════════════════════════
   V4 — LAUFER DIRECTION (Oct 2026)
   One typeface (Rubik) for both languages, big light headings, no gold
   frames: surfaces are separated by tone and soft radius, not outlines.
   The YARON V·I·P wordmark keeps its serif — it is the logo.
   ════════════════════════════════════════════════════════════════════ */
:root{
  --font-display:'Rubik',sans-serif; --font-ui:'Rubik',sans-serif;
  --font-hebrew:'Rubik',sans-serif;  --font-hebrew-ui:'Rubik',sans-serif;
  --gold-border:rgba(237,232,220,.08);
  --line:rgba(237,232,220,.09); --line-strong:rgba(237,232,220,.2);
  --radius:20px; --radius-sm:12px;
}
html body,html body *:not(.nav-logo-yaron):not(.nav-logo-vip):not(.footer-logo-text):not(svg):not(path){
  font-family:'Rubik',system-ui,sans-serif!important}
html.lang-he :is(h1,h2,h3,h4,.section-title,.hero-head,.trust-statement,.stat-number,.testimonial-text),
html.lang-he :is(h1,h2,h3,h4,.section-title,.hero-head,.trust-statement,.stat-number,.testimonial-text) *{
  font-family:'Rubik',system-ui,sans-serif!important}
body{font-weight:400;-webkit-font-smoothing:antialiased}

/* Headings: large and light, never italic; gold only on the emphasised words */
.hero-head,.section-title,.section-head h2,h2,.trust-statement{font-weight:300!important;letter-spacing:-.015em!important;font-style:normal!important}
.hero-head{font-size:clamp(46px,6.6vw,104px)!important;line-height:1.02!important}
html.lang-he .hero-head{line-height:1.08!important}
.section-title,.section-head h2{font-size:clamp(36px,4.6vw,72px)!important;line-height:1.08!important}
:is(h1,h2,h3,.section-title) em{font-style:normal!important;color:var(--gold)}
h3,.fgv2-name,.bgv-step-content h3{font-weight:500!important;letter-spacing:-.005em!important}
.stat-number{font-weight:300!important}
.testimonial-text{font-weight:300!important;font-style:normal!important}
:is(.section-eyebrow,.eyebrow,.micro-label,.hero-kicker,.trust-kicker,.hb-label,.fgv2-model){font-weight:500!important;letter-spacing:.12em!important}
html.lang-he :is(.section-eyebrow,.eyebrow,.micro-label,.hero-kicker,.trust-kicker,.hb-label,.fgv2-model){letter-spacing:0!important}
.section-subtitle,p{font-weight:300}
.section-eyebrow::before,.section-eyebrow::after{display:none!important}
.micro-label{display:none}

/* Frames out: tone + radius instead of outlines */
.ncard-surface,.fgv2-card,.testimonial-card .ncard-surface,.testimonial-card .card-inner{
  border:0!important;border-radius:var(--radius)!important;background:#1A1A1E!important;box-shadow:none!important}
.fgv2-img-wrap,.fgv2-img,.intro-media img{border-radius:var(--radius) var(--radius) 0 0}
.intro-media img{border-radius:var(--radius)!important}
.bgv-steps{border:0!important;background:#1A1A1E;border-radius:var(--radius);overflow:hidden}
.bgv-step{border-bottom:1px solid var(--line)!important}
#airport .airport-inner,#airport>div{border:0!important}
.corp-grid{border:0!important;gap:16px;background:none!important}
.corp-feature{border:0!important;border-radius:var(--radius);background:#1A1A1E!important}
.stats-grid{border:0!important;gap:16px}
.stats-grid::before{display:none!important}
.stat-item{border:0!important;border-radius:var(--radius);background:rgba(26,26,30,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.faq-item,.faq-item:first-child{border-color:var(--line)!important}
.faq-icon{border-color:var(--line-strong)!important}
.form-field input,.form-field textarea,.form-field select{border-radius:var(--radius-sm)!important;border:0!important;background:#1A1A1E!important;padding-inline:16px!important}
.hero-book{border:0!important;border-radius:var(--radius)!important;background:rgba(20,20,23,.82)!important}
.sector-list,.sector-list li{border-color:var(--line)!important}
.hero-ghost{display:none}
#trust{border-top:0!important}

/* Buttons: soft pills, like the reference */
.btn-pill,.btn-pill-ghost,.hb-submit,.nav-cta,.fgv2-cta,.lang-btn,.hb-trip label > span{border-radius:999px!important}
.btn-pill-ghost,.nav-cta{border:1px solid rgba(237,232,220,.35)!important;background:transparent!important;color:var(--cream)!important}
.btn-pill-ghost:hover,.nav-cta:hover{background:var(--cream)!important;color:#0E0E10!important;border-color:var(--cream)!important}
.fgv2-cta{background:transparent!important;border:1px solid rgba(237,232,220,.35)!important;color:var(--cream)!important;box-shadow:none!important;padding:10px 24px!important}
.fgv2-cta:hover{background:var(--gold)!important;border-color:var(--gold)!important;color:#0E0E10!important}
.btn-pill,.hb-submit{background:var(--gold)!important;color:#0E0E10!important;border-color:var(--gold)!important}
.btn-pill,.btn-pill-ghost,.hb-submit,.nav-cta,.fgv2-cta,.link-line{text-transform:none!important;letter-spacing:.01em!important;font-weight:500!important}
.nav-links a{text-transform:none!important;letter-spacing:.01em!important;font-size:14px!important}
.hb-trip label > span{text-transform:none;letter-spacing:.01em}

/* Subtle motion hooks (motion.js) */
html.motion .reveal,html.motion .reveal-child,html.motion .section-title{transition:none!important}
.img-parallax{overflow:hidden}
/* V4 fixes: stats tiles flat (no 3D tilt), form labels inside the field, round controls */
.stat-item{transition:none!important}
html.motion .stat-item{opacity:1}
.form-label{inset-inline-start:16px!important;left:auto}
html:not([dir="rtl"]) .form-label{left:16px}
.btn-submit{border-radius:999px!important;background:var(--gold)!important;color:#0E0E10!important;font-weight:500!important;letter-spacing:.01em!important;text-transform:none!important}
.contact-item-icon,.testimonials-btn{border-radius:50%!important;border-color:var(--line-strong)!important}
.stat-item,.stat-item.visible{transform:none!important}
.stat-item.visible .stat-number{animation:none!important}

/* ════════════════════════════════════════════════════════════════════
   V5 — SERVICE PHOTO TILES (Laufer-style, no stacking)
   Tall photo tiles in a grid, copy laid over the image, a slow zoom on hover.
   ════════════════════════════════════════════════════════════════════ */
#services .services-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:20px}
#services .ncard{position:relative}
#services .service-card{position:relative;flex:none!important;width:100%;height:520px;border-radius:24px!important;overflow:hidden;background:#111!important;border:0!important}
#services .service-card-img{position:absolute!important;inset:0;height:auto!important;background-size:cover;background-position:center;border-radius:0!important;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)!important}
#services .ncard:hover .service-card-img{transform:scale(1.06)}
#services .service-card-img::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(8,8,9,.92) 0%,rgba(8,8,9,.55) 40%,rgba(8,8,9,.05) 75%)!important;opacity:1!important}
#services .service-card-body{position:absolute!important;inset:auto 0 0 0;padding:32px!important;background:none!important;text-align:start}
#services .service-name{font-size:clamp(26px,2.2vw,34px)!important;font-weight:400!important;line-height:1.1;margin:6px 0 12px}
#services .service-name a{color:#fff}
#services .service-name a::after{content:'';position:absolute;inset:0;z-index:1}
#services .service-desc{font-size:15px;line-height:1.6;color:rgba(255,255,255,.8);padding-inline-end:52px}
#services .service-hebrew{color:var(--gold);font-size:13px;font-weight:500}
#services .service-arrow{position:absolute;inset-inline-end:28px;bottom:32px;opacity:1!important;transform:none!important;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.4);display:grid;place-items:center;color:#fff;transition:background-color .3s,border-color .3s,color .3s}
#services .service-arrow svg{width:18px;height:18px}
html[dir="rtl"] #services .service-arrow svg{transform:scaleX(-1)}
#services .ncard:hover .service-arrow{background:var(--gold);border-color:var(--gold);color:#0A0A0B}
@media (max-width:1100px){#services .services-grid{grid-template-columns:repeat(2,1fr)!important}}
@media (max-width:640px){#services .services-grid{grid-template-columns:1fr!important}#services .service-card{height:440px}}
