.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-2f0a1ee *//* ---------- CTA ---------- */
  .cta{
    background:var(--blue);
    color:var(--white);
    padding:80px 0;
  }
  .cta-inner{
    display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap;
  }
  .cta h2{font-size:clamp(1.5rem,2.6vw,2rem); font-weight:700; max-width:520px;}
  .cta p{margin-top:10px; color:rgba(255,255,255,0.8); max-width:480px;}

  /* ---------- Footer ---------- */
  footer{ background:var(--ink); background:#0b1622; color:rgba(255,255,255,0.6); padding:80px 0 0; }
  .footer-grid{
    display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px;
    padding-bottom:56px; border-bottom:1px solid rgba(255,255,255,0.1);
  }
  .footer-brand .logo{color:var(--white); margin-bottom:14px;}
  .footer-brand p{font-size:0.88rem; max-width:280px; color:rgba(255,255,255,0.5);}
  footer h4{
    font-family:'IBM Plex Mono', monospace; font-size:0.7rem; letter-spacing:0.08em; text-transform:uppercase;
    color:rgba(255,255,255,0.4); margin-bottom:18px; font-weight:500;
  }
  footer ul{list-style:none; display:flex; flex-direction:column; gap:11px;}
  footer a{font-size:0.9rem; color:rgba(255,255,255,0.68); transition:color 0.15s ease;}
  footer a:hover{color:var(--ice);}
  .bottom-bar{
    display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px;
    padding:26px 0; font-size:0.8rem; color:rgba(255,255,255,0.4);
  }
  .bottom-bar a{color:rgba(255,255,255,0.4);}
  .bottom-bar a:hover{color:var(--ice);}

  /* ---------- Reveal ---------- */
  .reveal{ opacity:0; transform:translateY(14px); transition:opacity 0.6s ease, transform 0.6s ease; }
  .reveal.in{ opacity:1; transform:translateY(0); }

  @media (prefers-reduced-motion: reduce){
    .reveal{ opacity:1; transform:none; transition:none; }
    html{scroll-behavior:auto;}
  }

  /* ---------- Responsive ---------- */
  @media (max-width: 980px){
    .hero-grid{ grid-template-columns:1fr; }
    .plates{ max-width:320px; margin:0 auto; }
    .services-grid{ grid-template-columns:repeat(2,1fr); }
    .resources-grid{ grid-template-columns:repeat(2,1fr); }
    .why-grid{ grid-template-columns:repeat(2,1fr); }
    .footer-grid{ grid-template-columns:1fr 1fr; }
  }
  @media (max-width: 720px){
    .navlinks, .nav-actions .btn-primary{ display:none; }
    .menu-btn{ display:block; }
    .wrap{padding:0 22px;}
    .hero{ padding:140px 0 90px; clip-path: polygon(0 0, 100% 0, 100% 96%, 0 100%);}
    .services-grid{ grid-template-columns:1fr; }
    .resources-grid{ grid-template-columns:1fr; }
    .why-grid{ grid-template-columns:1fr; }
    .why{ clip-path: polygon(0 4%, 100% 0, 100% 100%, 0 100%); padding:100px 0 80px;}
    .cta-inner{ flex-direction:column; align-items:flex-start; }
    .footer-grid{ grid-template-columns:1fr 1fr; gap:32px; }
  }

  .nav-mobile{
    display:none; flex-direction:column; gap:2px;
    background:var(--white); border-bottom:1px solid var(--line);
    position:absolute; top:76px; left:0; right:0;
  }
  .nav-mobile.open{ display:flex; }
  .nav-mobile a{
    padding:16px 22px; font-size:0.95rem; font-weight:500; color:var(--navy);
    border-top:1px solid var(--line);
  }
  .nav-mobile .btn{ margin:14px 22px; }/* End custom CSS */