
  :root{
    --night-950:#0C0F11;
    --night-900:#12161A;
    --night-800:#1B2126;
    --night-700:#242C32;
    --line:#333D43;
    --paper:#181D21;
    --ink-100:#ECEDE9;
    --ink-300:#B9C0BF;
    --ink-500:#7C8A8C;
    --steel-400:#6F8CA3;
    --steel-500:#4E6B80;
    --hazard-300:#F7CD84;
    --hazard-400:#F2B85B;
    --hazard-500:#E8A33D;
    --hazard-600:#C8811F;
    --hazard-700:#8F5A15;
    --hazard-glow: rgba(232,163,61,0.28);
    --hazard-glow-strong: rgba(232,163,61,0.5);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:auto;}
  body{
    background:
      radial-gradient(1100px 700px at 50% -10%, rgba(232,163,61,0.06) 0%, rgba(232,163,61,0) 60%),
      var(--night-950);
    color:var(--ink-100);
    font-family:'IBM Plex Sans', sans-serif;
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
    position:relative;
  }
  h1,h2,h3{font-family:'Space Grotesk', sans-serif; font-weight:600; letter-spacing:-0.01em;}
  .mono{font-family:'IBM Plex Mono', monospace;}
  a{color:inherit; text-decoration:none;}
  img{max-width:100%; display:block;}
  ::selection{background:var(--hazard-500); color:var(--night-950);}
  a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, [tabindex]:focus-visible{
    outline:2px solid var(--hazard-400);
    outline-offset:3px;
    border-radius:2px;
  }

  /* ---------- film grain overlay ---------- */
  .grain{
    position:fixed; inset:0; z-index:150; pointer-events:none;
    opacity:0.035;
    mix-blend-mode:overlay;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
    background-size:180px 180px;
  }

  /* ---------- custom scrollbar ---------- */
  ::-webkit-scrollbar{width:10px;}
  ::-webkit-scrollbar-track{background:var(--night-950);}
  ::-webkit-scrollbar-thumb{background:var(--night-700); border:2px solid var(--night-950); border-radius:6px;}
  ::-webkit-scrollbar-thumb:hover{background:var(--hazard-600);}

  /* ---------- scroll progress ---------- */
  #scroll-progress{
    position:fixed; top:0; left:0; height:2px; width:0%;
    background:linear-gradient(90deg, var(--hazard-600), var(--hazard-400));
    z-index:200;
    box-shadow:0 0 8px var(--hazard-glow);
    transition:width 0.08s linear;
  }
  #scroll-progress::after{
    content:"";
    position:absolute; right:0; top:50%; transform:translate(50%,-50%);
    width:8px; height:8px; border-radius:50%;
    background:var(--hazard-300);
    box-shadow:0 0 10px 3px var(--hazard-glow-strong);
  }

  /* ---------- layout helpers ---------- */
  .wrap{max-width:1180px; margin:0 auto; padding:0 28px;}
  .eyebrow{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    letter-spacing:0.14em;
    text-transform:uppercase;
    color:var(--hazard-400);
    display:flex; align-items:center; gap:10px;
  }
  .eyebrow::before{content:""; width:22px; height:1px; background:var(--hazard-500); display:inline-block;}

  /* ---------- reveal-on-scroll (richer: blur + scale + rise) ---------- */
  .reveal{
    opacity:0;
    transform:translateY(26px) scale(.985);
    filter:blur(6px);
    transition:opacity .8s cubic-bezier(.16,.8,.24,1), transform .8s cubic-bezier(.16,.8,.24,1), filter .8s cubic-bezier(.16,.8,.24,1);
  }
  .reveal.in-view{opacity:1; transform:none; filter:blur(0);}

  /* ---------- hero load-in stagger (fires immediately, not on scroll) ---------- */
  .load-reveal{
    opacity:0;
    transform:translateY(18px);
    transition:opacity .9s cubic-bezier(.16,.8,.24,1), transform .9s cubic-bezier(.16,.8,.24,1);
  }
  body.loaded .load-reveal{opacity:1; transform:none;}

  /* ---------- blueprint grid background with drift + floodlight ---------- */
  .blueprint{
    position:relative;
    background-image:
      linear-gradient(rgba(110,140,163,0.14) 1px, transparent 1px),
      linear-gradient(90deg, rgba(110,140,163,0.14) 1px, transparent 1px);
    background-size:56px 56px;
    overflow:hidden;
  }
  .floodlight{
    position:absolute;
    width:900px; height:900px;
    top:calc(-380px + var(--fy, 0px)); left:calc(50% + var(--fx, 0px));
    transform:translateX(-50%);
    background:radial-gradient(circle, var(--hazard-glow) 0%, rgba(232,163,61,0) 60%);
    pointer-events:none;
    animation:floodPulse 8s ease-in-out infinite;
    z-index:0;
    opacity:0.35;
    transition:left .6s ease, top .6s ease;
  }
  @keyframes floodPulse{
    0%,100%{opacity:0.55; transform:translateX(-50%) scale(1);}
    50%{opacity:0.9; transform:translateX(-50%) scale(1.08);}
  }
  .blueprint::after{
    content:"";
    position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(12,15,17,0) 0%, var(--night-950) 94%);
    pointer-events:none;
  }
  .coord{
    position:absolute;
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    color:var(--ink-500);
    letter-spacing:0.05em;
    z-index:1;
    animation:coordPulse 3.5s ease-in-out infinite;
  }
  @keyframes coordPulse{
    0%,100%{opacity:0.45;}
    50%{opacity:1;}
  }

  /* ---------- header ---------- */
  header{
    position:sticky; top:0; z-index:100;
    background:rgba(12,15,17,0.78);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav{
    display:flex; align-items:center; justify-content:space-between;
    height:76px;
  }
  .logo{
    display:flex; align-items:center; gap:12px;
    font-family:'Space Grotesk', sans-serif;
    font-weight:700; font-size:17px; letter-spacing:-0.01em;
    color:var(--ink-100);
  }
  .logo-mark{
    width:44px; height:44px;
    display:flex; align-items:center; justify-content:center;
    color:var(--ink-100);
    filter:drop-shadow(0 0 10px rgba(232,163,61,0.25));
    transition:filter .3s ease, transform .3s ease;
  }
  .logo:hover .logo-mark{filter:drop-shadow(0 0 16px rgba(232,163,61,0.5)); transform:scale(1.05);}
  .navlinks{display:flex; gap:34px; font-size:14px; color:var(--ink-300);}
  .navlinks a{position:relative; padding-bottom:4px; transition:color .2s ease;}
  .navlinks a::after{
    content:""; position:absolute; left:0; bottom:0; width:0; height:1px;
    background:var(--hazard-500); transition:width .25s ease;
    box-shadow:0 0 8px var(--hazard-glow);
  }
  .navlinks a:hover{color:var(--ink-100);}
  .navlinks a:hover::after{width:100%;}

  .nav-dropdown{position:relative;}
  .nav-dropdown > a{display:inline-flex; align-items:center; gap:5px;}
  .nav-dropdown .caret{font-size:9px; color:var(--ink-500); transition:transform .2s ease;}
  .nav-dropdown:hover .caret, .nav-dropdown:focus-within .caret{transform:rotate(180deg);}
  .dropdown-menu{
    position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(6px);
    background:var(--night-900); border:1px solid var(--line);
    min-width:230px; padding:8px; margin-top:14px; z-index:150;
    opacity:0; visibility:hidden; pointer-events:none;
    transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
    box-shadow:0 16px 32px rgba(0,0,0,.4);
  }
  .nav-dropdown:hover .dropdown-menu, .nav-dropdown:focus-within .dropdown-menu{
    opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0);
  }
  .dropdown-menu a{
    display:block; padding:10px 14px; font-size:13.5px; color:var(--ink-300); white-space:nowrap;
    transition:background .15s ease, color .15s ease;
  }
  .dropdown-menu a::after{display:none;}
  .dropdown-menu a:hover{background:rgba(232,163,61,0.08); color:var(--ink-100);}
  .dropdown-menu .divider{border-top:1px solid var(--line); margin:6px 4px;}

  .mobile-sub{padding-left:44px !important; font-size:13.5px !important; color:var(--ink-500) !important;}

  .navphone{
    font-family:'IBM Plex Mono', monospace;
    font-size:14px;
    border:1px solid var(--ink-100);
    padding:8px 16px;
    color:var(--ink-100);
    display:inline-block;
    transition:background .2s ease, color .2s ease, box-shadow .3s ease;
    will-change:transform;
  }
  .navphone:hover{background:var(--hazard-500); border-color:var(--hazard-500); color:var(--night-950); box-shadow:0 6px 22px var(--hazard-glow);}
  .burger{
    display:none; flex-direction:column; align-items:center; justify-content:center; gap:5px; cursor:pointer; background:none; border:none; padding:0; width:44px; height:44px;
  }
  .burger span{width:22px; height:2px; background:var(--ink-100); display:block; transition:transform .25s ease, opacity .25s ease;}
  .mobile-nav{
    display:none;
    flex-direction:column;
    background:var(--night-900);
    border-bottom:1px solid var(--line);
  }
  .mobile-nav a{padding:16px 28px; border-top:1px solid var(--line); font-size:15px; color:var(--ink-300);}
  .mobile-nav.open{display:flex;}
  @media (max-width:820px){
    .navlinks{display:none;}
    .navphone{display:none;}
    .burger{display:flex;}
  }

  /* ---------- hero ---------- */
  .hero{
    padding:96px 0 64px; position:relative;
    background-image:
      linear-gradient(100deg, rgba(16,13,9,0.82) 0%, rgba(16,13,9,0.48) 30%, rgba(16,13,9,0.08) 55%, rgba(16,13,9,0.08) 100%),
      linear-gradient(180deg, rgba(16,13,9,0.04) 0%, rgba(16,13,9,0.14) 100%),
      url('/images/hero-bg.webp');
    background-size:cover;
    background-position:center 30%;
  }
  .hero .wrap{position:relative; z-index:2;}
  .hero h1{
    font-size:clamp(34px, 5.6vw, 62px);
    line-height:1.04;
    max-width:920px;
    margin:22px 0 26px;
    color:var(--ink-100);
  }
  .hero h1 .grad-text{
    background:linear-gradient(90deg, var(--hazard-300), var(--hazard-600));
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    filter:drop-shadow(0 0 26px rgba(232,163,61,0.22));
  }
  .hero .lede{
    max-width:560px;
    color:var(--ink-300);
    font-size:17px;
    margin-bottom:44px;
  }
  /* ---------- inner page intro (service pages) ---------- */
  .page-intro{padding:56px 0 48px; position:relative;}
  .page-intro .wrap{position:relative; z-index:2;}
  .breadcrumb{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    color:var(--ink-500);
    margin-bottom:20px;
    display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  }
  .breadcrumb a{color:var(--ink-300); transition:color .2s ease;}
  .breadcrumb a:hover{color:var(--hazard-400);}
  .page-intro h1{
    font-size:clamp(30px, 4.4vw, 48px);
    line-height:1.08;
    max-width:820px;
    margin:0 0 20px;
    color:var(--ink-100);
  }
  .page-intro .lede{
    max-width:640px;
    color:var(--ink-300);
    font-size:16.5px;
    margin-bottom:12px;
  }

  .cta-row{display:flex; gap:16px; margin-bottom:64px; flex-wrap:wrap;}
  .btn-primary, .btn-ghost{
    padding:14px 28px;
    font-size:14px;
    font-weight:500;
    display:inline-block;
    position:relative;
    overflow:hidden;
    will-change:transform;
    transition:box-shadow .3s ease, transform .25s cubic-bezier(.16,.8,.24,1), background .3s ease, color .3s ease;
  }
  .btn-primary{background:linear-gradient(135deg, var(--hazard-400), var(--hazard-600)); color:var(--night-950); font-weight:600;}
  .btn-primary:hover{background:linear-gradient(135deg, var(--hazard-300), var(--hazard-500)); box-shadow:0 10px 32px var(--hazard-glow), 0 0 40px var(--hazard-glow); transform:translateY(-2px);}
  .btn-ghost{border:1px solid var(--ink-100); color:var(--ink-100);}
  .btn-ghost:hover{background:var(--ink-100); color:var(--night-950); box-shadow:0 8px 26px rgba(236,237,233,.15); transform:translateY(-2px);}

  /* title-block / stamp component — signature element */
  .stampline{
    border-top:1px solid var(--line);
    display:grid;
    grid-template-columns:repeat(4, 1fr);
  }
  .stampline > div{
    padding:16px 20px;
    border-right:1px solid var(--line);
    transition:background .3s ease;
  }
  .stampline > div:hover{background:rgba(232,163,61,0.05);}
  .stampline > div:last-child{border-right:none;}
  .stampline .k{
    font-family:'IBM Plex Mono', monospace;
    font-size:10.5px;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:var(--ink-500);
    margin-bottom:6px;
  }
  .stampline .v{
    font-family:'Space Grotesk', sans-serif;
    font-weight:600;
    font-size:20px;
    color:var(--ink-100);
  }
  @media (max-width:760px){
    .stampline{grid-template-columns:repeat(2,1fr);}
    .stampline > div:nth-child(2){border-right:none;}
  }

  /* ---------- sections ---------- */
  section{padding:88px 0;}
  .section-head{
    display:flex; justify-content:space-between; align-items:flex-end;
    margin-bottom:46px; gap:24px; flex-wrap:wrap;
  }
  .section-head h2{font-size:clamp(26px,3.4vw,36px); color:var(--ink-100);}
  .section-head .note{max-width:340px; color:var(--ink-300); font-size:14px;}

  /* services grid — spec-sheet cards */
  .services{display:grid; grid-template-columns:repeat(3, 1fr); gap:1px; background:var(--line); border:1px solid var(--line); perspective:900px;}
  .service-card{
    background:var(--paper); padding:32px 28px; display:flex; flex-direction:column; gap:14px;
    position:relative;
    transition:background .3s ease, box-shadow .35s ease;
    will-change:transform;
  }
  .service-card::before{
    content:""; position:absolute; top:0; left:0; right:0; height:2px;
    background:linear-gradient(90deg, var(--hazard-500), transparent 70%);
    opacity:0; transition:opacity .3s ease;
  }
  .service-card:hover{background:var(--night-700); box-shadow:0 20px 40px rgba(0,0,0,.35);}
  .service-card:hover::before{opacity:1;}
  .service-card .tag{font-family:'IBM Plex Mono', monospace; font-size:11px; letter-spacing:0.08em; color:var(--hazard-400);}
  .service-card h3{font-size:19px; color:var(--ink-100);}
  .service-card p{font-size:14.5px; color:var(--ink-300);}
  .card-more{
    margin-top:auto; padding-top:10px;
    font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.04em;
    color:var(--hazard-400); transition:color .2s ease, transform .2s ease;
  }
  .service-card:hover .card-more{color:var(--hazard-300); transform:translateX(3px);}
  @media (max-width:900px){ .services{grid-template-columns:1fr;} }

  /* portfolio real photo cards */
  .portfolio{display:grid; grid-template-columns:repeat(3,1fr); gap:22px; perspective:900px;}
  @media (max-width:900px){ .portfolio{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .portfolio{grid-template-columns:1fr;} }

  .obj-card.real{
    border:1px solid var(--line);
    background:var(--night-950);
    padding:0;
    overflow:hidden;
    position:relative;
    transition:box-shadow .35s ease;
    will-change:transform;
  }
  .obj-card.real:hover{box-shadow:0 22px 44px rgba(0,0,0,0.5), 0 0 0 1px var(--hazard-glow);}
  .obj-card.real img{
    width:100%; height:100%;
    object-fit:cover;
    display:block;
    filter:grayscale(8%) contrast(1.08) brightness(0.97);
    transition:transform .6s ease, filter .6s ease;
  }
  .obj-card.real:hover img{transform:scale(1.06); filter:grayscale(0%) contrast(1.12) brightness(1.03);}
  .obj-caption{
    position:absolute; left:0; right:0; bottom:0;
    padding:16px 18px 14px;
    background:linear-gradient(180deg, rgba(12,15,17,0) 0%, rgba(9,11,12,0.92) 70%);
  }
  .obj-title{
    font-family:'Space Grotesk', sans-serif;
    font-weight:600; font-size:15px;
    color:var(--ink-100);
  }
  .obj-sub{
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    color:var(--ink-300);
    margin-top:4px;
  }

  /* why us */
  .why{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line); perspective:900px;}
  .why-card{background:var(--night-950); padding:30px 24px; position:relative; transition:background .3s ease; will-change:transform;}
  .why-card:hover{background:var(--night-800);}
  .why-card .num{font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--hazard-400); margin-bottom:12px;}
  .why-card h3{font-size:16.5px; margin-bottom:8px; color:var(--ink-100);}
  .why-card p{font-size:13.5px; color:var(--ink-300);}
  @media (max-width:900px){ .why{grid-template-columns:1fr 1fr;} }
  @media (max-width:560px){ .why{grid-template-columns:1fr;} }

  #why.photo-bg{
    position:relative;
    background-image:
      linear-gradient(180deg, rgba(15,13,10,0.94) 0%, rgba(15,13,10,0.80) 35%, rgba(15,13,10,0.94) 100%),
      url('/images/why-bg.webp');
    background-size:cover;
    background-position:center 35%;
  }
  #why.photo-bg .why{background:rgba(27,33,38,0.55); border-color:rgba(51,61,67,0.6);}
  #why.photo-bg .why-card{background:rgba(12,15,17,0.55); backdrop-filter:blur(2px);}
  #why.photo-bg .why-card:hover{background:rgba(27,33,38,0.75);}

  /* contact — styled as full title block */
  .contact-block{
    border:2px solid var(--ink-100);
    padding:0;
    position:relative;
  }
  .contact-block::before{
    content:"";
    position:absolute; top:-1px; left:-1px; right:-1px; height:2px;
    background:linear-gradient(90deg, var(--hazard-500), transparent 60%);
  }
  .contact-top{padding:40px 40px 28px; border-bottom:1px solid var(--line);}
  .contact-top h2{font-size:clamp(24px,3vw,32px); margin-bottom:10px; color:var(--ink-100);}
  .contact-top p{color:var(--ink-300); max-width:480px; font-size:14.5px;}
  .contact-grid{display:grid; grid-template-columns:repeat(4,1fr);}
  .contact-grid > div{padding:22px 26px; border-right:1px solid var(--line); transition:background .3s ease;}
  .contact-grid > div:hover{background:rgba(232,163,61,0.05);}
  .contact-grid > div:last-child{border-right:none;}
  .contact-grid .k{font-family:'IBM Plex Mono', monospace; font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-500); margin-bottom:8px;}
  .contact-grid .v{font-family:'Space Grotesk', sans-serif; font-weight:600; font-size:16px; color:var(--ink-100);}
  @media (max-width:820px){ .contact-grid{grid-template-columns:1fr 1fr;} .contact-grid > div:nth-child(2n){border-right:none;} }
  @media (max-width:560px){ .contact-grid{grid-template-columns:1fr;} .contact-grid > div{border-right:none !important;} }

  /* lead capture form */
  .lead-form{padding:34px 40px 40px; border-bottom:1px solid var(--line);}
  .field-label{
    display:block;
    font-family:'IBM Plex Mono', monospace;
    font-size:10.5px;
    letter-spacing:0.1em;
    text-transform:uppercase;
    color:var(--ink-500);
    margin-bottom:8px;
  }
  .form-row{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px;}
  @media (max-width:640px){ .form-row{grid-template-columns:1fr;} }
  .lead-form input[type="text"], .lead-form input[type="tel"], .lead-form textarea{
    width:100%;
    background:var(--night-900);
    border:1px solid var(--line);
    color:var(--ink-100);
    font-family:'IBM Plex Sans', sans-serif;
    font-size:15px;
    padding:14px 16px;
    transition:border-color .2s ease, box-shadow .2s ease;
  }
  .lead-form input::placeholder, .lead-form textarea::placeholder{color:var(--ink-500);}
  .lead-form input:focus, .lead-form textarea:focus{
    outline:none; border-color:var(--hazard-500);
    box-shadow:0 0 0 3px var(--hazard-glow);
  }
  .lead-form textarea{min-height:96px; resize:vertical; margin-bottom:20px;}
  .hp-field{position:absolute; left:-9999px; width:1px; height:1px; opacity:0;}
  .form-footer{display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;}
  .consent{display:flex; align-items:flex-start; gap:10px; font-size:13px; color:var(--ink-300); max-width:420px; cursor:pointer;}
  .consent input{margin-top:3px; accent-color:var(--hazard-500); width:15px; height:15px; flex:none;}
  .consent a{color:var(--ink-100); text-decoration:underline; text-underline-offset:2px;}
  .consent a:hover{color:var(--hazard-400);}
  .lead-form button[type="submit"]{border:none; cursor:pointer; font-family:'IBM Plex Sans', sans-serif;}
  .lead-form button[type="submit"]:disabled{opacity:.6; cursor:not-allowed;}
  .form-status{margin-top:16px; font-size:13.5px; font-family:'IBM Plex Mono', monospace; min-height:1.2em;}
  .form-status.ok{color:#7fb87a;}
  .form-status.err{color:#e0796b;}
  .field-error{color:#e0796b; font-size:12px; margin:-10px 0 12px; font-family:'IBM Plex Mono', monospace;}

  footer{padding:40px 0; border-top:1px solid var(--line); margin-top:20px;}
  .footer-row{display:flex; justify-content:space-between; flex-wrap:wrap; gap:28px; font-size:12.5px; color:var(--ink-300);}
  .footer-legal{font-family:'IBM Plex Mono', monospace; font-size:11.5px; line-height:1.9;}
  .footer-contacts{font-size:13px; line-height:1.9; text-align:right;}
  .footer-contacts a{transition:color .2s ease; display:inline-block; padding:10px 0;}
  .footer-contacts a:hover{color:var(--hazard-400);}
  @media (max-width:640px){ .footer-contacts{text-align:left;} }

  .footer-bottom{
    margin-top:24px;
    padding-top:20px;
    border-top:1px solid var(--line);
    font-size:12px;
    color:var(--ink-500);
    text-align:center;
  }
  .footer-bottom a{color:var(--ink-500); text-decoration:underline; text-underline-offset:2px; transition:color .2s ease;}
  .footer-bottom a:hover{color:var(--hazard-400);}

  /* cookie consent banner */
  .cookie-banner{
    position:fixed; left:0; right:0; bottom:0; z-index:190;
    background:rgba(18,22,26,0.97);
    backdrop-filter:blur(10px);
    border-top:1px solid var(--line);
    box-shadow:0 -12px 30px rgba(0,0,0,0.35);
    transform:translateY(0);
    animation:cookieRise .5s cubic-bezier(.16,.8,.24,1);
  }
  .cookie-banner[hidden]{display:none;}
  @keyframes cookieRise{ from{transform:translateY(100%);} to{transform:translateY(0);} }
  .cookie-inner{
    padding:20px 28px;
    display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  }
  .cookie-inner p{color:var(--ink-300); font-size:13.5px; max-width:760px; margin:0;}
  .cookie-inner a{color:var(--ink-100); text-decoration:underline; text-underline-offset:2px;}
  .cookie-inner a:hover{color:var(--hazard-400);}
  .cookie-inner .btn-primary{padding:11px 24px; font-size:13.5px; flex:none;}
  @media (max-width:640px){ .cookie-inner{flex-direction:column; align-items:stretch;} .cookie-inner .btn-primary{width:100%; text-align:center;} }

  @media (hover:none){
    .service-card, .obj-card.real, .why-card, .btn-primary, .btn-ghost, .navphone{transform:none !important;}
  }

  @media (prefers-reduced-motion: reduce){
    .blueprint, .floodlight, .coord, .cable-line, .cookie-banner{animation:none;}
    .reveal{opacity:1; transform:none; filter:none; transition:none;}
    .load-reveal{opacity:1; transform:none; transition:none;}
  }
