:root{
  --bg:#08080c;
  --bg-soft:#0f0f16;
  --panel:#14141d;
  --border:rgba(255,255,255,.08);
  --gold:#d4af37;
  --violet:#7c5cff;
  --text:#f2f1ee;
  --text-dim:#9a9aa6;
  --font-head:'Rubik',sans-serif;
  --font-body:'Assistant',sans-serif;
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--text);
  font-family:var(--font-body);
  overflow-x:hidden;
  line-height:1.6;
}

#bg-canvas{
  position:fixed; inset:0; width:100%; height:100%;
  z-index:0; pointer-events:none;
}

#wave-bg{
  position:absolute; top:0; inset-inline:0; width:100%; height:3000px;
  z-index:0; pointer-events:none; opacity:.5;
}
.wave-path{
  fill:none; stroke:var(--border); stroke-width:1;
  animation:wave-drift 22s ease-in-out infinite;
}
.wave-path:nth-child(2n){ animation-duration:28s; animation-direction:reverse; }
.wave-path:nth-child(3n){ animation-duration:34s; }
@keyframes wave-drift{
  0%,100%{ transform:translateX(0); }
  50%{ transform:translateX(30px); }
}
@media (prefers-reduced-motion: reduce){ .wave-path{ animation:none; } }

h1,h2{font-family:var(--font-head); font-weight:900; letter-spacing:.005em; text-wrap:balance;}
h3{font-family:var(--font-body); font-weight:600; letter-spacing:.01em;}
body{font-weight:300;}
em{font-style:italic; color:var(--gold); font-weight:500;}

.section-inner{max-width:1200px; margin:0 auto; padding:clamp(4.5rem,9vw,8rem) 2rem; position:relative; z-index:1;}
.section-inner--wide{max-width:1320px;}
.center{text-align:center; margin-left:auto; margin-right:auto;}

/* --- unified type scale --- */
.section-kicker, .hero-kicker{
  color:var(--gold); font-size:1.3rem; font-weight:700; letter-spacing:.02em;
  margin-bottom:1.25rem; display:block;
}
.center.section-kicker{ text-align:center; }
section h2{font-size:clamp(2.4rem,4.8vw,3.6rem); margin-bottom:1.5rem; line-height:1.12; letter-spacing:-.015em; font-weight:900;}
.section-lead{
  color:var(--text-dim); max-width:56ch; margin:0 auto 4rem; font-size:1.2rem;
  font-weight:300; line-height:1.7;
}
.center + .section-lead{ text-align:center; }

/* --- uniform logo cell: white monochrome logo integrated on dark bg (no box) --- */
.logo-tile{
  flex:0 0 auto; width:230px; height:104px;
  display:flex; align-items:center; justify-content:center; padding:0 1rem;
}
.logo-tile img{
  max-width:100%; max-height:76px; width:auto; height:auto; object-fit:contain; display:block;
  opacity:.95; transition:opacity .3s, transform .3s;
}
.logo-tile:hover img{ opacity:1; transform:scale(1.05); }
.logo-tile--sm{ width:auto; min-width:150px; height:78px; padding:0 .8rem; }
.logo-tile--sm img{ max-height:74px; opacity:1; }

/* NAV */
#site-nav{
  position:fixed; top:0; inset-inline:0; z-index:100;
  transition:background .3s, backdrop-filter .3s, box-shadow .3s;
}
#site-nav.scrolled{
  background:rgba(8,8,12,.85); backdrop-filter:blur(14px);
  box-shadow:0 1px 0 var(--border);
}
.nav-inner{
  max-width:100%; margin:0 auto; padding:1.5rem clamp(1.5rem,3vw,3rem);
  display:flex; align-items:center; justify-content:space-between; position:relative;
}
/* stacked name — right side */
.nav-name{
  display:flex; flex-direction:column; line-height:.92; text-decoration:none;
  color:var(--text); font-family:var(--font-head); font-weight:900; letter-spacing:-.01em;
}
.nav-name-1, .nav-name-2{ font-size:clamp(1.7rem,2.6vw,2.6rem); text-shadow:0 2px 20px rgba(0,0,0,.6); }
.nav-name-2{ color:var(--gold); }
/* big centered emblem */
.nav-emblem{
  position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
  display:flex; align-items:center; justify-content:center;
}
.nav-emblem img{ height:clamp(44px,4.5vw,64px); width:auto; filter:drop-shadow(0 2px 16px rgba(0,0,0,.55)); }
/* hamburger — left side */
.nav-toggle{
  display:flex; flex-direction:column; gap:6px; background:none; border:none; cursor:pointer;
  padding:.6rem; z-index:120;
}
.nav-toggle span{ width:34px; height:2.5px; background:var(--text); border-radius:2px; transition:transform .3s, opacity .3s; }
.nav-toggle.open span:nth-child(1){ transform:translateY(8.5px) rotate(45deg); }
.nav-toggle.open span:nth-child(2){ opacity:0; }
.nav-toggle.open span:nth-child(3){ transform:translateY(-8.5px) rotate(-45deg); }

/* slide-out drawer — compact panel on the left, hidden off-screen until open */
.nav-drawer{
  position:fixed; top:0; left:0; right:auto; height:100vh; width:min(80vw,300px);
  background:rgba(15,15,22,.98); backdrop-filter:blur(8px); z-index:115; padding:5.5rem 2.25rem 2.5rem;
  transform:translateX(-100%); transition:transform .38s cubic-bezier(.65,0,.25,1);
  box-shadow:0 0 50px rgba(0,0,0,.55); display:flex; flex-direction:column;
  border-inline-end:1px solid var(--border);
}
.nav-drawer.open{ transform:translateX(0); }
.nav-drawer-close{
  position:absolute; top:1.5rem; left:1.75rem; right:auto; background:none; border:none;
  color:var(--text); font-size:1.4rem; cursor:pointer; opacity:.6; transition:opacity .2s; line-height:1;
}
.nav-drawer-close:hover{ opacity:1; }
.nav-links{ display:flex; flex-direction:column; gap:.15rem; list-style:none; }
.nav-links a{
  color:var(--text); text-decoration:none; font-size:1.25rem; font-weight:600; font-family:var(--font-head);
  padding:.7rem 0; display:block; opacity:.88; border-bottom:1px solid rgba(255,255,255,.05);
  transition:opacity .2s, color .2s, padding-inline-start .2s;
}
.nav-links a:hover{ opacity:1; color:var(--gold); padding-inline-start:.5rem; }
.nav-overlay{
  position:fixed; inset:0; background:rgba(4,4,8,.55); backdrop-filter:blur(2px); z-index:110;
  opacity:0; pointer-events:none; transition:opacity .38s;
}
.nav-overlay.open{ opacity:1; pointer-events:auto; }

/* HERO — cinematic Vimeo video at natural, contained size */
#hero{
  position:relative; height:100vh; width:100%; overflow:hidden;
  display:flex; align-items:center; justify-content:center; background:var(--bg);
}
.hero-video-wrap{
  position:relative; width:100%; max-width:100vw; aspect-ratio:16/9; max-height:100vh;
}
.hero-video-wrap iframe{
  position:absolute; inset:0; width:100%; height:100%; border:0; display:block;
}
/* soft fade into the page at the bottom */
#hero::after{
  content:''; position:absolute; inset-inline:0; bottom:0; height:22%; z-index:2; pointer-events:none;
  background:linear-gradient(180deg, transparent, var(--bg));
}

/* INTRO — business copy, revealed on scroll */
#intro{ position:relative; z-index:1; background:var(--bg); }
.intro-inner{ text-align:center; display:flex; flex-direction:column; align-items:center; padding-top:clamp(6rem,11vw,10rem); padding-bottom:clamp(3rem,6vw,5rem); }
.intro-inner .hero-kicker{ margin-bottom:1.1rem; font-size:1.15rem; }
#intro h1{ font-size:clamp(2.3rem,4.9vw,4.5rem); line-height:1.08; margin-bottom:1.4rem; }
.hero-sub{ color:var(--text-dim); font-size:clamp(1rem,1.35vw,1.17rem); font-weight:300; line-height:1.75; max-width:56ch; margin:0 auto 2.25rem; }
.hero-cta{ display:flex; gap:1rem; flex-wrap:wrap; justify-content:center; margin-bottom:2.75rem; }
.hero-stats{ display:flex; gap:clamp(2.25rem,4.5vw,4rem); justify-content:center; flex-wrap:wrap; }
.stat{ display:flex; flex-direction:column; align-items:center; }
.stat-num{ font-family:var(--font-head); font-size:clamp(1.6rem,2.3vw,2.15rem); font-weight:900; color:var(--gold); }
.stat-label{ color:var(--text-dim); font-size:.9rem; margin-top:.25rem; }

.btn{
  display:inline-block; padding:.9rem 1.8rem; border-radius:999px; text-decoration:none;
  font-weight:600; font-size:1rem; transition:transform .2s, box-shadow .2s;
}
.btn-primary{background:linear-gradient(135deg,var(--gold),#f0d580); color:#100c00;}
.btn-primary:hover{transform:translateY(-2px); box-shadow:0 10px 30px rgba(212,175,55,.35);}
.btn-ghost{border:1px solid var(--border); color:var(--text);}
.btn-ghost:hover{border-color:var(--gold); color:var(--gold);}
.btn-large{padding:1.15rem 2.4rem; font-size:1.1rem;}

.hero-visual{perspective:1200px;}
.hero-tilt{width:100%; transition:transform .1s ease-out; transform-style:preserve-3d;}
.hero-media{
  position:relative; aspect-ratio:4/5; border-radius:24px; overflow:hidden;
  background:linear-gradient(160deg,#1b1b28,#0c0c12);
  border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center;
}
.hero-media img{width:100%; height:100%; object-fit:cover; display:block;}
.hero-media.placeholder::before{
  content:'התמונה שלך תופיע כאן\A assets/photos/hero.jpg';
  white-space:pre-line; text-align:center; color:var(--text-dim); font-size:.95rem; padding:2rem;
}
.hero-frame-glow{
  position:absolute; inset:-2px; border-radius:26px; z-index:-1;
  background:linear-gradient(135deg,var(--gold),var(--violet));
  opacity:.35; filter:blur(24px);
}

.scroll-hint{position:absolute; bottom:2rem; inset-inline:0; display:flex; justify-content:center; z-index:1;}
.scroll-hint span{
  width:26px; height:42px; border:2px solid var(--border); border-radius:14px; position:relative;
}
.scroll-hint span::before{
  content:''; position:absolute; top:6px; left:50%; transform:translateX(-50%);
  width:4px; height:8px; background:var(--gold); border-radius:2px;
  animation:scrolldown 1.6s infinite;
}
@keyframes scrolldown{0%{opacity:1; top:6px;} 70%{opacity:0; top:22px;} 100%{opacity:0; top:6px;}}

/* trust bar */
#trust{padding:clamp(3.5rem,6vw,5.5rem) 2rem; position:relative; z-index:1; zoom:1.15;}
.trust-label{text-align:center; color:var(--text); font-family:var(--font-head);
  font-size:clamp(1.75rem,2.6vw,2.5rem); font-weight:800; letter-spacing:-.01em;
  line-height:1.2; margin-bottom:2.75rem;}
.trust-strip{display:flex; flex-wrap:wrap; gap:2rem 3.25rem; justify-content:center; align-items:center;}
/* press logos: optically matched sizes — square brand tiles vs. wordmarks */
.press-chip img[src*="press-01"], .logo-tile img[src*="press-01"]{max-height:44px; max-width:230px;}
.press-chip img[src*="press-04"], .logo-tile img[src*="press-04"]{max-height:38px; max-width:190px;}
.press-chip img[src*="press-02"], .logo-tile img[src*="press-02"],
.press-chip img[src*="press-03"], .logo-tile img[src*="press-03"]{
  max-height:74px; max-width:74px; border-radius:8px;
}

/* ABOUT — video column left, content right.
   The colours around the video are sampled from the video itself at runtime (js/main.js),
   so its edges dissolve into the page. The video file is never filtered or altered. */
#about{
  position:relative; background:#111117; overflow:hidden;
}
.about-collage{
  display:grid; grid-template-columns:minmax(0,44%) 1fr; align-items:start;
  min-height:88vh; position:relative; z-index:1;
}
/* video column: video at its own aspect, edges feathered into the page — no frame, no crop */
.collage-media--main{
  position:relative; align-self:stretch; display:block; overflow:visible;
  background:transparent; min-height:calc(97vh + clamp(5rem,10vh,9rem));
}
/* the video's top edge sits on the "עליי" line — never above it */
.collage-media--main .video-fit{
  position:absolute; top:calc(clamp(5rem,10vh,9rem) - 20px); left:0; right:0; height:97vh; width:auto;
  aspect-ratio:2160/3840; display:block; margin-inline:auto;
}
.collage-media--main video{
  display:block; background:transparent;
  width:100%; height:100%; object-fit:contain; object-position:center;
}
/* nothing is drawn over the picture */
/* content column — editorial rhythm: comfortable breathing room, centred against the video */
.collage-content{
  display:flex; flex-direction:column; justify-content:flex-start;
  padding:clamp(5rem,10vh,9rem) clamp(3rem,5.5vw,7rem);
  gap:1.9rem;
}
.collage-content .section-kicker{margin-bottom:.25rem; font-size:1.6rem;}
.about-headline{
  font-size:clamp(2.4rem,3.3vw,3.3rem); line-height:1.16; margin:0; font-weight:900;
}
.collage-quote{
  font-family:var(--font-body); font-style:normal; font-weight:500;
  font-size:clamp(1.2rem,1.5vw,1.45rem); color:var(--text); line-height:1.6;
  margin:0; max-width:50ch;
}
.collage-quote em, .about-headline em{ font-style:normal; color:var(--gold); }
.collage-text{margin:0; max-width:50ch;}
.collage-text p{color:var(--text-dim); margin-bottom:1.05rem; font-size:1.24rem; font-weight:400; line-height:1.8;}
.collage-text strong{color:var(--text); font-weight:600;}
.collage-text p:last-child{margin-bottom:0;}
.about-points{max-width:52ch;}
.about-points{
  margin:.5rem 0 0; padding-top:1.75rem; border-top:1px solid var(--border);
  display:flex; flex-direction:column; gap:.9rem; padding-inline-start:1.4rem;
}
.about-points li{color:var(--text); position:relative; font-size:1.05rem; line-height:1.5;}
.about-points li::marker{color:var(--gold);}

/* GIANT SPLIT STATEMENT */
#giant-split{
  display:grid; grid-template-columns:1fr 1fr; position:relative; z-index:1;
}
.giant-block{
  min-height:56vh; display:flex; flex-direction:column; justify-content:center; align-items:center;
  text-decoration:none; text-align:center; padding:4rem 2.5rem; gap:.3rem;
  transition:background .4s, transform .4s; position:relative; overflow:hidden;
}
.giant-block--brands{background:var(--gold); color:#0a0a0a;}
.giant-block--orgs{background:#101014; color:var(--text); border-inline-start:1px solid var(--border);}
.giant-word{
  font-family:var(--font-head); font-weight:900; line-height:.95;
  font-size:clamp(2.6rem,5.5vw,5rem); letter-spacing:-.02em;
}
.giant-sub{
  margin-top:1.75rem; font-size:1.15rem; max-width:32ch; line-height:1.6; opacity:.9; font-weight:400;
}
.giant-block::after{
  content:'←'; margin-top:1.5rem; font-size:1.8rem; opacity:0; transform:translateX(10px);
  transition:opacity .3s, transform .3s;
}
.giant-block:hover::after{ opacity:1; transform:translateX(0); }
.giant-block--brands:hover{background:#e8c04a;}
.giant-block--orgs:hover{background:#16161c;}
.giant-block--orgs .giant-word{color:var(--gold);}

/* SERVICES */
.services-tabs{display:flex; gap:1rem; justify-content:center; margin:2.5rem 0;}
.tab-btn{
  background:none; border:1px solid var(--border); color:var(--text-dim);
  padding:.7rem 1.6rem; border-radius:999px; cursor:pointer; font-size:1rem; transition:all .2s;
}
.tab-btn.active{background:var(--gold); color:#100c00; border-color:var(--gold); font-weight:600;}
.services-panel{display:none;}
.services-panel.active{display:block;}
.service-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:3rem;}
.service-card{
  background:var(--panel); border:1px solid var(--border); border-radius:16px; padding:2.5rem;
  transition:transform .2s, border-color .2s;
}
.service-card:hover{transform:translateY(-4px); border-color:var(--gold);}
.service-num{
  display:block; font-family:var(--font-head); font-weight:900; font-size:1rem;
  color:var(--gold); letter-spacing:.2em; margin-bottom:1.25rem;
}
.service-card h3{margin-bottom:1rem; color:var(--text); font-size:1.35rem; font-weight:700;}
.service-card p{color:var(--text-dim); line-height:1.7;}

/* PORTFOLIO — featured work */
.section-inner--work{max-width:1720px;}
#portfolio .section-kicker{font-size:1.5rem; letter-spacing:.14em; margin-bottom:1.5rem;}
#portfolio h2{font-size:clamp(3rem,5.6vw,4.6rem);}
.work-quote{
  max-width:24ch; margin:0 auto 4rem; text-align:center;
  font-family:var(--font-head); font-weight:500; font-style:italic;
  font-size:clamp(1.5rem,2.2vw,2.1rem); line-height:1.45; color:var(--text);
  text-wrap:balance;
}
.work-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:clamp(2rem,3.5vw,3.5rem);}
.work-card{margin:0;}
.work-frame{
  display:block; width:100%; padding:0; border:1px solid var(--border); cursor:pointer;
  position:relative; aspect-ratio:16/9; overflow:hidden; border-radius:14px;
  background:var(--panel); appearance:none;
}
.work-frame img{width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s, opacity .3s;}
.work-frame:hover img{transform:scale(1.04); opacity:.85;}
.work-frame iframe{position:absolute; inset:0; width:100%; height:100%; border:0;}
.work-play{
  position:absolute; inset:0; margin:auto; width:96px; height:96px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(10,10,14,.55); backdrop-filter:blur(6px);
  border:1px solid rgba(255,255,255,.35); color:#fff; font-size:1.5rem; line-height:1;
  transition:background .3s, transform .3s;
}
.work-frame:hover .work-play{background:var(--gold); color:#0a0a0e; transform:scale(1.08);}
.work-card figcaption{padding-top:1.5rem;}
.work-card h3{font-family:var(--font-head); font-size:1.75rem; font-weight:800; margin-bottom:.55rem;}
.work-card figcaption p{color:var(--text-dim); font-size:1.12rem; line-height:1.7;}

/* PORTFOLIO */
.portfolio-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem;}
.portfolio-item{
  position:relative; aspect-ratio:4/5; border-radius:16px; overflow:hidden; cursor:pointer;
  border:1px solid var(--border); background:var(--panel);
}
.portfolio-item img{width:100%; height:100%; object-fit:cover; transition:transform .4s;}
.portfolio-item:hover img{transform:scale(1.06);}
.portfolio-item .pf-caption{
  position:absolute; inset-inline:0; bottom:0; padding:1.2rem;
  background:linear-gradient(to top, rgba(0,0,0,.85), transparent);
}
.portfolio-item .pf-caption h4{color:#fff; font-size:1rem; font-family:var(--font-head);}
.portfolio-item .play-badge{
  position:absolute; top:1rem; left:1rem; background:rgba(0,0,0,.55); color:#fff;
  width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center;
}
.empty-note{grid-column:1/-1; text-align:center; color:var(--text-dim); padding:2rem; border:1px dashed var(--border); border-radius:16px;}

/* PRESS */
#press .section-kicker{font-size:1.5rem; letter-spacing:.14em; margin-bottom:1.5rem;}
#press h2{font-size:clamp(3rem,5.6vw,4.6rem); margin-bottom:3.5rem;}
.feature-story{
  display:grid; grid-template-columns:1.35fr 1fr; gap:clamp(2rem,4vw,4rem); align-items:center;
}
.feature-media .work-frame{aspect-ratio:16/9;}
.feature-body{display:flex; flex-direction:column; gap:1.15rem; align-items:flex-start;}
.feature-body h3{font-family:var(--font-head); font-size:clamp(1.6rem,2.2vw,2.15rem); font-weight:800; line-height:1.25;}
.feature-body p{color:var(--text-dim); font-size:1.12rem; line-height:1.8;}
.feature-link{
  margin-top:.5rem; color:var(--gold); font-weight:600; font-size:1.05rem;
  text-decoration:none; border-bottom:1px solid currentColor; padding-bottom:2px;
}
.feature-link:hover{color:var(--text);}
.press-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem;}
.press-card{
  background:var(--panel); border:1px solid var(--border); border-radius:18px; padding:2rem 1.75rem;
  text-decoration:none; color:var(--text); display:flex; flex-direction:column; gap:1.5rem;
  transition:transform .2s, border-color .2s; align-items:flex-start; min-height:230px;
}
.press-card .press-chip{margin-bottom:auto;}
.press-card:hover{transform:translateY(-4px); border-color:var(--gold);}
.press-chip{
  height:78px; display:inline-flex; align-items:center; justify-content:flex-start;
}
.press-chip img{max-height:74px; max-width:230px; object-fit:contain; display:block; opacity:.95;}
.press-card h4{font-family:var(--font-head); font-size:1.3rem; font-weight:700;}
.press-card p{color:var(--text-dim); font-size:1.05rem; font-style:italic; line-height:1.6;}

/* CLIENTS — seamless marquee */
.clients-marquee{
  position:relative; z-index:1; overflow:hidden; padding:1rem 0 .5rem;
  direction:ltr; /* the strip is laid out LTR so it can travel leftward seamlessly */
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
.clients-track{
  display:flex; gap:3.5rem; width:max-content; align-items:center;
  animation:marquee 60s linear infinite; will-change:transform;
}
.clients-marquee:hover .clients-track{ animation-play-state:paused; }
@keyframes marquee{
  from{ transform:translateX(0); }
  to{ transform:translateX(-33.333%); }
}
@media (prefers-reduced-motion: reduce){ .clients-track{ animation:none; } }

/* CONTACT */
#contact{padding:2rem;}
.contact-inner{text-align:center; max-width:640px; margin:0 auto; padding:5rem 1rem;}
.contact-inner p{color:var(--text-dim); margin:1rem 0 2rem; font-size:1.1rem;}

footer{text-align:center; padding:2rem; color:var(--text-dim); font-size:.85rem; position:relative; z-index:1;}

/* LIGHTBOX */
.lightbox{
  position:fixed; inset:0; background:rgba(4,4,8,.92); z-index:1000;
  display:none; align-items:center; justify-content:center; padding:2rem;
}
.lightbox.open{display:flex;}
.lightbox-inner{width:min(900px,100%); position:relative;}
.lightbox-inner iframe{width:100%; aspect-ratio:16/9; border:0; border-radius:12px;}
.lightbox-close{
  position:absolute; top:-2.5rem; left:0; background:none; border:none; color:#fff; font-size:1.4rem; cursor:pointer;
}

/* REVEAL ANIMATION */
.reveal{opacity:0; transform:translateY(24px); transition:opacity .8s ease, transform .8s ease;}
.reveal.in-view{opacity:1; transform:translateY(0);}

/* RESPONSIVE */
@media (max-width: 900px){
  .hero-inner{grid-template-columns:1fr; text-align:center;}
  .hero-stats{justify-content:center;}
  .hero-cta{justify-content:center;}
  .about-collage{grid-template-columns:1fr; min-height:auto;}
  .collage-media--main{align-self:auto; min-height:70vh;}
  .collage-media--main .video-fit{position:relative; top:0; height:auto; width:min(100%, calc(70vh * 0.5625));}
  .collage-content{padding:3rem 1.5rem; height:auto; justify-content:flex-start; gap:1.75rem; zoom:1 !important;}
  .about-points{grid-template-columns:1fr; text-align:start;}
  #giant-split{grid-template-columns:1fr;}
  .giant-block{min-height:48vh;}
  .giant-block--orgs{border-inline-start:none; border-top:1px solid var(--border);}
  .service-cards{grid-template-columns:1fr;}
  .work-grid{grid-template-columns:1fr;}
  .feature-story{grid-template-columns:1fr;}
  .portfolio-grid{grid-template-columns:repeat(2,1fr);}
  .press-grid{grid-template-columns:repeat(2,1fr);}
  .logo-tile{width:150px; height:80px;}
}
@media (max-width: 560px){
  .portfolio-grid{grid-template-columns:1fr;}
  .logo-tile{width:130px; height:78px; padding:1rem;}
}
