  :root{
    --ink:#0A0A0A;
    --ink-soft:#1A1A1A;
    --paper:#FFFFFF;
    --paper-dim:#F2F2F2;
    --blue:#0A0A0A;
    --amber:#F5A623;
    --grey:#6B6B6B;
    --line: rgba(10,10,10,0.12);
    --line-light: rgba(255,255,255,0.16);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family: "Poppins", -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    background:var(--paper);
    color:var(--ink);
    line-height:1.5;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{
    font-family: "Poppins", "Helvetica Neue", Arial, sans-serif;
    font-weight:700;
    letter-spacing:-0.02em;
    line-height:1.05;
    text-transform:none;
  }
  a{color:inherit; text-decoration:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:1240px; margin:0 auto; padding:0 40px;}
  ::selection{background:var(--blue); color:var(--paper);}

  /* focus visibility */
  a:focus-visible, button:focus-visible{outline:3px solid var(--amber); outline-offset:3px;}

  @media (prefers-reduced-motion: reduce){
    *{animation:none !important; transition:none !important;}
  }

  /* NAV */
  header{
    position:fixed; top:0; left:0; right:0; z-index:100;
    background:transparent;
    border-bottom:none;
    transition:background .3s ease;
  }
  header.solid{background:rgba(255,255,255,0.92); backdrop-filter:blur(10px); border-bottom:1px solid var(--line);}
  .nav-inner{
    display:flex; align-items:center; justify-content:space-between;
    padding:30px 40px;
    max-width:1400px; margin:0 auto;
  }
  .logo{font-family:"Poppins",sans-serif; font-weight:700; font-size:24px; letter-spacing:-0.01em;}
  .logo span{color:var(--amber);}
  header.dark-ctx .logo{color:#fff;}
  nav ul{list-style:none; display:flex; gap:36px;}
  nav a{font-size:14px; font-weight:600; position:relative; padding-bottom:3px;}
  nav a::after{content:""; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--blue); transition:width .25s ease;}
  nav a:hover::after{width:100%;}
  .nav-cta{
    border:none; background:var(--amber); color:#0A0A0A; padding:12px 24px 12px 26px; border-radius:999px; font-size:13px; font-weight:700;
    transition: transform .2s ease, opacity .2s ease; display:inline-flex; align-items:center; gap:10px;
  }
  .nav-cta::after{content:"\2192"; display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:#0A0A0A; color:var(--amber); font-size:13px;}
  .nav-cta:hover{transform:translateY(-2px);}
  .menu-toggle{display:grid; place-items:center; gap:5px; background:none; border:none; width:44px; height:40px; cursor:pointer; padding:0; position:relative;}
  .menu-toggle span{width:26px; height:2px; background:var(--ink); transition:transform .25s ease, opacity .2s ease;}
  header.dark-ctx .menu-toggle span{background:#fff;}
  header.open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  header.open .menu-toggle span:nth-child(2){opacity:0;}
  header.open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  .mobile-only{display:none;}
  nav{
    position:fixed; inset:0; z-index:99; background:#0A0A0A;
    display:flex; align-items:center; justify-content:center;
    opacity:0; pointer-events:none; transition:opacity .3s ease;
  }
  header.open nav{opacity:1; pointer-events:auto;}
  nav ul{flex-direction:column; align-items:center; gap:18px;}
  nav a{color:#fff; font-size:clamp(28px,5vw,48px); font-weight:700;}
  nav a::after{background:var(--amber);}
  .outline-text{color:transparent; -webkit-text-stroke:1.5px var(--ink); text-stroke:1.5px var(--ink);}
  .section-dark .outline-text, .hero .outline-text{-webkit-text-stroke-color:#fff; text-stroke-color:#fff;}
  .deco{position:absolute; z-index:0; opacity:.35; pointer-events:none;}
  .side-label{
    position:fixed; top:50%; z-index:90; font-size:11px; font-weight:700; letter-spacing:.14em;
    text-transform:uppercase; color:var(--grey); writing-mode:vertical-rl;
  }
  .side-label.left{left:26px; transform:translateY(-50%) rotate(180deg);}
  .side-label.right{right:26px; transform:translateY(-50%);}
  @media (max-width:900px){ .side-label{display:none;} }
  .work-result{font-size:13px; font-weight:700; color:var(--amber); margin-top:16px;}
  .work-result::before{content:"\2197 "; color:var(--amber);}
  .work-card:hover .work-result{color:var(--amber);}
  footer{background:var(--ink); color:#8B90A3; border-top:1px solid var(--line-light); font-size:13px;}
  .footer-inner{max-width:1240px; margin:0 auto; padding:28px 40px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px;}
  .footer-inner a{color:var(--paper); margin-left:22px; font-weight:600;}
  .footer-inner a:first-child{margin-left:0;}
  .footer-inner a:hover{color:var(--amber);}
  .form-status.err{color:#FF9B9B;}
  [hidden]{display:none !important;}
  section[id]{scroll-margin-top:70px;}
  nav a.active::after{width:100%;}
  #progress{position:fixed; top:0; left:0; right:0; height:3px; background:var(--amber); transform:scaleX(0); transform-origin:left; z-index:101;}
  .logos{display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:12px 40px; padding:30px 40px; border-bottom:1px solid var(--line);}
  .logos small{font-size:12px; font-weight:700; color:var(--grey); letter-spacing:.06em; text-transform:uppercase;}
  .logos span{font-family:"Arial Black",sans-serif; font-size:14px; text-transform:uppercase; color:var(--grey);}
  .steps{display:grid; grid-template-columns:repeat(4,1fr); gap:28px;}
  .step{border-top:2px solid var(--ink); padding-top:16px;}
  .step b{font-family:"Arial Black",sans-serif; font-size:34px; color:var(--amber); display:block;}
  .step h3{font-size:20px; margin:8px 0;}
  .step p{font-size:14px; color:var(--grey);}
  .faq{max-width:820px;}
  .faq details{border-bottom:1px solid var(--line); padding:18px 0;}
  .faq summary{cursor:pointer; font-weight:700; list-style:none; display:flex; justify-content:space-between; gap:20px;}
  .faq summary::-webkit-details-marker{display:none;}
  .faq summary::after{content:"+"; color:var(--amber); font-size:22px; line-height:1;}
  .faq details[open] summary::after{content:"\2212";}
  .faq summary:focus-visible{outline:3px solid var(--amber); outline-offset:4px;}
  .faq details p{margin-top:10px; color:var(--grey); max-width:720px;}
  .audit{background:var(--amber); color:var(--ink);}
  .audit-inner{max-width:1240px; margin:0 auto; padding:48px 40px; display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap;}
  .audit h2{font-size:clamp(26px,3.4vw,40px);}
  .audit p{margin-top:8px; font-weight:600;}
  .audit-btn{display:inline-flex; align-items:center; gap:12px; background:var(--ink); color:#fff; padding:14px 12px 14px 26px; font-weight:700; font-size:14px; border-radius:999px;}
  .audit-btn::after{content:"\2192"; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:var(--amber); color:#0A0A0A; font-size:12px;}
  .audit-btn:hover{background:#1a1a1a;}
  .wa-float{position:fixed; right:20px; bottom:20px; z-index:90; display:flex; align-items:center; gap:8px; background:#25D366; color:#fff; padding:13px 18px; border-radius:999px; font-weight:700; font-size:14px; box-shadow:0 6px 20px rgba(0,0,0,.25); transition:transform .2s ease;}
  .wa-float:hover{transform:translateY(-2px);}
  #to-top{position:fixed; right:24px; bottom:84px; width:44px; height:44px; border-radius:50%; background:var(--ink); color:var(--paper); display:grid; place-items:center; font-size:18px; opacity:0; pointer-events:none; transition:opacity .25s ease; z-index:90;}
  #to-top.show{opacity:1; pointer-events:auto;}
  .hp{position:absolute; left:-9999px; height:0; width:0; opacity:0;}

  /* HERO */
  .hero{
    min-height:100vh;
    display:flex; flex-direction:column; justify-content:center;
    padding:150px 40px 90px;
    position:relative;
    border-bottom:none;
    overflow:hidden;
    background:#0A0A0A; color:#fff;
  }
  .hero-eyebrow{color:#B8B8B8 !important;}
  .hero-copy{color:#C9C9C9 !important;}
  .hero .btn-outline{border-color:#fff; color:#fff;}
  .hero .btn-outline::after{background:#fff; color:#0A0A0A;}
  .hero-glow{
    position:absolute; inset:0; z-index:0; pointer-events:none;
    background:
      radial-gradient(560px circle at var(--gx,20%) var(--gy,30%), rgba(27,44,82,0.18), transparent 60%),
      radial-gradient(420px circle at calc(var(--gx,20%) + 30%) calc(var(--gy,30%) + 40%), rgba(198,161,91,0.16), transparent 60%);
    transition: background .4s ease;
  }
  .hero-grid{
    position:absolute; inset:0; z-index:0; pointer-events:none; opacity:.5;
    background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);
    background-size:64px 64px;
    mask-image: radial-gradient(circle at 30% 30%, black, transparent 75%);
  }
  .hero-inner{max-width:1240px; margin:0 auto; width:100%; position:relative; z-index:1;}
  .hero h1 .word{
    display:inline-block; overflow:hidden; vertical-align:top;
  }
  .hero h1 .word span{
    display:inline-block;
    transform:translateY(110%);
    animation: wordUp .8s cubic-bezier(.19,1,.22,1) forwards;
  }
  @keyframes wordUp{ to{ transform:translateY(0); } }
  .hero-eyebrow, .hero-sub{
    opacity:0; animation: fadeUp .8s ease forwards;
  }
  .hero-eyebrow{animation-delay:.1s;}
  .hero-sub{animation-delay:.9s;}
  @keyframes fadeUp{ from{opacity:0; transform:translateY(14px);} to{opacity:1; transform:translateY(0);} }
  .hero-eyebrow{
    display:flex; align-items:center; gap:12px; margin-bottom:26px;
    font-size:13px; letter-spacing:0.03em; color:var(--grey); font-weight:600;
  }
  .dot{width:7px; height:7px; border-radius:50%; background:var(--amber); flex:none;
    animation: pulse 2.4s ease-in-out infinite;}
  @keyframes pulse{0%,100%{opacity:1;} 50%{opacity:.35;}}
  .hero h1{
    font-size: clamp(46px, 7.4vw, 108px);
    max-width:1150px;
  }
  .hero h1 em{
    font-style:normal; color:var(--blue);
  }
  .hero-sub{
    display:flex; gap:60px; margin-top:44px; flex-wrap:wrap;
    align-items:flex-end; justify-content:space-between;
  }
  .hero-copy{max-width:420px; font-size:17px; color:#3A3F4E;}
  .hero-cta{
    display:flex; gap:16px; flex-wrap:wrap;
  }
  .btn{
    display:inline-flex; align-items:center; gap:12px; padding:14px 12px 14px 26px; font-weight:700; font-size:14px;
    border-radius:999px; letter-spacing:0.01em; border:1.5px solid var(--ink);
    transition: transform .2s ease, background .2s ease, color .2s ease;
  }
  .btn-solid{background:var(--amber); color:#0A0A0A; border-color:var(--amber);}
  .btn-solid::after{content:"\2192"; display:grid; place-items:center; width:26px; height:26px; border-radius:50%; background:#0A0A0A; color:var(--amber);}
  .btn-solid:hover{transform:translateY(-2px);}
  .btn-outline{background:transparent; border-color:var(--ink);}
  .btn-outline::after{content:"\2192"; display:grid; place-items:center; width:26px; height:26px; border-radius:50%; background:var(--ink); color:#fff;}
  .btn-outline:hover{transform:translateY(-2px);}
  .link-arrow{display:inline-flex; align-items:center; gap:14px; font-weight:700; font-size:14px; letter-spacing:.04em; text-transform:uppercase; border:none; background:none; padding:0;}
  .link-arrow::after{content:"\2192"; display:grid; place-items:center; width:38px; height:38px; border-radius:50%; border:1.5px solid currentColor; font-size:14px;}
  .hero .link-arrow{color:#fff;}
  .link-arrow:hover::after{background:var(--amber); border-color:var(--amber); color:#0A0A0A;}
  .scroll-badge{
    position:absolute; inset:0; z-index:2;
  }
  .scroll-badge .ring-text{animation:spin 12s linear infinite; transform-origin:55px 55px;}
  @keyframes spin{ to{ transform:rotate(360deg);} }
  .scroll-badge .core{position:absolute; inset:28px; background:var(--amber); border-radius:50%; display:grid; place-items:center; color:#0A0A0A; font-size:18px;}
  .scroll-badge-wrap{width:110px; height:110px;}
  @media (max-width:900px){ .scroll-badge-wrap{display:none;} }
  .scroll-badge-wrap .core{position:absolute; inset:28px; border-radius:50%; background:var(--amber); display:grid; place-items:center; color:#0A0A0A; font-size:16px; transition:transform .2s ease;}
  .scroll-badge-wrap:hover .core{transform:scale(1.08);}

  /* MARQUEE */
  .marquee-section{
    background:var(--ink); color:var(--paper); padding:26px 0; overflow:hidden;
    border-bottom:1px solid var(--line-light);
  }
  .marquee-track{
    display:flex; white-space:nowrap; width:max-content;
    animation: scroll 28s linear infinite;
    font-family:"Arial Black",sans-serif; font-weight:900; text-transform:uppercase;
    font-size:20px; letter-spacing:0.02em;
  }
  .marquee-track span{padding:0 34px; opacity:.9;}
  .marquee-track span.accent{color:var(--amber);}
  @keyframes scroll{
    from{transform:translateX(0);}
    to{transform:translateX(-50%);}
  }

  /* SECTION LABEL */
  .section{padding:120px 0; border-bottom:1px solid var(--line);}
  .section-dark{background:#0A0A0A; color:#fff; border-bottom:none;}
  .section-dark .section-head p, .section-dark .step p{color:#B8B8B8;}
  .section-dark .step{border-top-color:rgba(255,255,255,0.25);}
  .section-tag{
    font-size:13px; font-weight:700; color:var(--amber); letter-spacing:0.02em;
    margin-bottom:18px;
  }
  .section-head{
    display:flex; justify-content:space-between; align-items:flex-end; gap:40px;
    margin-bottom:64px; flex-wrap:wrap;
  }
  .section-head h2{font-size:clamp(32px, 4.2vw, 56px); max-width:640px;}
  .section-head p{max-width:340px; color:var(--grey); font-size:15px; padding-bottom:6px;}
  .portfolio-link{
    display:inline-flex; align-items:center; gap:10px; margin-top:10px; font-weight:700; font-size:14px; color:var(--ink);
    border-bottom:none; padding-bottom:2px; transition:color .2s ease;
  }
  .portfolio-link::after{content:"\2192"; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:var(--ink); color:var(--amber); font-size:12px; transition:transform .2s ease;}
  .portfolio-link:hover::after{transform:translateX(4px);}
  .portfolio-link:hover{color:var(--amber); border-color:var(--amber);}

  /* ABOUT */
  .about-grid{display:grid; grid-template-columns: 1.1fr 0.9fr; gap:80px;}
  .about-text p{font-size:19px; color:#2A2E3B; max-width:520px; margin-bottom:20px;}
  .about-text p:last-child{margin-bottom:0;}
  .stats{display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); border:1px solid var(--line);}
  .stat{background:var(--paper); padding:32px 28px;}
  .stat-num{font-family:"Arial Black",sans-serif; font-size:44px; font-weight:900; color:var(--ink);}
  .stat-num span{color:var(--amber);}
  .stat-label{font-size:13px; color:var(--grey); margin-top:8px; max-width:180px;}

  /* SERVICES */
  .services-list{border-top:1px solid var(--line);}
  .service-row{
    display:grid; grid-template-columns: 90px 1fr 1.3fr; gap:30px;
    padding:34px 0; border-bottom:1px solid var(--line);
    align-items:baseline;
    transition: padding-left .3s ease;
  }
  .service-row:hover{padding-left:14px; background:linear-gradient(90deg, rgba(27,44,82,0.06), transparent);}
  .service-num{font-size:14px; color:var(--grey); font-weight:700; font-family:"Arial Black",sans-serif;}
  .service-row h3{font-size:26px; text-transform:none; font-weight:800; letter-spacing:-0.01em;}
  .service-row p{color:var(--grey); font-size:15px; max-width:440px;}

  /* BLOG-STYLE CARDS */
  .blog-grid{display:grid; grid-template-columns:1fr 1fr; gap:60px 50px;}
  .blog-card{border-top:1px solid var(--line); padding-top:28px;}
  .blog-meta{font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--grey); display:flex; gap:14px;}
  .blog-meta .tag{color:var(--amber);}
  .blog-card h3{font-size:clamp(22px,2.4vw,30px); font-weight:700; margin:14px 0 12px; text-transform:none;}
  .blog-card p{color:var(--grey); font-size:15px; max-width:460px; margin-bottom:22px;}
  .blog-read{display:inline-flex; align-items:center; gap:14px; font-weight:700; font-size:13px; letter-spacing:.04em; text-transform:uppercase;}
  .blog-read::after{content:"\2192"; display:grid; place-items:center; width:38px; height:38px; border-radius:50%; background:var(--paper-dim); transition:background .2s ease, color .2s ease;}
  .blog-card:hover .blog-read::after{background:var(--ink); color:var(--amber);}
  @media (max-width:900px){ .blog-grid{grid-template-columns:1fr;} }

  /* WORK */
  .work-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:2px; background:var(--line); border:1px solid var(--line);}
  .work-card{
    background:var(--paper); padding:40px 32px; display:flex; flex-direction:column; gap:18px; min-height:340px;
    transition: background .25s ease;
  }
  .work-card:hover{background:var(--ink); color:var(--paper);}
  .work-card:hover .work-tag, .work-card:hover .work-brands{color:var(--amber);}
  .work-tag{font-size:12px; font-weight:700; color:var(--amber); letter-spacing:0.02em;}
  .work-card h3{font-size:24px; margin-top:6px; text-transform:none; font-weight:800;}
  .work-card p{font-size:14.5px; color:var(--grey); flex:1;}
  .work-card:hover p{color:#C7CBDA;}
  .work-brands{font-size:13px; font-weight:700; margin-top:auto; padding-top:14px; border-top:1px solid var(--line);}
  .work-card:hover .work-brands{border-top-color:var(--line-light);}

  /* TIMELINE */
  .timeline{border-top:1px solid var(--line);}
  .tl-row{
    display:grid; grid-template-columns: 220px 1fr; gap:40px;
    padding:38px 0; border-bottom:1px solid var(--line);
  }
  .tl-role h4{font-size:20px; text-transform:none; font-weight:800;}
  .tl-role .tl-org{color:var(--amber); font-weight:700; font-size:14px; margin-top:4px;}
  .tl-period{font-size:13px; color:var(--grey); font-weight:600; padding-top:4px;}
  .tl-desc{color:#3A3F4E; font-size:15px; max-width:560px;}

  /* CONTACT */
  .contact{
    background:var(--ink); color:var(--paper); padding:140px 0 80px; border-bottom:none;
  }
  .contact h2{font-size:clamp(38px, 6vw, 80px); max-width:900px;}
  .contact-sub{color:#AEB2C4; font-size:18px; max-width:480px; margin-top:26px;}
  .contact-links{display:flex; gap:20px; flex-wrap:wrap; margin-top:48px;}
  .contact-links a{
    border:1.5px solid var(--line-light); padding:16px 28px; font-weight:700; font-size:14px; border-radius:999px;
    transition: background .2s ease, border-color .2s ease, color .2s ease;
  }
  .contact-links a:hover{background:var(--amber); border-color:var(--amber); color:#0A0A0A;}
  .contact-meta{display:flex; justify-content:space-between; margin-top:110px; padding-top:30px; border-top:1px solid var(--line-light); flex-wrap:wrap; gap:16px; font-size:13px; color:#8B90A3;}
  .contact-meta strong{color:var(--paper);}

  /* reveal */
  .reveal{opacity:0; transform:translateY(22px); transition:opacity .7s ease, transform .7s ease;}
  .reveal.in{opacity:1; transform:none;}
  .stat, .service-row, .work-card, .tl-row{
    opacity:0; transform:translateY(18px);
    transition:opacity .6s ease, transform .6s ease, background .25s ease, padding-left .3s ease;
  }
  .reveal.in .stat, .reveal.in .service-row, .reveal.in .work-card, .reveal.in .tl-row{
    opacity:1; transform:translateY(0);
  }
  .stat:nth-child(1), .service-row:nth-child(1), .work-card:nth-child(1), .tl-row:nth-child(1){transition-delay:.05s;}
  .stat:nth-child(2), .service-row:nth-child(2), .work-card:nth-child(2), .tl-row:nth-child(2){transition-delay:.15s;}
  .stat:nth-child(3), .service-row:nth-child(3), .work-card:nth-child(3), .tl-row:nth-child(3){transition-delay:.25s;}
  .stat:nth-child(4), .service-row:nth-child(4), .work-card:nth-child(4), .tl-row:nth-child(4){transition-delay:.35s;}
  .service-row:nth-child(5){transition-delay:.45s;}
  .service-row:nth-child(6){transition-delay:.55s;}
  .work-card{will-change:transform;}
  .work-card:hover{transform:translateY(-6px);}

  /* CONTACT FORM */
  .contact-layout{display:grid; grid-template-columns:1fr 1fr; gap:70px; margin-top:60px;}
  .field{margin-bottom:20px;}
  .field label{display:block; font-size:12px; font-weight:700; letter-spacing:0.03em; text-transform:uppercase; color:#8B90A3; margin-bottom:8px;}
  .field input, .field select, .field textarea{
    width:100%; background:transparent; border:none; border-bottom:1.5px solid var(--line-light);
    color:var(--paper); font-size:16px; font-family:inherit; padding:10px 2px;
    transition:border-color .25s ease;
  }
  .field select option{color:var(--ink);}
  .field textarea{resize:vertical; min-height:70px;}
  .field input:focus, .field select:focus, .field textarea:focus{outline:none; border-color:var(--blue);}
  .field input::placeholder, .field textarea::placeholder{color:#5D6278;}
  .row-2{display:grid; grid-template-columns:1fr 1fr; gap:24px;}
  .submit-btn{
    background:var(--amber); color:#0A0A0A; border:none; padding:16px 34px; font-weight:700; font-size:14px;
    border-radius:999px; cursor:pointer; margin-top:12px; letter-spacing:0.01em;
    transition:transform .2s ease, background .2s ease;
  }
  .submit-btn:hover{transform:translateY(-2px); background:#fff;}
  .form-note{font-size:12.5px; color:#767C93; margin-top:14px; max-width:380px;}
  .form-status{font-size:13.5px; margin-top:14px; font-weight:600; min-height:18px;}
  .form-status.ok{color:#8FE39C;}
  @media (max-width:900px){
    .contact-layout{grid-template-columns:1fr; gap:40px;}
    .row-2{grid-template-columns:1fr;}
  }

  @media (max-width: 900px){
    .wrap, .nav-inner{padding-left:24px; padding-right:24px;}
    .footer-inner{padding:24px;}
    .steps{grid-template-columns:1fr 1fr;}
    .audit-inner{padding:40px 24px;}
    nav a.active{border-left:3px solid var(--amber); padding-left:10px;}
    .about-grid{grid-template-columns:1fr; gap:50px;}
    .work-grid{grid-template-columns:1fr;}
    .service-row{grid-template-columns:1fr; gap:8px;}
    .tl-row{grid-template-columns:1fr; gap:8px;}
    .hero{padding-top:120px;}
    .contact-meta{flex-direction:column;}
  }
  @media (max-width:520px){
    .nav-cta{display:none;}
    .mobile-only{display:block;}
    .footer-inner{flex-direction:column; align-items:flex-start;}
    .steps{grid-template-columns:1fr;}
    .wa-float span{display:none;}
    .wa-float{padding:14px;}
  }

/* PAGE HERO (inner pages) */
.page-hero{
  min-height:52vh; display:flex; flex-direction:column; justify-content:center;
  padding:170px 40px 70px; background:#0A0A0A; color:#fff; position:relative; overflow:hidden;
}
.page-hero .crumb{font-size:13px; color:#B8B8B8; font-weight:600; margin-bottom:18px;}
.page-hero .crumb a{color:#fff;}
.page-hero .crumb a:hover{color:var(--amber);}
.page-hero h1{font-size:clamp(40px,6.4vw,84px); max-width:900px;}
.page-hero p{color:#C9C9C9; font-size:17px; max-width:520px; margin-top:22px;}
