  .eyebrow.on-dark{color:var(--green-pale);}
  nav a.active{color:var(--ink);}
  nav a.active::after,nav a:hover::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:var(--green); }
  .btn-line:hover{border-color:var(--green); color:var(--green-deep);}
  section{padding:84px 0;}
  .section-head{margin-bottom:44px; max-width:680px;}
  .section-head h2{font-size:clamp(26px,3vw,36px); margin-top:12px;}
  .why-grid{ display:grid; grid-template-columns:0.7fr 1fr 1fr; gap:44px; align-items:start; }
  @media (max-width:860px){ .why-grid{grid-template-columns:1fr; gap:28px;} }
  .why-grid p{color:var(--ink-soft); font-size:15.5px; margin-bottom:14px; max-width:640px;}
  .adv-bg{background:var(--concrete); color:var(--ink);}
  .adv-list{ display:grid; grid-template-columns:repeat(5,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
  @media (max-width:1100px){ .adv-list{grid-template-columns:repeat(3,1fr);} }
  @media (max-width:640px){ .adv-list{grid-template-columns:repeat(2,1fr);} }
  .adv-item{
    border-right:1px solid var(--line); border-bottom:1px solid var(--line);
    padding:28px 24px; display:flex; flex-direction:column; justify-content:space-between;
    min-height:160px; position:relative; overflow:hidden; background:var(--paper);
    transition:background 0.2s ease;
  }
  .adv-item:hover{ background:var(--concrete-deep); }
  .adv-item .n{
    font-family:'ABCNormal',sans-serif; font-size:72px; font-weight:700; line-height:1;
    color:rgba(var(--green-rgb,47,122,77),0.18); position:absolute; bottom:-10px; right:12px;
    pointer-events:none; transition:color 0.2s ease;
  }
  .adv-item:hover .n{ color:rgba(var(--green-rgb,47,122,77),0.40); }
  .adv-item p{ font-size:13.5px; color:var(--ink-soft); line-height:1.55; position:relative; z-index:1; margin:0; }
  .chip-row{display:flex; flex-wrap:wrap; gap:12px;}
  .chip{ border:1px solid var(--line); padding:12px 18px; font-size:13.5px; font-weight:500; }
  .prod-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1px; background:var(--ink);
    border:1px solid var(--ink);
  }
  @media (max-width:860px){ .prod-grid{grid-template-columns:repeat(2,1fr);} }
  .prod-row{
    position:relative; min-height:260px; overflow:hidden;
    display:flex; flex-direction:column; justify-content:flex-end;
    cursor:default;
  }
  .prod-photo{
    position:absolute; inset:0;
    background:var(--concrete-deep);
  }
  .prod-photo img{
    width:100%; height:100%; object-fit:cover; display:block;
    transition:transform 0.5s ease, filter 0.5s ease;
    /* Shown as they are — see the same block in exhibit.css. The grey, the
       blur and the dimming all went on before the overlay, and this page
       carries the identical nine cards. */
    filter:none;
  }
  .prod-row:hover .prod-photo img{ transform:scale(1.04); filter:brightness(1.04); }
  .prod-overlay{
    position:absolute; inset:0;
    background:linear-gradient(to top, rgba(var(--ink-rgb,19,32,27),0.9) 0%, rgba(var(--ink-rgb,19,32,27),0.48) 50%, rgba(var(--ink-rgb,19,32,27),0.12) 100%);
    transition:background 0.3s ease;
  }
  .prod-row:hover .prod-overlay{
    background:linear-gradient(to top, rgba(var(--ink-rgb,19,32,27),0.92) 0%, rgba(var(--ink-rgb,19,32,27),0.58) 50%, rgba(var(--ink-rgb,19,32,27),0.28) 100%);
  }
  .prod-body{
    position:relative; z-index:1;
    padding:24px 26px 26px;
  }
  .prod-body h3{
    font-size:clamp(18px,2vw,24px); font-weight:700;
    color:var(--paper); margin-bottom:10px; line-height:1.1;
  }
  .prod-tags{ display:flex; flex-wrap:wrap; gap:6px; }
  .prod-tag{
    font-size:11px; color:rgba(250,248,242,0.75);
    border:1px solid rgba(250,248,242,0.25); padding:3px 10px;
    background:rgba(250,248,242,0.06);
    transition:background 0.15s, color 0.15s, border-color 0.15s;
  }
  .prod-row:hover .prod-tag{ color:var(--paper); border-color:rgba(var(--green-pale-rgb,143,205,168),0.5); }
  .prod-row:hover .prod-tag:hover{ background:var(--green); border-color:var(--green); color:var(--paper); }
  .profile-grid{ display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
  @media (max-width:640px){ .profile-grid{grid-template-columns:1fr;} }
  .profile-pill{
    display:grid; grid-template-columns:52px 1fr;
    align-items:center; border-bottom:1px solid var(--line); border-right:1px solid var(--line);
    transition:background 0.15s;
    cursor:default;
  }
  .profile-pill:hover{ background:var(--concrete-deep); }
  .profile-pill .pp-num{
    font-family:'ABCNormal',sans-serif; font-size:11px;
    color:var(--green); padding:20px 0 20px 2px; letter-spacing:0.06em;
    border-right:1px solid var(--line); text-align:center;
  }
  .profile-pill .pp-label{
    font-family:'ABCNormal',sans-serif;
    font-size:clamp(14px,1.4vw,18px); font-weight:600; color:var(--ink);
    padding:18px 24px; letter-spacing:-0.01em; line-height:1.2;
    transition:color 0.15s;
  }
  .profile-pill:hover .pp-label{ color:var(--green-deep); }
  .cta-band{ background:var(--green); color:var(--paper); padding:72px 0; }
  .cta-inner{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:28px; }
  .cta-inner h2{color:var(--paper); font-size:clamp(26px,3.4vw,40px); max-width:620px; line-height:1.08;}
  .cta-inner .btn{border-color:var(--paper);}
  .cta-inner .btn-fill{background:var(--ink); border-color:var(--ink); color:var(--paper);}
  .cta-inner .btn-line{color:var(--paper);}
  .cta-inner .btn-line:hover{background:rgba(0,0,0,0.12); color:var(--paper); border-color:var(--paper);}
  .foot-grid a:hover{color:var(--paper);}
  .foot-social a:hover{ color:var(--paper); border-color:var(--green-pale); }
  /* HAMBURGER */
  /* MOBILE NAV OVERLAY */
  /* ═══ MOBILE COMPREHENSIVE ═══ */
  /* Hide actions buttons on very small screens, keep just hamburger */
  /* Logo area tightens on mobile */
  /* Tighter padding on small screens */
  /* Hero */
  @media (max-width:640px){
    .hero{ padding:24px 0 0; }
    .hero-grid{ grid-template-columns:1fr !important; }
    .hero-main{ padding:32px 16px !important; border-right:none !important; }
    .hero h1{ font-size:clamp(28px,8vw,42px) !important; margin:14px 0 18px !important; }
    .hero p.lede{ font-size:15px !important; max-width:100% !important; }
    .hero-actions{ gap:10px; margin-top:24px; }
    .hero-actions .btn{ font-size:13px; padding:12px 18px; }
    .hero-side{ padding:0 !important; }
    .hero-photo-grid{ height:220px !important; }
    .hero-info-strip{ grid-template-columns:1fr 1fr; }
    .hero-info-cell{ padding:14px 16px; }
    .hero-info-cell .val{ font-size:15px; }
  }
  /* Numbers strip */
  @media (max-width:640px){
    .numbers-grid{ grid-template-columns:repeat(2,1fr) !important; }
    .num-cell .figure{ font-size:34px !important; }
    .num-cell .label{ font-size:11px; }
    .num-cell{ padding:20px 14px !important; }
  }
  /* All section headings */
  @media (max-width:640px){
    section{ padding:40px 0 !important; } .hero{ padding:0 !important; } .page-hero{ padding:0 !important; }
    .section-head{ margin-bottom:28px !important; }
    h2{ font-size:clamp(22px,6vw,32px) !important; }
      }
  /* Why/org grids → single column */
  @media (max-width:640px){
    .why-grid,.about-grid,.org-grid,.contact-grid{ grid-template-columns:1fr !important; gap:20px !important; }
    .why-grid p,.org-grid p{ max-width:100% !important; }
  }
  /* Advantages grid → 2 col then 1 col */
  @media (max-width:480px){
    .adv-list{ grid-template-columns:1fr !important; }
    .adv-item{ min-height:130px; }
  }
  /* Products grid */
  @media (max-width:520px){
    .prod-grid{ grid-template-columns:1fr !important; }
    .prod-row{ min-height:200px; }
  }
  /* Exhibitor profile grid */
  @media (max-width:560px){
    .profile-grid{ grid-template-columns:repeat(2,1fr) !important; }
  }
  /* Exhibitor list grid */
  @media (max-width:560px){
    .exh-grid{ grid-template-columns:repeat(2,1fr) !important; }
  }
  /* Sponsor/partner rows */
  @media (max-width:640px){
    .sponsor-row,.mini-row{ grid-template-columns:repeat(2,1fr) !important; }
    .mini-cell{ height:56px !important; }
  }
  /* About / co-locate */
  @media (max-width:640px){
    .colocate-cards{ grid-template-columns:1fr !important; }
    .about-photo{ min-height:220px !important; }
  }
  /* Stand / fee tables */
  @media (max-width:640px){
    .stand-grid,.fee-grid{ grid-template-columns:1fr !important; }
  }
  /* Office cards on contact page */
  @media (max-width:640px){
    .offices-grid{ grid-template-columns:1fr !important; }
  }
  /* CTA band */
  @media (max-width:640px){
    .cta-band{ padding:40px 0 !important; }
    .cta-inner{ flex-direction:column !important; gap:20px !important; align-items:flex-start !important; }
    .cta-inner h2{ font-size:clamp(20px,6vw,28px) !important; }
    .cta-inner .btn-group{ flex-direction:column !important; gap:10px !important; }
  }
  /* Timeline on history */
  @media (max-width:640px){
    .timeline-grid{ grid-template-columns:1fr !important; }
  }
  /* Downloads grid */
  @media (max-width:640px){
    .dl-grid{ grid-template-columns:1fr !important; }
  }
  /* Footer */
  @media (max-width:640px){
    .social-links{ flex-wrap:wrap; }
  }
  /* Video embed */
  @media (max-width:640px){
    .video-wrap{ margin:0 -16px; }
  }
  /* Info cells on contact */
  @media (max-width:640px){
    .form-col,.info-col{ padding:24px 16px !important; }
    .form-row{ grid-template-columns:1fr !important; }
  }
  /* Venue transport cells */
  @media (max-width:640px){
    .transport-grid{ grid-template-columns:1fr !important; }
  }
  /* Exhibitor search / filter row */
  @media (max-width:640px){
    .filter-row{ flex-direction:column !important; gap:10px !important; }
    .letter-row{ gap:4px !important; flex-wrap:wrap; }
    .letter-btn{ font-size:11px !important; padding:6px 8px !important; }
  }
  /* Map */
  @media (max-width:640px){
    .map-wrap{ margin:24px -16px 0 !important; }
  }
  /* PAGE HERO — full-bleed cinematic */
  .page-hero{
    position:relative; min-height:52vh;
    display:flex; flex-direction:column; justify-content:flex-end;
    overflow:hidden; padding:0;
  }
  @media (max-width:640px){ .page-hero{min-height:60vh;} }
  .ph-bg{
    position:absolute; inset:0; background:var(--ink);object-position:center 85%;
  }
  .ph-bg img{
    width:100%; height:100%; object-fit:cover; display:block;
    object-position:center 85%;
    filter:grayscale(20%);
  }
  .ph-overlay{
    position:absolute; inset:0;
    background:linear-gradient(
      to bottom,
      rgba(var(--ink-rgb,19,32,27),0.25) 0%,
      rgba(var(--ink-rgb,19,32,27),0.65) 40%,
      rgba(var(--ink-rgb,19,32,27),0.92) 75%,
      rgba(var(--ink-rgb,19,32,27),0.98) 100%
    );
  }
  .ph-content{
    position:relative; z-index:1;
    padding:0 48px 40px; max-width:1920px; margin:0 auto; width:100%;
  }
  @media (max-width:640px){ .ph-content{padding:0 16px 32px;} }
  .ph-eyebrow{
    font-family:'ABCNormal',sans-serif; font-size:11px; letter-spacing:0.1em;
    text-transform:uppercase; color:var(--green-pale); display:flex; align-items:center;
    gap:10px; margin-bottom:16px;
    text-shadow:0 1px 6px rgba(0,0,0,0.5);
  }
  .page-hero h1{
    font-size:clamp(40px,6vw,80px); font-weight:700; line-height:0.95;
    color:var(--paper); margin:0 0 20px; letter-spacing:-0.02em;
    text-shadow:0 2px 14px rgba(0,0,0,0.35);
  }
  .page-hero .lede{
    font-size:clamp(14px,1.3vw,16.5px); color:rgba(250,248,242,0.68);
    max-width:580px; line-height:1.65; margin-bottom:28px;
  }
  .page-hero-actions{ display:flex; gap:12px; flex-wrap:wrap; }
  .page-hero-actions .btn-fill{
    background:var(--paper); color:var(--ink); border-color:var(--paper);
  }
  .page-hero-actions .btn-fill:hover{ background:var(--green); border-color:var(--green); color:var(--paper); }
  .page-hero-actions .btn-line{
    border-color:rgba(250,248,242,0.4); color:var(--paper);
  }
  .page-hero-actions .btn-line:hover{ border-color:var(--paper); }
  /* ── FORCE LIGHT MODE — overrides iOS/Android dark mode ── */
  @media (prefers-color-scheme: dark) {
    html, body {
      background-color: #FAF8F2 !important;
      color: var(--ink,#13201B) !important;
    }
  }
  /* ── RESPONSIVE NAV ── */
  /* ── MOBILE CONTENT FIXES ── */
  @media (max-width:640px){
    /* Hero — give breathing room from sticky header */
    .hero-content{ padding-top:56px !important; }
    .page-hero .ph-content{ padding-top:48px !important; }
    /* Footer — single column on small phones */
    /* Prevent any section horizontal overflow */
    section{ overflow-x:hidden; }
  }
  @media (max-width:480px){
    /* Hero heading size reduction */
    .hero h1{ font-size:clamp(30px,10vw,48px) !important; }
    .hero-bar{ grid-template-columns:1fr !important; }
    .hero-bar-cell:nth-child(2){ border-top:1px solid rgba(250,248,242,0.18); border-right:none !important; }
    .hero-bar-cell:last-child{ display:block !important; border-top:1px solid rgba(250,248,242,0.18); }
  }
  .adv-item p{ font-size:15px !important; }
  /* Sponsor tier final sizes */
  .sponsor-tier.plat-tier .plat-logo-link img{ max-height:92px !important; max-width:280px !important; filter:none !important; opacity:1 !important; mix-blend-mode:multiply; }
  .sponsor-tier:nth-child(2) .logo-chip img{ max-height:80px !important; }
  .logo-chip img{ max-height:66px !important; }