/*
Theme Name: Dalal 2026
Theme URI: https://www.medicallawyer.co.il/
Author: WebON
Author URI: https://webon.org.il/
Description: תבנית למשרד עו"ד אורי דלאל - רשלנות רפואית.
Version: 2.0.0
Requires PHP: 7.0
Text Domain: dalal-2026
*/

  /* ============ premium dark medical tokens ============ */
  :root{
    --bg0:#06131F;
    --bg1:#08202F;
    --card:#0A2334;
    --card2:#0D2B40;
    --text:#EAF4F6;
    --text2:#C6DBE0;
    --muted:#8EA9B2;
    --line:rgba(148,206,216,.13);
    --line2:rgba(148,206,216,.24);
    --cy:#22D3EE;
    --tl:#2DD4BF;
    --cy-soft:#7DE3F1;
    --grad:linear-gradient(120deg,#22D3EE,#2DD4BF);
    --grad-btn:linear-gradient(120deg,#0C9BB8,#0FB5A2);
    --glow:0 0 44px -10px rgba(34,211,238,.5);
    --ring:#22D3EE;
    --wa:#1FAF5F;
    --r:20px;
  }
  @property --ang{ syntax:'<angle>'; initial-value:0deg; inherits:false; }

  *,*::before,*::after{ box-sizing:border-box; }
  html{ scroll-behavior:smooth; }
  body{
    margin:0;
    background:var(--bg0);
    color:var(--text);
    font-family:'Assistant','Segoe UI',Arial,sans-serif;
    font-size:17px; line-height:1.7;
    direction:rtl;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  /* grain texture */
  body::after{
    content:""; position:fixed; inset:0; z-index:2; pointer-events:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/%3E%3C/svg%3E");
    opacity:.035;
  }
  h1,h2,h3,h4{
    font-family:'Heebo','Segoe UI',Arial,sans-serif;
    line-height:1.25; margin:0; text-wrap:balance; letter-spacing:-.01em;
  }
  p{ margin:0; }
  a{ color:inherit; }
  img,svg{ max-width:100%; }
  button{ font:inherit; cursor:pointer; }
  :focus-visible{ outline:3px solid var(--ring); outline-offset:3px; border-radius:6px; }

  .skip-link{
    position:absolute; top:-64px; right:16px; z-index:300;
    background:var(--card); color:var(--text); padding:10px 18px;
    border:1px solid var(--line2);
    border-radius:0 0 10px 10px; text-decoration:none; font-weight:700;
    transition:top .2s;
  }
  .skip-link:focus{ top:0; }

  .container{ max-width:1220px; margin-inline:auto; padding-inline:24px; position:relative; }

  /* ============ top bar ============ */
  .topbar{
    background:rgba(3,15,21,.9); color:var(--muted); font-size:14.5px;
    border-bottom:1px solid var(--line);
    position:relative; z-index:50;
  }
  .topbar .container{
    display:flex; align-items:center; justify-content:space-between;
    gap:16px; min-height:42px; flex-wrap:wrap; padding-block:5px;
  }
  .topbar a{ color:var(--text2); text-decoration:none; font-weight:600; }
  .topbar a:hover{ color:var(--cy-soft); }
  .topbar .tb-group{ display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
  .topbar .tb-item{ display:inline-flex; align-items:center; gap:8px; }
  .topbar .tb-item svg{ width:15px; height:15px; flex:none; }

  /* ============ header ============ */
  .site-header{
    position:sticky; top:0; z-index:120;
    transition:box-shadow .25s;
  }
  .site-header::after{
    content:""; position:absolute; bottom:0; inset-inline:0; height:1px;
    background:linear-gradient(90deg, transparent 2%, rgba(34,211,238,.45) 50%, transparent 98%);
  }
  .site-header::before{
    content:""; position:absolute; inset:0; z-index:-1;
    background:rgba(4,20,28,.78);
    backdrop-filter:blur(18px) saturate(1.4);
    -webkit-backdrop-filter:blur(18px) saturate(1.4);
    transition:background .25s;
  }
  .site-header.scrolled{ box-shadow:0 18px 50px -20px rgba(0,0,0,.6); }
  .site-header.scrolled::before{ background:rgba(4,20,28,.92); }
  .site-header .container{
    max-width:1400px;
    display:flex; align-items:center; justify-content:space-between;
    gap:18px; min-height:88px;
  }
  .brand{ display:flex; align-items:stretch; gap:14px; text-decoration:none; flex:none; }
  .brand-rule{
    width:3px; flex:none; border-radius:99px; margin-block:3px;
    background:linear-gradient(180deg, #22D3EE, #2DD4BF);
    box-shadow:0 0 14px rgba(34,211,238,.55);
  }
  .brand-txt{ display:flex; flex-direction:column; justify-content:center; line-height:1.1; gap:4px; }
  .brand-name{
    font-family:'Heebo',sans-serif;
    font-weight:900; font-size:23px; letter-spacing:-.01em;
    background:linear-gradient(110deg, #F2F9FA 25%, #7DE3F1 42%, #2DD4BF 52%, #F2F9FA 68%);
    background-size:230% 100%;
    -webkit-background-clip:text; background-clip:text;
    -webkit-text-fill-color:transparent; color:transparent;
    animation:brand-sheen 7s ease-in-out infinite;
  }
  @keyframes brand-sheen{ 0%,100%{ background-position:115% 0; } 45%{ background-position:-15% 0; } }
  .brand-sub{
    font-size:11px; font-weight:700; letter-spacing:.18em;
    color:var(--muted); white-space:nowrap;
  }
  .brand-sm .brand-name{ font-size:19px; }
  .brand-sm .brand-sub{ font-size:9.5px; }
  .main-nav ul{
    list-style:none; margin:0; padding:0;
    display:flex; align-items:center; gap:2px; flex-wrap:wrap;
  }
  .main-nav a{
    display:block; padding:9px 12px; text-decoration:none;
    font-weight:600; font-size:15px; color:var(--text2);
    border-radius:99px; transition:background .15s,color .15s;
  }
  .main-nav a:hover{ background:rgba(34,211,238,.1); color:var(--cy-soft); }
  .header-cta{
    display:inline-flex; align-items:center; gap:9px;
    background:var(--grad-btn); color:#fff;
    padding:12px 24px; border-radius:99px; border:none;
    font-weight:700; font-size:15.5px; text-decoration:none;
    box-shadow:0 10px 30px -10px rgba(15,181,162,.55);
    position:relative; overflow:hidden; white-space:nowrap;
    transition:transform .15s, box-shadow .15s;
  }
  .header-cta:hover{ transform:translateY(-1px); box-shadow:var(--glow); }
  .header-cta svg{ width:16px; height:16px; }
  .menu-toggle{
    display:none; flex:none;
    width:46px; height:46px;
    background:rgba(34,211,238,.08); border:1px solid var(--line2);
    border-radius:12px; color:var(--text);
    align-items:center; justify-content:center;
  }
  .menu-toggle svg{ width:22px; height:22px; display:block; }

  /* ============ buttons ============ */
  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:10px;
    padding:16px 32px; border-radius:99px; font-weight:700; font-size:16.5px;
    text-decoration:none; border:none; position:relative; overflow:hidden;
    transition:transform .15s, box-shadow .2s, border-color .2s;
  }
  .btn svg{ width:18px; height:18px; flex:none; }
  .btn-grad{
    background:var(--grad-btn); color:#fff;
    box-shadow:0 16px 40px -14px rgba(15,181,162,.65);
  }
  .btn-grad::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(115deg, transparent 30%, rgba(255,255,255,.25) 50%, transparent 70%);
    transform:translateX(110%);
    transition:transform .6s ease;
  }
  .btn-grad:hover{ transform:translateY(-2px); box-shadow:var(--glow); }
  .btn-grad:hover::after{ transform:translateX(-110%); }
  .btn-glass{
    background:rgba(255,255,255,.05); color:var(--text);
    border:1px solid var(--line2);
    backdrop-filter:blur(8px);
  }
  .btn-glass:hover{ border-color:var(--cy); color:var(--cy-soft); }

  /* ============ hero ============ */
  .hero{
    position:relative; overflow:hidden; isolation:isolate;
    background:var(--bg0);
  }
  .hero::before{
    content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
    background-image:
      linear-gradient(rgba(151,214,225,.045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(151,214,225,.045) 1px, transparent 1px);
    background-size:46px 46px;
    mask-image:radial-gradient(80% 85% at 50% 15%, #000 25%, transparent 100%);
    -webkit-mask-image:radial-gradient(80% 85% at 50% 15%, #000 25%, transparent 100%);
  }
  .aurora{
    position:absolute; border-radius:50%; filter:blur(80px); z-index:-1;
    pointer-events:none; opacity:.55;
  }
  .aurora.a1{
    width:560px; height:560px; top:-220px; inset-inline-start:-120px;
    background:radial-gradient(circle, rgba(34,211,238,.34), transparent 65%);
    animation:drift1 16s ease-in-out infinite alternate;
  }
  .aurora.a2{
    width:520px; height:520px; bottom:-240px; inset-inline-end:-100px;
    background:radial-gradient(circle, rgba(45,212,191,.3), transparent 65%);
    animation:drift2 20s ease-in-out infinite alternate;
  }
  @keyframes drift1{ to{ transform:translate(60px,50px) scale(1.12); } }
  @keyframes drift2{ to{ transform:translate(-50px,-60px) scale(1.08); } }

  .hero-grid{
    display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr);
    gap:64px; align-items:center;
    padding-block:84px 100px;
  }
  .hero-chip{
    display:inline-flex; align-items:center; gap:10px;
    background:rgba(34,211,238,.08);
    border:1px solid rgba(34,211,238,.28);
    color:var(--cy-soft); font-size:14px; font-weight:700;
    padding:9px 18px; border-radius:99px; margin-bottom:26px;
    backdrop-filter:blur(6px);
  }
  .hero-chip .dot{
    width:8px; height:8px; border-radius:50%; background:var(--grad); flex:none;
    box-shadow:0 0 0 0 rgba(34,211,238,.5);
    animation:pulse-dot 2.2s ease-out infinite;
  }
  @keyframes pulse-dot{
    0%{ box-shadow:0 0 0 0 rgba(34,211,238,.5); }
    70%{ box-shadow:0 0 0 9px rgba(34,211,238,0); }
    100%{ box-shadow:0 0 0 0 rgba(34,211,238,0); }
  }
  .hero h1{
    font-family:'Heebo',sans-serif;
    font-size:clamp(36px,5vw,62px); font-weight:900; color:#F6FBFC;
    letter-spacing:-.02em; line-height:1.14;
  }
  .hero h1 .grad{
    background:var(--grad);
    -webkit-background-clip:text; background-clip:text;
    -webkit-text-fill-color:transparent; color:transparent;
  }
  .hero-sub{
    margin-top:24px; font-size:20.5px; font-weight:600; color:var(--text2); max-width:30em;
  }
  .hero-sub strong{ color:var(--cy-soft); font-weight:700; }
  .hero-desc{ margin-top:12px; font-size:16.5px; color:var(--muted); max-width:33em; }
  .hero-pulse{
    margin-top:28px; width:min(400px,100%); height:40px;
    filter:drop-shadow(0 0 7px rgba(34,211,238,.55));
  }
  .hero-pulse path{
    fill:none; stroke:url(#pulseGrad); stroke-width:2;
    stroke-linecap:round; stroke-linejoin:round;
  }
  .hero-ctas{ margin-top:32px; display:flex; gap:14px; flex-wrap:wrap; }
  .hero-badges{
    margin-top:38px; display:flex; flex-wrap:wrap;
    border-top:1px solid var(--line);
    padding-top:22px; gap:12px 0;
  }
  .hero-badges span{
    display:inline-flex; align-items:center; gap:9px;
    color:var(--text2); font-size:14.5px; font-weight:600;
    padding-inline:15px;
  }
  .hero-badges span:first-child{ padding-inline-start:0; }
  .hero-badges span + span{ border-inline-start:1px solid var(--line); }
  .hero-badges svg{ width:18px; height:18px; flex:none; }

  /* floating lead card with rotating gradient border */
  .lead-wrap{ position:relative; animation:card-float 7s ease-in-out infinite; }
  @keyframes card-float{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-9px); } }
  .lead-card{
    position:relative; z-index:1;
    background:linear-gradient(160deg, rgba(13,44,58,.92), rgba(7,30,40,.96));
    border-radius:24px;
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    box-shadow:0 44px 100px -34px rgba(0,0,0,.65);
    padding:36px 34px 30px;
  }
  .lead-wrap::before{
    content:""; position:absolute; inset:-1.5px; border-radius:26px; z-index:0;
    background:conic-gradient(from var(--ang),
      rgba(34,211,238,0) 0%, rgba(34,211,238,.9) 12%,
      rgba(45,212,191,.9) 22%, rgba(34,211,238,0) 34%,
      rgba(34,211,238,0) 55%, rgba(45,212,191,.55) 68%,
      rgba(34,211,238,0) 80%);
    animation:spin-border 7s linear infinite;
  }
  .lead-wrap::after{
    content:""; position:absolute; inset:-26px; border-radius:44px; z-index:-1;
    background:radial-gradient(60% 60% at 50% 45%, rgba(34,211,238,.16), transparent 75%);
    filter:blur(18px); pointer-events:none;
  }
  @keyframes spin-border{ to{ --ang:360deg; } }
  .lead-card h2{ font-size:23.5px; font-weight:800; color:#F6FBFC; }
  .lead-card .lead-note{ margin-top:8px; font-size:15px; color:var(--muted); }
  .lead-form{ margin-top:22px; display:grid; gap:14px; }
  .field label{
    display:block; font-size:13.5px; font-weight:700; color:var(--text2); margin-bottom:6px;
    letter-spacing:.02em;
  }
  .field input, .field textarea, .field select{
    width:100%; padding:13px 16px;
    border:1px solid var(--line2); border-radius:13px;
    background:rgba(4,20,28,.65); color:var(--text);
    font:inherit; font-size:15.5px;
    transition:border-color .15s, box-shadow .15s;
  }
  .field input:focus, .field textarea:focus, .field select:focus{
    outline:none; border-color:var(--cy);
    box-shadow:0 0 0 3px rgba(34,211,238,.18);
  }
  .field input::placeholder, .field textarea::placeholder{ color:#5E7A85; }
  .field textarea{ resize:vertical; min-height:84px; }
  .consent{
    display:flex; gap:10px; align-items:flex-start;
    font-size:13.5px; color:var(--muted); line-height:1.5;
  }
  .consent input{ margin-top:3px; width:16px; height:16px; accent-color:var(--tl); flex:none; }
  .consent a{ color:var(--cy-soft); font-weight:600; }
  .lead-form .btn{ width:100%; }

  /* ============ marquee ribbon ============ */
  .marquee{
    border-block:1px solid var(--line);
    background:rgba(6,32,41,.55);
    overflow:hidden; position:relative; padding-block:16px;
  }
  .marquee::before, .marquee::after{
    content:""; position:absolute; top:0; bottom:0; width:120px; z-index:1; pointer-events:none;
  }
  .marquee::before{ inset-inline-start:0; background:linear-gradient(to left, transparent, var(--bg0)); }
  .marquee::after{ inset-inline-end:0; background:linear-gradient(to right, transparent, var(--bg0)); }
  .marquee-track{
    display:flex; gap:0; width:max-content;
    animation:marq 38s linear infinite;
  }
  .marquee:hover .marquee-track{ animation-play-state:paused; }
  @keyframes marq{ to{ transform:translateX(50%); } }
  .marquee-item{
    display:inline-flex; align-items:center; gap:26px;
    padding-inline:26px;
    font-family:'Heebo',sans-serif; font-weight:700; font-size:16.5px;
    color:var(--text2); white-space:nowrap;
  }
  .marquee-item .plus{
    color:var(--tl); font-size:15px;
    text-shadow:0 0 12px rgba(45,212,191,.7);
  }

  /* ============ sections ============ */
  .section{ padding-block:96px; position:relative; }
  .section-alt{ background:var(--bg1); border-block:1px solid var(--line); }
  .section-head{ max-width:700px; margin-bottom:56px; position:relative; }
  .section-head.center{ margin-inline:auto; text-align:center; }
  .kicker{
    display:inline-flex; align-items:center; gap:9px;
    background:rgba(34,211,238,.08); border:1px solid rgba(34,211,238,.25);
    color:var(--cy-soft);
    font-size:13.5px; font-weight:700; letter-spacing:.06em;
    padding:7px 16px; border-radius:99px; margin-bottom:20px;
  }
  .kicker::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--grad); flex:none; }
  .section-title{ font-size:clamp(28px,3.4vw,44px); font-weight:800; color:#F6FBFC; }
  .section-lede{ margin-top:18px; font-size:17.5px; color:var(--muted); }

  /* office band with image */
  .office-band{ background:var(--bg1); border-block:1px solid var(--line); }
  .office-band .container{
    display:grid; grid-template-columns:minmax(0,2fr) minmax(0,3fr);
    gap:52px; align-items:center;
    padding-block:64px;
  }
  .office-media{
    position:relative; border-radius:20px; overflow:hidden;
    border:1px solid var(--line2);
    box-shadow:0 30px 70px -26px rgba(0,0,0,.65), 0 0 40px -16px rgba(34,211,238,.3);
  }
  .office-media img{ width:100%; height:280px; object-fit:cover; display:block; }
  .office-media::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(200deg, rgba(6,19,31,0) 55%, rgba(6,19,31,.72));
  }
  .office-media .om-chip{
    position:absolute; bottom:14px; inset-inline-start:14px; z-index:2;
    display:inline-flex; align-items:center; gap:8px;
    background:rgba(8,30,44,.85); backdrop-filter:blur(8px);
    border:1px solid rgba(34,211,238,.35);
    color:var(--text); font-size:13.5px; font-weight:700;
    padding:8px 14px; border-radius:99px;
  }
  .office-media .om-chip svg{ width:15px; height:15px; }
  .office-band h2{
    font-size:26px; font-weight:800; color:#F6FBFC;
    display:flex; align-items:center; gap:14px;
  }
  .office-band h2 .itile{ width:52px; height:52px; border-radius:14px; }
  .office-band h2 .itile svg{ width:26px; height:26px; }
  .office-band p{ margin-top:14px; font-size:17.5px; color:var(--text2); max-width:44em; }

  /* icon tile — premium */
  .itile{
    width:60px; height:60px; border-radius:17px; flex:none;
    background:linear-gradient(150deg, rgba(34,211,238,.16), rgba(45,212,191,.04) 60%);
    border:1px solid rgba(34,211,238,.3);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 10px 26px -12px rgba(34,211,238,.35);
    display:grid; place-items:center;
    position:relative;
  }
  .itile svg{ width:29px; height:29px; fill:none; stroke:url(#ig); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .itile.lg{ width:76px; height:76px; border-radius:22px; }
  .itile.lg svg{ width:38px; height:38px; }

  /* ============ practice areas ============ */
  .areas-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
  .area-card{
    position:relative; overflow:hidden;
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid var(--line);
    border-radius:var(--r);
    padding:28px 24px;
    display:flex; flex-direction:column; gap:14px;
    transition:transform .25s, box-shadow .25s, border-color .25s;
  }
  .area-card::before{
    content:""; position:absolute; inset:0 0 auto 0; height:1px;
    background:linear-gradient(90deg, transparent, rgba(34,211,238,.55), transparent);
    opacity:0; transition:opacity .25s;
  }
  .area-card:hover{
    transform:translateY(-6px);
    border-color:rgba(34,211,238,.45);
    box-shadow:0 30px 60px -24px rgba(0,0,0,.6), var(--glow);
  }
  .area-card:hover::before{ opacity:1; }
  .area-card h3{ font-size:19.5px; font-weight:800; color:#F6FBFC; }
  .area-card p{ font-size:15px; color:var(--muted); line-height:1.6; }

  /* ============ specializations ============ */
  .specs-grid{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
  .spec-card{
    position:relative; overflow:hidden;
    background:linear-gradient(165deg, var(--card2), rgba(8,28,38,.95));
    border:1px solid var(--line);
    border-radius:var(--r);
    padding:34px 30px;
    transition:transform .25s, box-shadow .25s, border-color .25s;
  }
  .spec-card::before{
    content:""; position:absolute; inset-inline-start:0; top:18%; bottom:18%; width:3px;
    border-radius:99px;
    background:var(--grad);
    box-shadow:0 0 18px rgba(34,211,238,.6);
  }
  .spec-card:hover{
    transform:translateY(-5px); border-color:rgba(34,211,238,.4);
    box-shadow:0 30px 60px -24px rgba(0,0,0,.6);
  }
  .spec-photo{
    margin:-34px -30px 22px; height:168px; overflow:hidden; position:relative;
    border-bottom:1px solid var(--line);
  }
  .spec-photo img{
    width:100%; height:100%; object-fit:cover; display:block;
    transition:transform .55s cubic-bezier(.3,0,.2,1);
  }
  .spec-card:hover .spec-photo img{ transform:scale(1.06); }
  .spec-photo::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(6,19,31,.12) 40%, rgba(8,32,47,.82));
  }
  .spec-head{ display:flex; align-items:center; gap:16px; }
  .spec-card h3{ font-size:21px; font-weight:800; color:#F6FBFC; }
  .spec-card p{ margin-top:16px; font-size:15.5px; color:var(--text2); }

  /* ============ about ============ */
  .about-grid{
    display:grid; grid-template-columns:minmax(0,3fr) minmax(0,2fr);
    gap:70px; align-items:center;
  }
  .about-quote{
    margin:26px 0 0; position:relative;
    padding:24px 28px;
    background:rgba(34,211,238,.05);
    border:1px solid rgba(34,211,238,.2);
    border-radius:16px;
    font-family:'Heebo',sans-serif; font-weight:600;
    font-size:17.5px; color:var(--cy-soft); line-height:1.7;
  }
  .about-quote::before{
    content:"”"; position:absolute; top:-6px; inset-inline-start:18px;
    font-size:52px; line-height:1; font-weight:800;
    color:var(--cy); opacity:.5;
  }
  .about-text{ margin-top:18px; color:var(--text2); font-size:16.5px; }
  .portrait-wrap{ position:relative; }
  .portrait{
    aspect-ratio:4/5; border-radius:26px; margin:0;
    background:linear-gradient(165deg, var(--card2), rgba(7,26,35,.95));
    border:1px solid var(--line2);
    display:grid; place-items:center; text-align:center; padding:30px;
    position:relative; overflow:hidden;
  }
  .portrait::before{
    content:""; position:absolute; inset:0;
    background:radial-gradient(70% 50% at 50% 0%, rgba(34,211,238,.14), transparent 70%);
    pointer-events:none;
  }
  .portrait img{
    width:150px; height:auto; background:#fff; border-radius:16px; padding:10px 15px;
    margin-bottom:20px; box-shadow:0 18px 44px -16px rgba(34,211,238,.4);
  }
  .portrait figcaption{ color:var(--muted); font-size:14px; max-width:20em; }
  .float-chip{
    position:absolute; z-index:2;
    display:inline-flex; align-items:center; gap:9px;
    background:rgba(10,37,50,.92); backdrop-filter:blur(10px);
    border:1px solid rgba(34,211,238,.35);
    color:var(--text); font-size:13.5px; font-weight:700;
    padding:10px 16px; border-radius:99px;
    box-shadow:0 18px 40px -14px rgba(0,0,0,.6);
    animation:card-float 6s ease-in-out infinite;
  }
  .float-chip svg{ width:16px; height:16px; flex:none; }
  .float-chip.c1{ top:26px; inset-inline-start:-34px; }
  .float-chip.c2{ bottom:34px; inset-inline-end:-26px; animation-delay:1.6s; }

  /* ============ process timeline ============ */
  .process-layout{
    display:grid; grid-template-columns:minmax(0,2fr) minmax(0,3fr);
    gap:60px; align-items:start;
  }
  .process-media{
    position:sticky; top:130px;
    display:grid; gap:18px;
  }
  .process-media figure{
    margin:0; position:relative; border-radius:20px; overflow:hidden;
    border:1px solid var(--line2);
    box-shadow:0 30px 70px -26px rgba(0,0,0,.65);
  }
  .process-media img{ width:100%; height:250px; object-fit:cover; display:block; }
  .process-media figure::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(200deg, rgba(6,19,31,0) 50%, rgba(6,19,31,.7));
  }
  .process-quote{
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid rgba(34,211,238,.3);
    border-radius:16px; padding:22px 24px;
    font-family:'Heebo',sans-serif; font-weight:600; font-size:16px;
    color:var(--cy-soft); line-height:1.7;
  }
  .steps{ max-width:880px; margin-inline:auto; position:relative; }
  .steps::before{
    content:""; position:absolute; top:10px; bottom:10px; inset-inline-start:29px;
    width:2px;
    background:linear-gradient(180deg, var(--cy), var(--tl));
    box-shadow:0 0 16px rgba(34,211,238,.5);
    opacity:.5;
  }
  .step{ position:relative; padding-inline-start:92px; padding-block:6px 44px; }
  .step:last-child{ padding-bottom:0; }
  .step-dot{
    position:absolute; inset-inline-start:0; top:0;
    width:60px; height:60px; border-radius:50%;
    background:linear-gradient(150deg, rgba(34,211,238,.18), rgba(45,212,191,.06));
    border:1px solid rgba(34,211,238,.45);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 0 26px -6px rgba(34,211,238,.55);
    display:grid; place-items:center;
    font-family:'Heebo',sans-serif; font-weight:800; font-size:21px;
    color:var(--cy-soft);
    font-variant-numeric:tabular-nums;
  }
  .step-body{
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.85));
    border:1px solid var(--line);
    border-radius:var(--r);
    padding:26px 28px;
    transition:border-color .25s, box-shadow .25s;
  }
  .step-body:hover{ border-color:rgba(34,211,238,.35); box-shadow:0 24px 50px -24px rgba(0,0,0,.55); }
  .step h3{ font-size:20px; font-weight:800; color:#F6FBFC; }
  .step p{ margin-top:12px; font-size:15.5px; color:var(--text2); }

  /* ============ FAQ ============ */
  .faq-list{ max-width:860px; margin-inline:auto; display:grid; gap:14px; }
  .faq-item{
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid var(--line);
    border-radius:16px; overflow:hidden;
    transition:border-color .2s, box-shadow .2s;
  }
  .faq-item[open]{ border-color:rgba(34,211,238,.45); box-shadow:0 24px 55px -24px rgba(0,0,0,.55); }
  .faq-item summary{
    list-style:none; cursor:pointer;
    display:flex; align-items:center; justify-content:space-between; gap:18px;
    padding:21px 26px;
    font-family:'Heebo',sans-serif; font-size:17.5px; font-weight:700; color:var(--text);
  }
  .faq-item summary::-webkit-details-marker{ display:none; }
  .faq-mark{
    flex:none; width:34px; height:34px; border-radius:50%;
    background:rgba(34,211,238,.1); border:1px solid rgba(34,211,238,.3);
    color:var(--cy-soft);
    display:grid; place-items:center; font-size:20px; line-height:1;
    transition:transform .2s, background .2s, color .2s;
  }
  .faq-item[open] .faq-mark{ transform:rotate(45deg); background:var(--grad-btn); color:#fff; border-color:transparent; }
  .faq-body{ padding:0 26px 24px; color:var(--text2); font-size:15.5px; max-width:60em; }

  /* ============ articles ============ */
  .articles-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  .article-card{
    position:relative; overflow:hidden;
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid var(--line); border-radius:var(--r);
    padding:28px 26px; text-decoration:none;
    display:flex; flex-direction:column; gap:13px;
    transition:transform .25s, box-shadow .25s, border-color .25s;
  }
  .article-card::before{
    content:""; position:absolute; inset:0 0 auto 0; height:2px;
    background:var(--grad); opacity:0; transition:opacity .25s;
  }
  .article-card:hover{
    transform:translateY(-6px); border-color:rgba(34,211,238,.45);
    box-shadow:0 30px 60px -24px rgba(0,0,0,.6);
  }
  .article-card:hover::before{ opacity:1; }
  .article-meta{ display:flex; align-items:center; gap:10px; font-size:13px; font-weight:700; }
  .article-meta .tag{
    background:rgba(34,211,238,.1); border:1px solid rgba(34,211,238,.28);
    color:var(--cy-soft); padding:4px 13px; border-radius:99px;
  }
  .article-meta time{ color:var(--muted); font-weight:600; }
  .article-card h3{ font-size:18.5px; font-weight:700; color:#F6FBFC; line-height:1.45; }
  .article-card .read-more{
    margin-top:auto; font-size:14.5px; font-weight:700; color:var(--cy-soft);
    display:inline-flex; align-items:center; gap:7px;
    transition:gap .2s;
  }
  .article-card:hover .read-more{ gap:12px; }
  .articles-all{ margin-top:42px; text-align:center; }

  /* ============ contact ============ */
  .contact-grid{
    display:grid; grid-template-columns:minmax(0,2fr) minmax(0,3fr); gap:44px;
    align-items:start;
  }
  .contact-info{ display:grid; gap:16px; }
  .contact-row{
    display:flex; gap:16px; align-items:flex-start;
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid var(--line);
    border-radius:16px; padding:20px 22px;
    transition:border-color .2s;
  }
  .contact-row:hover{ border-color:rgba(34,211,238,.35); }
  .contact-row .itile{ width:48px; height:48px; border-radius:13px; }
  .contact-row .itile svg{ width:22px; height:22px; }
  .contact-row strong{ display:block; font-size:16px; color:#F6FBFC; }
  .contact-row span, .contact-row a{ font-size:15.5px; color:var(--muted); text-decoration:none; }
  .contact-row a:hover{ color:var(--cy-soft); }
  .contact-form-wrap{ position:relative; }
  .contact-form-wrap::before{
    content:""; position:absolute; inset:-1.5px; border-radius:26px; z-index:0;
    background:conic-gradient(from var(--ang),
      rgba(34,211,238,0) 0%, rgba(34,211,238,.8) 12%,
      rgba(45,212,191,.8) 22%, rgba(34,211,238,0) 34%,
      rgba(34,211,238,0) 60%, rgba(45,212,191,.5) 72%,
      rgba(34,211,238,0) 84%);
    animation:spin-border 8s linear infinite;
  }
  .contact-form-card{
    position:relative; z-index:1;
    background:linear-gradient(160deg, rgba(13,44,58,.95), rgba(7,30,40,.98));
    border-radius:24px;
    box-shadow:0 44px 100px -34px rgba(0,0,0,.65);
    padding:38px 34px;
  }
  .contact-form-card h3{ font-size:23px; font-weight:800; color:#F6FBFC; }
  .contact-form-card .form-note{ margin-top:6px; color:var(--muted); font-size:15px; }
  .contact-form-card .lead-form{ grid-template-columns:1fr 1fr; }
  .contact-form-card .lead-form .field-full{ grid-column:1 / -1; }
  .contact-form-card .lead-form .btn,
  .contact-form-card .lead-form .consent{ grid-column:1 / -1; }

  /* ============ big contact wizard ============ */
  .contact-tiles{
    display:grid; grid-template-columns:repeat(4,1fr); gap:16px;
    margin-bottom:36px;
  }
  .contact-form-card{ padding:44px 46px; }
  .contact-form-card h3{ font-size:26px; font-weight:800; }
  .contact-form-card .form-note{
    padding-bottom:20px; border-bottom:1px solid var(--line);
  }
  .secure-badge{
    position:absolute; top:18px; inset-inline-start:20px;
    display:inline-flex; align-items:center; gap:7px;
    font-size:12.5px; font-weight:700; color:var(--cy-soft);
    background:rgba(34,211,238,.08);
    border:1px solid rgba(34,211,238,.3);
    padding:7px 13px; border-radius:99px; z-index:2;
  }
  .secure-badge svg{ width:13px; height:13px; flex:none; }
  @media (max-width:760px){ .secure-badge{ display:none; } }
  .wiz-dots{ display:flex; align-items:center; margin:28px 0 24px; }
  .wiz-dot{
    display:flex; align-items:center; gap:10px; flex:none;
    font-family:'Heebo',sans-serif; font-weight:700; font-size:15px; color:var(--muted);
    transition:color .3s;
  }
  .wiz-dot .n{
    width:46px; height:46px; border-radius:50%;
    display:grid; place-items:center;
    border:1.5px solid var(--line2); background:rgba(4,20,28,.55);
    font-size:17px; color:var(--text2);
    transition:background .3s, box-shadow .3s, border-color .3s;
  }
  .wiz-dot.active{ color:var(--text); }
  .wiz-dot.active .n{
    background:var(--grad-btn); color:#fff; border-color:transparent;
    box-shadow:0 0 24px rgba(34,211,238,.55);
  }
  .wiz-dot.done{ color:var(--cy-soft); }
  .wiz-dot.done .n{
    background:rgba(34,211,238,.14); color:var(--cy-soft); border-color:var(--cy);
  }
  .wiz-line{
    flex:1; height:2px; margin-inline:16px; border-radius:99px;
    background:var(--line); position:relative; overflow:hidden;
  }
  .wiz-line::after{
    content:""; position:absolute; inset:0; background:var(--grad);
    transform:translateX(100%); transition:transform .5s cubic-bezier(.4,0,.2,1);
  }
  .wiz-line.done::after{ transform:none; }
  .contact-form-card .wiz-q{ font-size:20px; }
  .contact-form-card .chips{ grid-template-columns:repeat(3,1fr); gap:12px; }
  .contact-form-card .chip span{ padding:16px 18px; font-size:15.5px; }
  .contact-form-card .field input,
  .contact-form-card .field select,
  .contact-form-card .field textarea{ padding:15px 17px; font-size:16px; }
  .contact-form-card .wiz-nav .btn{ font-size:17px; padding:17px 30px; }
  .form-grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
  .form-perks{
    display:flex; gap:24px; flex-wrap:wrap; justify-content:center;
    color:var(--muted); font-size:14px; font-weight:600; margin-top:4px;
  }
  .form-perks span{ display:inline-flex; gap:7px; align-items:center; }
  .form-perks svg{ width:15px; height:15px; flex:none; }
  .arrow-move{ animation:arrow-nudge 1.5s ease-in-out infinite; }
  @keyframes arrow-nudge{ 0%,100%{ transform:translateX(0); } 50%{ transform:translateX(-6px); } }

  /* ============ accessibility widget ============ */
  .a11y-btn{
    position:fixed; bottom:172px; inset-inline-end:26px; z-index:112;
    width:52px; height:52px; border-radius:50%;
    background:#1D4ED8; border:2px solid rgba(255,255,255,.85); color:#fff;
    display:grid; place-items:center; cursor:pointer;
    box-shadow:0 14px 34px -10px rgba(0,0,0,.55);
    transition:transform .15s;
  }
  .a11y-btn:hover{ transform:scale(1.07); }
  .a11y-btn svg{ width:27px; height:27px; }
  .a11y-panel{
    position:fixed; bottom:120px; inset-inline-end:90px; z-index:145;
    width:min(310px, 86vw);
    background:linear-gradient(165deg, var(--card2), var(--bg0));
    border:1px solid var(--line2); border-radius:18px;
    box-shadow:0 40px 90px -24px rgba(0,0,0,.75);
    padding:18px; display:none;
  }
  .a11y-panel.open{ display:block; }
  .a11y-head{
    display:flex; justify-content:space-between; align-items:center;
    margin-bottom:12px;
  }
  .a11y-head strong{ font-family:'Heebo',sans-serif; font-size:16.5px; color:var(--text); }
  .a11y-close{
    background:none; border:1px solid var(--line); color:var(--muted);
    width:30px; height:30px; border-radius:50%;
    display:grid; place-items:center; cursor:pointer;
  }
  .a11y-close svg{ width:13px; height:13px; }
  .a11y-list{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
  .a11y-item{
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px;
    padding:12px 8px; border-radius:12px;
    background:rgba(4,20,28,.55); border:1px solid var(--line);
    color:var(--text2); font-size:12.5px; font-weight:700; cursor:pointer;
    text-align:center; font-family:inherit;
  }
  .a11y-item svg{ width:20px; height:20px; }
  .a11y-item.on{ border-color:var(--cy); background:rgba(34,211,238,.12); color:#fff; }
  .a11y-link{
    grid-column:1/-1; text-align:center; font-size:13px;
    color:var(--cy-soft); text-decoration:underline; padding:7px; display:block;
  }
  body.axy-links a{ text-decoration:underline !important; }
  body.axy-font *{ font-family:Arial, Helvetica, sans-serif !important; }
  body.axy-noanim *, body.axy-noanim *::before, body.axy-noanim *::after{
    animation:none !important; transition:none !important;
  }
  body.axy-gray main, body.axy-gray .topbar, body.axy-gray .site-footer{ filter:grayscale(1); }
  body.axy-contrast{
    --bg0:#000; --bg1:#000; --card:#0B0B0B; --card2:#101010;
    --text:#FFEE32; --text2:#FFEE32; --muted:#FFEE32;
    --cy:#FFEE32; --tl:#FFEE32; --cy-soft:#FFEE32;
    --line:rgba(255,238,50,.4); --line2:rgba(255,238,50,.65);
    --grad:linear-gradient(120deg,#FFEE32,#FFEE32);
    --grad-btn:linear-gradient(120deg,#1A1A1A,#1A1A1A);
  }
  body.axy-contrast .hero-photo img, body.axy-contrast .article-thumb img,
  body.axy-contrast .spec-photo img, body.axy-contrast .office-media img,
  body.axy-contrast .process-media img{ opacity:.2; }
  body.axy-contrast .hero h1 .grad{ -webkit-text-fill-color:#FFEE32; color:#FFEE32; }


  /* ============ compensation section ============ */
  .comp-grid{ display:grid; grid-template-columns:repeat(6,1fr); gap:20px; }
  .comp-card{
    grid-column:span 2;
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid var(--line); border-radius:var(--r);
    padding:26px 24px;
    display:flex; flex-direction:column; gap:13px;
    transition:transform .25s, box-shadow .25s, border-color .25s;
  }
  .comp-card:nth-child(4), .comp-card:nth-child(5){ grid-column:span 3; }
  .comp-card:hover{
    transform:translateY(-5px);
    border-color:rgba(34,211,238,.45);
    box-shadow:0 30px 60px -24px rgba(0,0,0,.6);
  }
  .comp-card h3{ font-size:19px; font-weight:800; color:#F6FBFC; }
  .comp-card p{ font-size:15px; color:var(--muted); line-height:1.65; }
  .comp-note{
    margin-top:34px; position:relative; overflow:hidden;
    background:rgba(34,211,238,.05);
    border:1px solid rgba(34,211,238,.25);
    border-radius:18px; padding:28px 32px;
  }
  .comp-note::before{
    content:""; position:absolute; inset-inline-start:0; top:0; bottom:0; width:3px;
    background:var(--grad);
    box-shadow:0 0 16px rgba(34,211,238,.6);
  }
  .comp-note p{ color:var(--text2); font-size:15.5px; line-height:1.75; }
  .comp-note p + p{ margin-top:13px; }
  .comp-note strong{ color:var(--cy-soft); }
  .comp-note a{ color:var(--cy-soft); font-weight:700; }
  @media (max-width:1080px){
    .comp-grid{ grid-template-columns:1fr 1fr; }
    .comp-card, .comp-card:nth-child(4), .comp-card:nth-child(5){ grid-column:auto; }
  }
  @media (max-width:640px){
    .comp-grid{ grid-template-columns:1fr; }
    .comp-note{ padding:22px 20px; }
  }


  /* ============ proof section ============ */
  .proof-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .proof-card{
    position:relative; overflow:hidden;
    background:linear-gradient(165deg, var(--card2), rgba(8,28,38,.95));
    border:1px solid var(--line); border-radius:var(--r);
    padding:30px 26px;
    transition:transform .25s, box-shadow .25s, border-color .25s;
  }
  .proof-card::before{
    content:""; position:absolute; inset:0 0 auto 0; height:1px;
    background:linear-gradient(90deg, transparent, rgba(34,211,238,.55), transparent);
  }
  .proof-card:hover{
    transform:translateY(-5px);
    border-color:rgba(34,211,238,.45);
    box-shadow:0 30px 60px -24px rgba(0,0,0,.6);
  }
  .proof-num{
    width:52px; height:52px; border-radius:50%;
    display:grid; place-items:center; margin-bottom:16px;
    background:linear-gradient(150deg, rgba(34,211,238,.18), rgba(45,212,191,.06));
    border:1px solid rgba(34,211,238,.45);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 0 22px -6px rgba(34,211,238,.5);
    font-weight:800; font-size:20px; color:var(--cy-soft);
  }
  .proof-card h3{ font-size:20px; font-weight:800; color:#F6FBFC; }
  .proof-card p{ margin-top:12px; font-size:15px; color:var(--text2); line-height:1.7; }
  @media (max-width:1080px){ .proof-grid{ grid-template-columns:1fr; } }

  /* ============ footer ============ */
  .site-footer{
    background:linear-gradient(180deg, var(--bg1), #020C11);
    border-top:1px solid var(--line);
    color:var(--muted); font-size:15px;
  }
  .footer-grid{
    display:grid; grid-template-columns:2fr 1fr 1fr 1.3fr; gap:44px;
    padding-block:68px 40px;
  }
  .site-footer h3{
    color:var(--text); font-size:16px; margin-bottom:16px;
    font-family:'Heebo',sans-serif; font-weight:700;
  }
  .site-footer ul{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
  .site-footer a{ color:var(--muted); text-decoration:none; transition:color .15s; }
  .site-footer a:hover{ color:var(--cy-soft); }
  .footer-brand img{
    height:60px; width:auto; background:#fff; border-radius:12px; padding:4px 10px;
  }
  .footer-brand p{ margin-top:16px; max-width:26em; line-height:1.7; color:var(--muted); }
  .footer-bottom{
    border-top:1px solid var(--line);
    padding-block:22px;
    display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap;
    font-size:13.5px; color:#5E7A85;
  }
  .footer-bottom a{ color:var(--muted); text-decoration:underline; }

  /* ============ floating elements ============ */
  .float-stack{
    position:fixed; bottom:26px; inset-inline-end:26px; z-index:110;
    display:flex; flex-direction:column; gap:12px;
  }
  .float-btn{
    width:58px; height:58px; border-radius:50%;
    display:grid; place-items:center; text-decoration:none;
    box-shadow:0 16px 40px -12px rgba(0,0,0,.6);
    transition:transform .15s, box-shadow .2s;
  }
  .float-btn:hover{ transform:scale(1.09); box-shadow:var(--glow); }
  .float-btn svg{ width:27px; height:27px; }
  .float-wa{ background:var(--wa); }
  .float-call{ background:var(--grad-btn); }
  .float-tab{
    position:fixed; top:50%; inset-inline-start:0; z-index:110;
    transform:translateY(-50%);
    writing-mode:vertical-rl;
    background:var(--grad-btn); color:#fff;
    border:none; border-radius:0 16px 16px 0;
    padding:22px 14px; font-weight:700; font-size:15px; letter-spacing:.05em;
    box-shadow:0 16px 40px -12px rgba(15,181,162,.55);
    transition:padding .15s, box-shadow .2s;
  }
  .float-tab:hover{ padding-inline:18px; box-shadow:var(--glow); }

  /* quick floating bar: visible from load, 80% wide, with attorney photo */
  .quickbar{
    position:fixed; bottom:22px; inset-inline-start:50%; z-index:105;
    width:80%;
    transform:translateX(50%) translateY(40px);
    padding:1.5px; border-radius:26px;
    background:conic-gradient(from var(--ang),
      rgba(34,211,238,0) 0%, rgba(34,211,238,.9) 12%,
      rgba(45,212,191,.9) 24%, rgba(34,211,238,0) 38%,
      rgba(34,211,238,0) 58%, rgba(45,212,191,.55) 74%,
      rgba(34,211,238,0) 90%);
    animation:spin-border 6s linear infinite;
    box-shadow:0 34px 80px -22px rgba(0,0,0,.8), 0 0 56px -12px rgba(34,211,238,.45);
    opacity:0; pointer-events:none;
    transition:opacity .5s ease, transform .6s cubic-bezier(.2,.8,.2,1);
  }
  .quickbar.show{ opacity:1; pointer-events:auto; transform:translateX(50%) translateY(0); }
  .quickbar-inner{
    position:relative;
    display:flex; align-items:center; gap:20px;
    min-height:96px;
    background:linear-gradient(120deg, rgba(9,34,48,.97), rgba(6,22,32,.97));
    backdrop-filter:blur(18px) saturate(1.4);
    -webkit-backdrop-filter:blur(18px) saturate(1.4);
    border-radius:25px;
    padding:14px 22px 14px 18px;
    padding-inline-start:170px;
  }
  .qb-photo{
    position:absolute; bottom:0; inset-inline-start:18px;
    width:150px; height:96px;
    pointer-events:none;
  }
  .qb-photo::before{
    content:""; position:absolute; bottom:-14px; left:50%;
    width:150px; height:150px; transform:translateX(-50%);
    border-radius:50%;
    background:radial-gradient(circle at 50% 42%, rgba(125,227,241,.5), rgba(34,211,238,.14) 46%, rgba(34,211,238,0) 70%);
  }
  .qb-photo img{
    position:absolute; bottom:0; left:50%; transform:translateX(-50%);
    height:184px; width:auto; max-width:none;
    filter:drop-shadow(0 12px 18px rgba(0,0,0,.55));
  }
  .quickbar-info{ display:flex; flex-direction:column; gap:4px; min-width:0; }
  .quickbar-title{
    display:inline-flex; align-items:center; gap:9px;
    font-family:'Heebo',sans-serif; font-weight:800; font-size:19px;
    color:var(--text); white-space:nowrap;
  }
  .quickbar-title .qb-dot{
    width:9px; height:9px; border-radius:50%; background:var(--grad); flex:none;
    animation:pulse-dot 2.2s ease-out infinite;
  }
  .quickbar-sub{ font-size:13.5px; font-weight:600; color:var(--cy-soft); white-space:nowrap; }
  .quickbar form{ flex:1; display:flex; align-items:center; justify-content:flex-end; gap:12px; min-width:0; }
  .qb-field{ position:relative; display:flex; align-items:center; flex:1; max-width:240px; min-width:130px; }
  .qb-field > svg{
    position:absolute; inset-inline-start:15px;
    width:17px; height:17px; pointer-events:none;
  }
  .qb-field input{
    width:100%; padding:14px 16px; padding-inline-start:42px;
    border:1px solid var(--line2); border-radius:14px;
    background:rgba(4,20,28,.75); color:var(--text);
    font:inherit; font-size:15.5px;
    transition:border-color .2s, box-shadow .2s;
  }
  .qb-field input:focus{ outline:none; border-color:var(--cy); box-shadow:0 0 0 3px rgba(34,211,238,.18); }
  .qb-field input.ok{ border-color:rgba(45,212,191,.7); }
  .qb-field input::placeholder{ color:#6B8892; }
  .qb-steps{ display:flex; gap:6px; flex:none; }
  .qb-steps i{
    width:9px; height:9px; border-radius:50%;
    background:rgba(148,206,216,.25);
    transition:background .25s, box-shadow .25s;
  }
  .qb-steps i.on{ background:var(--grad); box-shadow:0 0 10px rgba(34,211,238,.85); }
  .quickbar .btn{ flex:none; padding:15px 30px; font-size:16px; border-radius:14px; }
  .quickbar .btn.ready{ box-shadow:var(--glow); }
  .quickbar form{ flex-wrap:wrap; row-gap:8px; }
  .quickbar .consent{ flex-basis:100%; align-items:center; gap:8px; font-size:13px; line-height:1.4; }
  .quickbar .consent input{ margin-top:0; width:15px; height:15px; }
  .quickbar-close{
    position:absolute; top:-14px; inset-inline-end:-14px;
    background:rgba(7,26,38,.98); border:1px solid var(--line2); color:var(--muted);
    width:30px; height:30px; border-radius:50%;
    display:grid; place-items:center;
    box-shadow:0 8px 20px -8px rgba(0,0,0,.7);
  }
  .quickbar-close:hover{ color:var(--text); border-color:var(--cy); }
  .quickbar-close svg{ width:13px; height:13px; }
  @media (min-width:1081px){ body.qb-on{ padding-bottom:150px; } }
  @media (max-width:1320px){
    .quickbar-sub{ display:none; }
    .qb-steps{ display:none; }
  }
  @media (max-width:1180px){
    .quickbar-inner{ padding-inline-start:150px; gap:14px; }
    .qb-photo{ width:130px; }
    .qb-photo img{ height:164px; }
    .quickbar-title{ font-size:17px; }
    .quickbar .btn{ padding:14px 22px; }
  }
  @media (prefers-reduced-motion: reduce){
    .quickbar{ animation:none; transition:none; }
  }

  .mobile-dock{ display:none; }

  /* ============ modal ============ */
  .modal-overlay{
    position:fixed; inset:0; z-index:150;
    background:rgba(2,12,17,.72);
    backdrop-filter:blur(6px);
    display:none; align-items:center; justify-content:center; padding:20px;
  }
  .modal-overlay.open{ display:flex; }
  .modal-wrap{ position:relative; width:min(480px,100%); }
  .modal-wrap::before{
    content:""; position:absolute; inset:-1.5px; border-radius:26px;
    background:conic-gradient(from var(--ang),
      rgba(34,211,238,0) 0%, rgba(34,211,238,.9) 15%,
      rgba(45,212,191,.9) 25%, rgba(34,211,238,0) 40%);
    animation:spin-border 6s linear infinite;
  }
  .modal{
    position:relative; max-height:92vh; overflow-y:auto;
    background:linear-gradient(160deg, rgba(13,44,58,.97), rgba(7,30,40,.99));
    border-radius:24px;
    padding:38px 34px 30px;
    box-shadow:0 60px 120px -30px rgba(0,0,0,.8);
  }
  .modal h2{ font-size:22px; font-weight:800; color:#F6FBFC; }
  .modal .lead-note{ margin-top:8px; font-size:15px; color:var(--muted); }
  .modal-close{
    position:absolute; top:14px; inset-inline-start:14px;
    width:38px; height:38px; border-radius:50%;
    border:1px solid var(--line2); background:rgba(4,20,28,.6); color:var(--muted);
    display:grid; place-items:center;
  }
  .modal-close:hover{ color:var(--text); }
  .modal-close svg{ width:16px; height:16px; }

  .toast{
    position:fixed; bottom:30px; inset-inline-start:50%; transform:translateX(50%);
    z-index:200;
    background:rgba(8,30,40,.95); color:var(--text);
    backdrop-filter:blur(14px);
    padding:16px 28px; border-radius:16px; font-weight:600;
    border:1px solid rgba(45,212,191,.5);
    box-shadow:0 24px 60px -16px rgba(0,0,0,.7), 0 0 30px -10px rgba(45,212,191,.5);
    opacity:0; pointer-events:none; transition:opacity .3s, transform .3s;
    max-width:min(90vw,480px); text-align:center;
  }
  .toast.show{ opacity:1; transform:translateX(50%) translateY(-6px); }

  /* ============ real portrait photo ============ */
  .portrait-photo{
    aspect-ratio:4/5; border-radius:26px; margin:0; overflow:hidden;
    border:1px solid var(--line2);
    position:relative;
    box-shadow:0 40px 90px -30px rgba(0,0,0,.7), 0 0 50px -18px rgba(34,211,238,.35);
  }
  .portrait-photo img{ width:100%; height:100%; object-fit:cover; object-position:top; display:block; }
  .portrait-photo::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(185deg, rgba(4,20,28,0) 52%, rgba(4,20,28,.9) 94%);
    pointer-events:none;
  }
  .portrait-cap{
    position:absolute; bottom:0; inset-inline:0; z-index:2;
    padding:22px 24px;
    display:flex; flex-direction:column; gap:3px;
  }
  .portrait-cap strong{ font-family:'Heebo',sans-serif; font-size:20px; font-weight:800; color:#F6FBFC; }
  .portrait-cap span{ font-size:14px; color:var(--cy-soft); font-weight:600; }

  /* ============ hero background photo ============ */
  .hero-photo{ position:absolute; inset:0; z-index:-2; pointer-events:none; }
  .hero-photo img{
    width:100%; height:100%; object-fit:cover; object-position:center;
    will-change:transform;
  }
  .hero-photo::after{
    content:""; position:absolute; inset:0;
    background:
      linear-gradient(to left, rgba(6,19,31,.94) 22%, rgba(6,19,31,.78) 55%, rgba(7,25,40,.62) 100%),
      linear-gradient(180deg, rgba(6,19,31,.45) 0%, rgba(6,19,31,.35) 55%, rgba(6,19,31,.97) 96%);
  }

  /* ============ animated phone ============ */
  @keyframes ring{
    0%,100%{ transform:rotate(0); }
    4%{ transform:rotate(-14deg); }
    8%{ transform:rotate(11deg); }
    12%{ transform:rotate(-8deg); }
    16%{ transform:rotate(5deg); }
    20%{ transform:rotate(0); }
  }
  .header-cta svg, .float-call svg, .dock-call svg, .btn-glass svg{
    animation:ring 3.4s ease-in-out 1.4s infinite;
    transform-origin:50% 30%;
  }
  .float-call{ position:relative; }
  .float-call::before{
    content:""; position:absolute; inset:-5px; border-radius:50%;
    border:2px solid rgba(45,212,191,.6);
    animation:pulse-halo 2.4s ease-out infinite;
  }
  @keyframes pulse-halo{
    0%{ transform:scale(.92); opacity:.9; }
    70%{ transform:scale(1.5); opacity:0; }
    100%{ transform:scale(1.5); opacity:0; }
  }

  /* ============ article thumbnails ============ */
  .article-thumb{
    margin:-28px -26px 6px; height:174px; overflow:hidden;
    border-radius:var(--r) var(--r) 0 0;
    border-bottom:1px solid var(--line);
    position:relative;
  }
  .article-thumb::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(180deg, transparent 55%, rgba(6,19,31,.55));
  }
  .article-thumb img{
    width:100%; height:100%; object-fit:cover; display:block;
    transition:transform .55s cubic-bezier(.3,0,.2,1);
  }
  .article-card:hover .article-thumb img{ transform:scale(1.07); }

  /* ============ motion ============ */
  .js .reveal{ opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s ease; }
  .js .reveal.in{ opacity:1; transform:none; }
  .js .hero-pulse path{
    stroke-dasharray:1100; stroke-dashoffset:1100;
    animation:pulse-draw 2.2s .3s ease forwards;
  }
  @keyframes pulse-draw{ to{ stroke-dashoffset:0; } }
  @media (prefers-reduced-motion: reduce){
    html{ scroll-behavior:auto; }
    .js .reveal{ opacity:1; transform:none; transition:none; }
    .js .hero-pulse path{ animation:none; stroke-dasharray:none; stroke-dashoffset:0; }
    .aurora, .lead-wrap, .float-chip, .hero-chip .dot{ animation:none !important; }
    .header-cta svg, .float-call svg, .dock-call svg, .btn-glass svg, .header-phone svg{ animation:none !important; }
    .float-call::before{ animation:none !important; opacity:0; }
    .article-thumb img{ transition:none; }
    .side-rail::after{ animation:none !important; opacity:0; }
    .arrow-move{ animation:none !important; }
    .brand-name, .hero h1 .grad{ animation:none !important; }
    .js .main-nav.open li{ animation:none; opacity:1; }
    .lead-wrap::before, .contact-form-wrap::before, .modal-wrap::before{ animation:none !important; }
    .marquee-track{ animation:none; }
    .btn,.float-btn,.area-card,.article-card,.spec-card{ transition:none; }
  }

  /* ============ certificate corners ============ */
  .corner{ position:absolute; width:30px; height:30px; pointer-events:none; z-index:3; }
  .c-tl{
    top:13px; inset-inline-start:13px;
    border-top:2px solid rgba(34,211,238,.55);
    border-inline-start:2px solid rgba(34,211,238,.55);
  }
  .c-br{
    bottom:13px; inset-inline-end:13px;
    border-bottom:2px solid rgba(34,211,238,.55);
    border-inline-end:2px solid rgba(34,211,238,.55);
  }

  /* ============ scroll progress bar ============ */
  .progress{ position:fixed; top:0; inset-inline:0; height:3px; z-index:150; pointer-events:none; }
  .progress span{
    display:block; height:100%; width:0;
    background:var(--grad);
    box-shadow:0 0 12px rgba(34,211,238,.8);
  }

  /* ============ side light rails (desktop) ============ */
  .section{ overflow:clip; }
  .side-rail{
    display:none; position:absolute; top:14%; bottom:14%; width:1px;
    pointer-events:none;
    background:linear-gradient(180deg, transparent, rgba(140,195,215,.22) 28%, rgba(140,195,215,.22) 72%, transparent);
  }
  .side-rail::after{
    content:""; position:absolute; inset-inline-start:-2.5px; top:-10%;
    width:6px; height:74px; border-radius:99px;
    background:linear-gradient(180deg, transparent, var(--cy), transparent);
    filter:blur(.5px); opacity:0;
    animation:rail-run 8s cubic-bezier(.45,0,.4,1) infinite;
  }
  .side-rail.delay::after{ animation-delay:4s; }
  @keyframes rail-run{
    0%{ top:-10%; opacity:0; }
    12%{ opacity:.85; }
    82%{ opacity:.85; }
    100%{ top:104%; opacity:0; }
  }
  .rail-start{ inset-inline-start:38px; }
  .rail-end{ inset-inline-end:38px; }
  @media (min-width:1280px){ .side-rail{ display:block; } }

  /* centered section-title flourish */
  .section-head.center .section-title::after{
    content:""; display:block; width:74px; height:3px; border-radius:99px;
    background:var(--grad); margin:18px auto 0;
    box-shadow:0 0 14px rgba(34,211,238,.6);
  }

  /* ============ header phone (mobile) — premium pill ============ */
  .header-phone{
    display:none; align-items:center; gap:9px;
    height:46px; padding:0 17px; border-radius:99px;
    background:linear-gradient(120deg, rgba(12,155,184,.28), rgba(15,181,162,.24));
    border:1px solid rgba(34,211,238,.55);
    color:var(--text); font-weight:800; font-size:15px;
    font-variant-numeric:tabular-nums;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 10px 24px -10px rgba(34,211,238,.5);
    text-decoration:none; flex:none; white-space:nowrap;
  }
  .header-phone svg{
    width:18px; height:18px; flex:none;
    animation:ring 3.4s ease-in-out 1.2s infinite; transform-origin:50% 30%;
  }
  .header-phone .num{ direction:ltr; letter-spacing:.02em; }
  @media (max-width:480px){
    .header-phone{ width:46px; padding:0; justify-content:center; }
    .header-phone .num{ display:none; }
  }

  /* nav density on mid-size screens */
  @media (max-width:1650px){
    .main-nav a{ font-size:14px; padding:8px 8px; }
    .header-cta{ padding:11px 18px; font-size:14.5px; }
    .brand-name{ font-size:21px; }
  }

  /* ============ drawer navigation ============ */
  .drawer-head, .drawer-cta{ display:none; }
  .nav-backdrop{
    position:fixed; inset:0; z-index:135;
    background:rgba(2,10,16,.62);
    backdrop-filter:blur(5px);
    -webkit-backdrop-filter:blur(5px);
    opacity:0; pointer-events:none; transition:opacity .3s;
  }
  .nav-backdrop.open{ opacity:1; pointer-events:auto; }
  @media (max-width:1400px){
    .menu-toggle{ display:inline-flex; }
    .header-cta{ display:none; }
    .header-phone{ display:inline-flex; }
    .main-nav{
      position:fixed; top:0; bottom:0; inset-inline-start:0; z-index:140;
      width:min(370px, 88vw);
      background:linear-gradient(170deg, var(--card2) 0%, var(--bg0) 72%);
      border-inline-end:1px solid var(--line2);
      box-shadow:0 0 90px rgba(0,0,0,.65);
      transform:translateX(110%);
      visibility:hidden;
      transition:transform .4s cubic-bezier(.32,0,.15,1), visibility 0s .4s;
      display:flex; flex-direction:column;
      overflow-y:auto;
    }
    .main-nav.open{
      transform:none; visibility:visible;
      transition:transform .4s cubic-bezier(.32,0,.15,1), visibility 0s;
    }
    .drawer-head{
      display:flex; align-items:center; justify-content:space-between;
      padding:16px 20px; border-bottom:1px solid var(--line); flex:none;
    }
    .drawer-head img{
      height:44px; width:auto; background:#fff; border-radius:10px; padding:3px 7px;
    }
    .drawer-close{
      width:42px; height:42px; border-radius:50%;
      border:1px solid var(--line2); background:rgba(34,211,238,.07); color:var(--text);
      display:grid; place-items:center;
    }
    .drawer-close svg{ width:17px; height:17px; }
    .main-nav ul{
      flex-direction:column; align-items:stretch; gap:0;
      padding:12px 16px; flex:1; margin:0;
    }
    .main-nav li{ list-style:none; }
    .main-nav a{
      display:flex; align-items:center; justify-content:space-between; gap:10px;
      font-size:17.5px; font-weight:700; color:var(--text);
      padding:16px 10px; border-radius:0;
      border-bottom:1px solid var(--line);
    }
    .main-nav li:last-child a{ border-bottom:none; }
    .main-nav a::after{
      content:"‹"; font-size:22px; line-height:1; color:var(--cy-soft); opacity:.7;
    }
    .main-nav a:hover{ background:rgba(34,211,238,.06); color:var(--cy-soft); }
    .js .main-nav.open li{ opacity:0; animation:drawer-item .5s cubic-bezier(.2,0,.2,1) both; }
    .js .main-nav.open li:nth-child(1){ animation-delay:.07s; }
    .js .main-nav.open li:nth-child(2){ animation-delay:.11s; }
    .js .main-nav.open li:nth-child(3){ animation-delay:.15s; }
    .js .main-nav.open li:nth-child(4){ animation-delay:.19s; }
    .js .main-nav.open li:nth-child(5){ animation-delay:.23s; }
    .js .main-nav.open li:nth-child(6){ animation-delay:.27s; }
    .js .main-nav.open li:nth-child(7){ animation-delay:.31s; }
    .drawer-cta{
      display:grid; gap:10px;
      padding:16px 20px calc(18px + env(safe-area-inset-bottom));
      border-top:1px solid var(--line); flex:none;
    }
    .drawer-cta .btn{ width:100%; padding:14px 20px; font-size:15.5px; }
    .drawer-cta .btn-wa{ background:var(--wa); color:#fff; }
    .drawer-addr{ text-align:center; font-size:13.5px; color:var(--muted); margin:0; }
  }
  @keyframes drawer-item{ from{ opacity:0; transform:translateX(20px); } to{ opacity:1; transform:none; } }

  /* ============ responsive ============ */
  @media (max-width:1080px){
    .hero-grid{ grid-template-columns:1fr; gap:48px; padding-block:60px 72px; }
    .areas-grid{ grid-template-columns:repeat(2,1fr); }
    .specs-grid{ grid-template-columns:1fr; }
    .about-grid{ grid-template-columns:1fr; gap:48px; }
    .portrait{ max-width:340px; }
    .articles-grid{ grid-template-columns:repeat(2,1fr); }
    .contact-grid{ grid-template-columns:1fr; }
    .contact-tiles{ grid-template-columns:repeat(2,1fr); }
    .office-band .container{ grid-template-columns:1fr; gap:28px; }
    .office-media img{ height:230px; }
    .process-layout{ grid-template-columns:1fr; gap:36px; }
    .process-media{ position:static; grid-template-columns:1fr 1fr; align-items:stretch; }
    .process-media img{ height:100%; min-height:200px; }
    .footer-grid{ grid-template-columns:1fr 1fr; }
    .quickbar{ display:none; }
  }
  @media (max-width:760px){
    .wiz-dot{ flex-direction:column; font-size:11.5px; gap:6px; }
    .wiz-dot .n{ font-size:16px; width:42px; height:42px; }
    .wiz-line{ margin-inline:8px; margin-bottom:22px; }
    .contact-form-card .chips{ grid-template-columns:1fr 1fr; }
    .form-grid-2{ grid-template-columns:1fr; }
    .hero-badges{ flex-direction:column; gap:13px; align-items:flex-start; padding-top:20px; }
    .hero-badges span{ padding-inline:0; }
    .hero-badges span + span{ border-inline-start:none; }
    .hero-ctas .btn{ width:100%; }
  }
  @media (max-width:640px){
    body{ font-size:16px; }
    .section{ padding-block:66px; }
    .areas-grid{ grid-template-columns:1fr; }
    .articles-grid{ grid-template-columns:1fr; }
    .office-band .container{ grid-template-columns:1fr; gap:22px; }
    .contact-form-card .lead-form{ grid-template-columns:1fr; }
    .footer-grid{ grid-template-columns:1fr; gap:34px; }
    .topbar .tb-secondary{ display:none; }
    .steps::before{ inset-inline-start:25px; }
    .step{ padding-inline-start:74px; }
    .step-dot{ width:52px; height:52px; font-size:19px; }
    .float-chip.c1{ inset-inline-start:-8px; }
    .float-chip.c2{ inset-inline-end:-8px; }
    .float-stack,.float-tab{ display:none; }
    .mobile-dock{
      display:grid; grid-template-columns:1fr 1fr 1.35fr;
      position:fixed; bottom:0; inset-inline:0; z-index:110;
      background:rgba(3,15,21,.96);
      backdrop-filter:blur(14px);
      border-top:1px solid rgba(45,212,191,.35);
      padding:10px 12px calc(10px + env(safe-area-inset-bottom));
      gap:10px;
    }
    .dock-btn{
      display:flex; align-items:center; justify-content:center; gap:8px;
      padding:13px 8px; border-radius:99px; text-decoration:none;
      font-weight:700; font-size:14.5px; border:none;
    }
    .dock-btn svg{ width:18px; height:18px; flex:none; }
    .dock-call{ background:transparent; color:var(--text); border:1px solid var(--line2); }
    .dock-wa{ background:var(--wa); color:#fff; }
    .dock-lead{ background:var(--grad-btn); color:#fff; }
    body{ padding-bottom:78px; }
    .brand-name{ font-size:19px; }
    .brand-sub{ font-size:9.5px; letter-spacing:.12em; }
    .contact-tiles{ grid-template-columns:1fr; }
    .process-media{ grid-template-columns:1fr; }
    .contact-form-card{ padding:30px 22px; }
    .contact-form-card .chips{ grid-template-columns:1fr; }
    .a11y-btn{ bottom:calc(96px + env(safe-area-inset-bottom)); inset-inline-end:14px; width:46px; height:46px; }
    .a11y-btn svg{ width:23px; height:23px; }
    .a11y-panel{ bottom:calc(152px + env(safe-area-inset-bottom)); inset-inline-end:14px; }
  }


  /* ============ multi-step wizard form ============ */
  .wiz-progress{
    display:flex; align-items:center; gap:14px; margin-top:20px;
  }
  .wiz-bar{
    flex:1; height:5px; border-radius:99px;
    background:rgba(148,206,216,.15); overflow:hidden;
  }
  .wiz-bar span{
    display:block; height:100%; width:50%;
    background:var(--grad);
    border-radius:99px;
    box-shadow:0 0 12px rgba(34,211,238,.6);
    transition:width .45s cubic-bezier(.6,0,.2,1);
  }
  .wiz-label{ font-size:13px; font-weight:700; color:var(--muted); white-space:nowrap; }
  .wiz-step{ display:none; }
  .wiz-step.active{ display:grid; gap:14px; animation:wiz-in .45s cubic-bezier(.4,0,.2,1); }
  @keyframes wiz-in{ from{ opacity:0; transform:translateX(-18px); } to{ opacity:1; transform:none; } }
  .wiz-q{ font-family:'Heebo',sans-serif; font-weight:700; font-size:16.5px; color:var(--text); }
  .chips{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
  .chip{ position:relative; display:block; }
  .chip input{ position:absolute; opacity:0; inset:0; }
  .chip span{
    display:flex; align-items:center; gap:10px;
    padding:13px 15px; border-radius:14px;
    background:rgba(4,20,28,.55);
    border:1px solid var(--line2);
    font-size:14.5px; font-weight:600; color:var(--text2);
    cursor:pointer;
    transition:border-color .15s, background .15s, box-shadow .15s, transform .15s;
  }
  .chip svg{ width:20px; height:20px; flex:none; fill:none; stroke:url(#ig); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
  .chip:hover span{ border-color:rgba(34,211,238,.45); transform:translateY(-1px); }
  .chip input:checked + span{
    border-color:var(--cy);
    background:rgba(34,211,238,.12);
    box-shadow:0 0 0 3px rgba(34,211,238,.14), 0 8px 22px -10px rgba(34,211,238,.4);
    color:#fff;
  }
  .chip input:focus-visible + span{ outline:3px solid var(--ring); outline-offset:2px; }
  .wiz-nav{ display:flex; gap:12px; align-items:center; }
  .wiz-nav .btn{ flex:1; }
  .wiz-back{
    background:none; border:none; color:var(--muted);
    font-weight:700; font-size:14.5px; padding:10px 14px;
    display:inline-flex; align-items:center; gap:7px;
    border-radius:99px;
  }
  .wiz-back:hover{ color:var(--cy-soft); background:rgba(34,211,238,.07); }
  .wiz-back svg{ width:15px; height:15px; }
  .shake{ animation:shake .4s; }
  @keyframes shake{
    0%,100%{ transform:translateX(0); }
    25%{ transform:translateX(6px); }
    50%{ transform:translateX(-6px); }
    75%{ transform:translateX(4px); }
  }
  @media (max-width:400px){ .chips{ grid-template-columns:1fr; } }
  @media (prefers-reduced-motion: reduce){
    .wiz-step.active{ animation:none; }
    .shake{ animation:none; }
  }


  /* ===== v2: hero ===== */
  .hero-fee{ margin-top:14px; font-size:14.5px; font-weight:700; color:var(--cy-soft); display:inline-flex; align-items:center; gap:8px; }
  .hero-fee::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--grad); box-shadow:0 0 10px rgba(34,211,238,.8); }
  .section-head.wide{ max-width:860px; }

  /* ===== v2: situations ===== */
  .situations{
    background:
      radial-gradient(900px 500px at 50% -10%, rgba(34,211,238,.12), transparent 60%),
      linear-gradient(180deg, var(--bg1), var(--bg0));
    border-block:1px solid var(--line);
  }
  .sit-pulse{ width:120px; height:24px; margin:0 auto 14px; display:block; }
  .sit-pulse path{ fill:none; stroke:url(#pulseGrad); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
  .situations .section-title{ font-size:clamp(30px,4vw,50px); }
  .sit-sub{ margin-top:12px; font-family:'Heebo',sans-serif; font-weight:800; font-size:clamp(19px,2.2vw,25px); color:var(--cy-soft); }
  .situations .section-lede strong{ color:var(--text); }
  .sit-grid{ display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
  .sit-card{
    grid-column:span 3; position:relative;
    background:linear-gradient(165deg, rgba(10,37,52,.9), rgba(6,22,32,.95));
    border:1px solid rgba(34,211,238,.28); border-radius:18px;
    padding:22px 20px 24px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 20px 50px -30px rgba(0,0,0,.7);
    transition:transform .25s, border-color .25s, box-shadow .25s;
  }
  .sit-card:nth-child(n+5){ grid-column:span 4; }
  .sit-card:hover{ transform:translateY(-5px); border-color:rgba(34,211,238,.6); box-shadow:0 30px 60px -24px rgba(0,0,0,.7), var(--glow); }
  .sit-head{ display:flex; align-items:flex-start; gap:12px; margin-bottom:12px; }
  .sit-num{
    flex:none; font-family:'Heebo',sans-serif; font-weight:800; font-size:22px; line-height:1.1;
    color:var(--cy); padding-inline-end:12px; border-inline-end:1px solid rgba(34,211,238,.45);
    text-shadow:0 0 14px rgba(34,211,238,.6);
  }
  .sit-card h3{ font-size:17.5px; font-weight:800; color:#F6FBFC; line-height:1.3; }
  .sit-card p{ font-size:14.5px; color:var(--text2); line-height:1.65; }
  .sit-close{
    margin-top:26px; display:flex; align-items:center; gap:28px; justify-content:space-between;
    background:rgba(34,211,238,.05); border:1px solid rgba(34,211,238,.25); border-radius:18px;
    padding:22px 26px;
  }
  .sit-close p{ font-size:15px; color:var(--text2); max-width:62ch; }
  .sit-close strong{ color:var(--cy-soft); }
  .sit-close .btn{ flex:none; }

  /* ===== v2: video ===== */
  .video-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr); gap:56px; align-items:center; }
  .video-text .section-title{ font-size:clamp(28px,3.2vw,40px); }
  .video-text p{ font-size:16px; color:var(--text2); line-height:1.75; }
  .video-text p + p{ margin-top:14px; }
  .video-text .video-lead{
    margin-top:18px; font-size:17.5px; font-weight:700; color:var(--cy-soft);
    padding-inline-start:16px; border-inline-start:3px solid var(--cy);
  }
  .video-media{
    padding:10px; border-radius:22px;
    background:linear-gradient(165deg, rgba(13,44,58,.95), rgba(6,22,32,.98));
    border:1px solid rgba(34,211,238,.35);
    box-shadow:0 40px 90px -30px rgba(0,0,0,.7), 0 0 50px -16px rgba(34,211,238,.4);
  }
  .video-embed{ position:relative; aspect-ratio:16/9; border-radius:14px; overflow:hidden; background:#000; }
  .video-embed iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
  @media (max-width:1080px){ .video-grid{ grid-template-columns:1fr; gap:30px; } }

  /* ===== v2: team photos ===== */
  .bio-photo{ background:radial-gradient(120% 90% at 50% 18%, rgba(125,227,241,.32), rgba(13,44,58,.96) 72%); }
  .bio-photo img{ object-position:50% 12%; }
  .process-media img.office-photo{ height:300px; object-position:40% 35%; }
  .team-duo{
    margin:0 0 26px; border-radius:20px; overflow:hidden; border:1px solid var(--line2);
    background:radial-gradient(90% 80% at 50% 25%, rgba(125,227,241,.28), rgba(13,44,58,.96) 75%);
  }
  .team-duo img{ display:block; width:100%; height:auto; margin:0; border:0; border-radius:0; }
  .team-duo figcaption{ padding:12px 16px; font-size:14px; font-weight:700; color:var(--cy-soft); text-align:center; border-top:1px solid var(--line); }

  /* ===== v2: cases ===== */
  .cases{ background:radial-gradient(800px 400px at 50% 0%, rgba(45,212,191,.08), transparent 60%), var(--bg0); }
  .cases-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .case-card{
    display:flex; gap:18px; align-items:flex-start;
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid var(--line); border-radius:var(--r); padding:26px 24px;
    transition:transform .25s, border-color .25s, box-shadow .25s;
  }
  .case-card:hover{ transform:translateY(-5px); border-color:rgba(34,211,238,.45); box-shadow:0 30px 60px -24px rgba(0,0,0,.6); }
  .case-body{ display:flex; flex-direction:column; gap:8px; min-width:0; }
  .case-amount{ font-family:'Heebo',sans-serif; font-weight:800; font-size:20px; color:var(--cy); text-shadow:0 0 14px rgba(34,211,238,.45); }
  .case-card h3{ font-size:17px; font-weight:800; color:#F6FBFC; line-height:1.35; }
  .case-card p{ font-size:14.5px; color:var(--text2); line-height:1.65; }
  .case-link{ margin-top:4px; font-size:14px; font-weight:700; color:var(--cy-soft); text-decoration:none; }
  .case-link:hover{ text-decoration:underline; }
  .cases-close{ margin-top:30px; text-align:center; display:grid; gap:20px; justify-items:center; }
  .cases-close p{ font-size:14.5px; color:var(--muted); max-width:78ch; }

  /* ===== v2: testimonials ===== */
  .testi-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .testi-card{
    margin:0; display:flex; flex-direction:column; gap:14px;
    background:linear-gradient(165deg, var(--card2), rgba(7,26,35,.92));
    border:1px solid rgba(34,211,238,.22); border-radius:20px; padding:24px 22px;
    transition:transform .25s, border-color .25s, box-shadow .25s;
  }
  .testi-card:hover{ transform:translateY(-5px); border-color:rgba(34,211,238,.5); box-shadow:0 30px 60px -24px rgba(0,0,0,.6); }
  .testi-top{ display:flex; align-items:center; gap:12px; }
  .testi-quote{ font-family:Georgia,serif; font-size:52px; line-height:.6; color:var(--cy); margin-top:14px; }
  .testi-meta{ flex:1; display:flex; flex-direction:column; align-items:center; gap:3px; }
  .stars{ color:#F5B301; letter-spacing:2px; font-size:15px; text-shadow:0 0 10px rgba(245,179,1,.4); }
  .testi-src{ font-size:13.5px; font-weight:700; color:var(--cy-soft); }
  .src-badge{
    flex:none; width:44px; height:44px; border-radius:50%; display:grid; place-items:center;
    font-family:'Heebo',sans-serif; font-weight:900; font-size:19px;
    background:#fff; color:#4285F4; border:2px solid rgba(34,211,238,.35);
  }
  .src-badge.src-din{ background:#0B1F2E; color:#fff; font-size:12px; letter-spacing:.06em; border-color:rgba(255,255,255,.35); }
  .src-badge.sm{ width:26px; height:26px; font-size:14px; border-width:1px; }
  .testi-card blockquote{ margin:0; font-size:15.5px; color:var(--text2); line-height:1.7; }
  .testi-cta{ margin-top:30px; display:flex; flex-direction:column; align-items:center; gap:14px; }
  .testi-more{ color:var(--cy-soft); font-weight:700; font-size:14.5px; }

  /* ===== v2: areas additions ===== */
  .area-card h3 a{ color:inherit; text-decoration:none; }
  .area-card h3 a:hover{ color:var(--cy-soft); }
  .area-deep{ font-size:13.5px; color:var(--muted); }
  .area-deep a{ color:var(--cy-soft); font-weight:700; text-decoration:none; }
  .area-more{ margin-top:auto; font-size:14px; font-weight:700; color:var(--cy-soft); text-decoration:none; }

  /* ===== v2: why ===== */
  .why-grid{ display:grid; grid-template-columns:minmax(0,2fr) minmax(0,3fr); gap:56px; align-items:center; }
  .why-photo{
    position:relative; border-radius:24px; overflow:hidden; border:1px solid var(--line2);
    box-shadow:0 40px 90px -30px rgba(0,0,0,.7), 0 0 50px -18px rgba(34,211,238,.35);
  }
  .why-photo img{ width:100%; height:100%; aspect-ratio:4/5; object-fit:cover; object-position:top; display:block; }
  .why-photo::after{ content:""; position:absolute; inset:0; background:linear-gradient(185deg, rgba(6,19,31,0) 60%, rgba(6,19,31,.88) 96%); pointer-events:none; }
  .why-cap{ position:absolute; bottom:18px; inset-inline-start:18px; z-index:2; display:flex; flex-direction:column; gap:2px; background:rgba(8,30,44,.85); backdrop-filter:blur(8px); border:1px solid rgba(34,211,238,.35); border-radius:14px; padding:10px 14px; }
  .why-cap strong{ color:#F6FBFC; font-size:16px; }
  .why-cap span{ color:var(--cy-soft); font-size:12.5px; font-weight:600; }
  .why-text .section-title{ font-size:clamp(28px,3.4vw,42px); }
  .why-text .section-title .grad{ background:var(--grad); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; }
  .why-list{ list-style:none; margin:26px 0 0; padding:0; display:grid; }
  .why-item{ display:flex; gap:16px; align-items:flex-start; padding:18px 0; border-top:1px solid var(--line); }
  .why-item:first-child{ border-top:none; padding-top:0; }
  .why-check{ flex:none; width:36px; height:36px; border-radius:50%; display:grid; place-items:center; color:#fff; background:var(--grad-btn); box-shadow:0 0 18px -4px rgba(34,211,238,.7); }
  .why-check svg{ width:18px; height:18px; }
  .why-item h3{ font-size:17.5px; font-weight:800; color:#F6FBFC; }
  .why-item p{ margin-top:6px; font-size:15px; color:var(--text2); line-height:1.65; }

  /* ===== v2: team ===== */
  .team{ background:radial-gradient(700px 420px at 50% 0%, rgba(34,211,238,.1), transparent 60%), var(--bg0); }
  .team-sub{ margin-top:10px; font-size:18px; font-weight:600; color:var(--cy-soft); }
  .team-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .bio-card{
    display:grid; grid-template-columns:150px 1fr; gap:20px;
    background:linear-gradient(165deg, var(--card2), rgba(7,26,35,.92));
    border:1px solid rgba(34,211,238,.25); border-radius:20px; padding:22px;
  }
  .bio-photo{ border-radius:14px; overflow:hidden; border:1px solid var(--line2); aspect-ratio:3/4; background:rgba(4,20,28,.6); }
  .bio-photo img{ width:100%; height:100%; object-fit:cover; object-position:top; display:block; }
  .bio-photo.bio-ph{ display:grid; place-items:center; align-content:center; gap:10px; color:var(--muted); font-size:12.5px; font-weight:600; text-align:center; padding:10px; }
  .bio-photo.bio-ph svg{ width:54px; height:54px; fill:none; stroke:rgba(148,206,216,.5); stroke-width:1.5; }
  .bio-body h3{ font-size:19px; font-weight:800; color:#F6FBFC; display:flex; flex-wrap:wrap; gap:8px; align-items:baseline; }
  .bio-body h3 span{ font-size:14px; font-weight:700; color:var(--cy-soft); }
  .bio-body p{ margin-top:10px; font-size:14.5px; color:var(--text2); line-height:1.65; }
  .team-more{ text-align:center; margin-top:22px; }
  .team-more a{ color:var(--cy-soft); font-weight:700; text-decoration:none; }
  .team-more a:hover{ text-decoration:underline; }
  .timeline-card{
    margin-top:30px; background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid var(--line); border-radius:20px; padding:28px 26px 26px;
  }
  .tl-title{ text-align:center; font-size:19px; font-weight:800; color:var(--cy-soft); margin-bottom:28px; display:flex; align-items:center; gap:16px; justify-content:center; }
  .tl-title::before, .tl-title::after{ content:""; flex:1; max-width:160px; height:1px; background:linear-gradient(90deg, transparent, rgba(34,211,238,.5), transparent); }
  .timeline{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:18px; position:relative; }
  .timeline::before{ content:""; position:absolute; top:26px; inset-inline:12%; height:2px; background:linear-gradient(90deg, rgba(34,211,238,.1), rgba(34,211,238,.6), rgba(34,211,238,.1)); }
  .tl-item{ text-align:center; position:relative; }
  .tl-dot{
    width:52px; height:52px; border-radius:50%; margin:0 auto 12px; display:grid; place-items:center; position:relative; z-index:1;
    background:var(--bg0); border:2px solid var(--cy); box-shadow:0 0 22px -4px rgba(34,211,238,.7);
  }
  .tl-dot svg{ width:24px; height:24px; fill:none; stroke:url(#ig); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
  .tl-year{ display:block; font-family:'Heebo',sans-serif; font-size:19px; font-weight:800; color:var(--cy); }
  .tl-item p{ margin-top:6px; font-size:14px; color:var(--text2); line-height:1.6; }
  .tl-item a{ color:var(--cy-soft); font-weight:700; }

  /* ===== v2: methodology + fees ===== */
  .method{
    margin-top:40px; background:linear-gradient(165deg, rgba(10,37,52,.9), rgba(6,22,32,.95));
    border:1px solid rgba(34,211,238,.3); border-radius:22px; padding:30px 30px 26px; text-align:center;
  }
  .method h3{ font-size:clamp(20px,2.4vw,26px); font-weight:800; color:#F6FBFC; margin-bottom:24px; }
  .method-flow{ list-style:none; margin:0; padding:0; display:flex; align-items:stretch; justify-content:center; gap:10px; }
  .method-flow li{
    flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px;
    background:rgba(4,20,28,.6); border:1px solid rgba(34,211,238,.45); border-radius:14px;
    padding:16px 14px; font-size:15px; font-weight:700; color:var(--text); line-height:1.45;
  }
  .method-flow li span{ width:28px; height:28px; border-radius:50%; display:grid; place-items:center; background:var(--grad-btn); color:#fff; font-size:13px; }
  .method-flow li.arr{ flex:0 0 auto; background:none; border:none; padding:0 2px; color:var(--cy); font-size:26px; }
  .method-close{ margin-top:22px; font-size:15.5px; color:var(--text2); line-height:1.7; }
  .method-close strong{ color:var(--cy-soft); }
  .fees{ margin-top:36px; }
  .fees-title{ text-align:center; font-size:clamp(20px,2.4vw,26px); font-weight:800; color:#F6FBFC; margin-bottom:22px; }
  .fees-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
  .fee-card{
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9)); border:1px solid var(--line);
    border-radius:18px; padding:24px 22px; display:flex; flex-direction:column; gap:12px;
  }
  .fee-card h4{ font-size:17px; font-weight:800; color:#F6FBFC; }
  .fee-card p{ font-size:14.5px; color:var(--text2); line-height:1.65; }
  .fees-more{ text-align:center; margin-top:20px; font-size:15px; color:var(--muted); }
  .fees-more a{ color:var(--cy-soft); font-weight:700; }

  @media (max-width:1080px){
    .sit-card, .sit-card:nth-child(n+5){ grid-column:span 6; }
    .cases-grid{ grid-template-columns:1fr; }
    .testi-grid{ grid-template-columns:1fr 1fr; }
    .why-grid{ grid-template-columns:1fr; gap:34px; }
    .why-photo{ max-width:420px; }
    .team-grid{ grid-template-columns:1fr; }
    .timeline{ grid-template-columns:1fr 1fr; }
    .timeline::before{ display:none; }
    .method-flow{ flex-direction:column; }
    .method-flow li.arr{ transform:rotate(-90deg); }
    .fees-grid{ grid-template-columns:1fr; }
    .sit-close{ flex-direction:column; align-items:stretch; text-align:center; }
  }
  @media (max-width:640px){
    .sit-card, .sit-card:nth-child(n+5){ grid-column:span 12; }
    .testi-grid{ grid-template-columns:1fr; }
    .bio-card{ grid-template-columns:1fr; }
    .bio-photo{ max-width:200px; }
    .timeline{ grid-template-columns:1fr; }
    .case-card{ flex-direction:column; }
  }


  /* ===== client notes 20.10 ===== */
  .case-links{ display:flex; flex-wrap:wrap; gap:6px 18px; align-items:center; margin-top:4px; }
  .case-links .case-link{ margin-top:0; }
  .case-link.case-ext{ color:var(--muted); font-weight:600; }
  .case-link.case-ext:hover{ color:var(--cy-soft); }
  #areas .section-lede{ color:var(--text2); font-size:18px; }
  #areas .area-card h3{ font-size:20px; }
  #areas .area-card p{ font-size:16px; color:var(--text2); line-height:1.7; }
  #areas .area-deep{ font-size:14.5px; color:var(--text2); }
  @media (max-width:640px){
    #areas .section-lede{ font-size:17px; }
    #areas .area-card h3{ font-size:21px; }
    #areas .area-card p{ font-size:16.5px; }
  }
  .footer-live{ grid-template-columns:1.1fr 1fr 1.2fr 1.3fr; }
  .footer-live .footer-h{ margin-top:22px; }
  .footer-address{ font-style:normal; line-height:1.9; color:var(--muted); }
  .footer-address a{ color:var(--text2); }
  .footer-legal{ margin-top:18px !important; padding-top:14px !important; border-top:1px solid var(--line); }
  .footer-form .lead-form{ display:grid; gap:10px; margin:0; }
  .footer-form .field input, .footer-form .field textarea{ padding:11px 14px; font-size:14.5px; }
  .footer-form .btn{ width:100%; padding:12px 18px; font-size:15px; }
  @media (max-width:1080px){ .footer-live{ grid-template-columns:1fr 1fr; } }
  @media (max-width:640px){ .footer-live{ grid-template-columns:1fr; } }


  /* ============ inner pages ============ */
  .page-view[hidden]{ display:none; }
  .page-hero{ position:relative; overflow:hidden; background:var(--bg1); border-bottom:1px solid var(--line); }
  .page-hero .ph-img{ position:absolute; inset:0; }
  .page-hero .ph-img img{ width:100%; height:100%; object-fit:cover; }
  .page-hero .ph-img::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(to left, rgba(6,19,31,.96) 30%, rgba(6,19,31,.8) 70%, rgba(7,25,40,.65)),
               linear-gradient(180deg, rgba(6,19,31,.4), rgba(6,19,31,.92));
  }
  .page-hero .container{ position:relative; padding-block:62px 54px; }
  .crumbs{ display:flex; gap:9px; align-items:center; font-size:13.5px; font-weight:600; color:var(--muted); margin-bottom:14px; }
  .crumbs a{ color:var(--cy-soft); text-decoration:none; }
  .crumbs a:hover{ text-decoration:underline; }
  .page-hero h1{ font-size:clamp(30px,4vw,46px); font-weight:900; color:#F6FBFC; letter-spacing:-.02em; }
  .page-layout{
    display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:46px;
    padding-block:60px 90px; align-items:start;
  }
  .page-content{ color:var(--text2); font-size:16.5px; line-height:1.8; max-width:75ch; }
  .page-content h2{ font-size:25px; color:#F6FBFC; margin:34px 0 12px; font-weight:800; }
  .page-content h3{ font-size:20px; color:#F6FBFC; margin:26px 0 10px; font-weight:800; }
  .page-content h4{ font-size:17.5px; color:var(--cy-soft); margin:22px 0 8px; font-weight:700; }
  .page-content p{ margin:0 0 14px; }
  .page-content ul, .page-content ol{ margin:0 0 16px; padding-inline-start:22px; display:grid; gap:7px; }
  .page-content li::marker{ color:var(--tl); }
  .page-content a{ color:var(--cy-soft); }
  .page-content img{ border-radius:16px; border:1px solid var(--line2); margin:12px 0 20px; max-width:100%; height:auto; }
  .page-content blockquote{
    margin:20px 0; padding:20px 24px;
    background:rgba(34,211,238,.06);
    border-inline-start:3px solid var(--cy); border-radius:12px;
    color:var(--cy-soft); font-weight:600;
  }
  .page-side{ position:sticky; top:120px; display:grid; gap:18px; }
  .side-card{
    background:linear-gradient(165deg, var(--card), rgba(7,26,35,.9));
    border:1px solid var(--line); border-radius:18px; padding:24px 22px;
  }
  .side-card h3{ font-size:17.5px; font-weight:800; color:#F6FBFC; margin-bottom:14px; }
  .side-card ul{ list-style:none; margin:0; padding:0; display:grid; gap:0; }
  .side-card ul a{
    display:block; color:var(--text2); text-decoration:none;
    font-size:14.5px; line-height:1.5; padding:10px 0;
    border-bottom:1px solid var(--line);
  }
  .side-card ul li:last-child a{ border-bottom:none; }
  .side-card ul a:hover{ color:var(--cy-soft); }
  .side-form{ border-color:rgba(34,211,238,.35); }
  .side-form .btn{ width:100%; padding:14px 18px; font-size:15px; }
  .side-cta-row{ display:grid; gap:10px; }
  .side-cta-row .btn{ width:100%; padding:13px 16px; font-size:14.5px; }
  .btn-wa{ background:var(--wa); color:#fff; }
  /* dropdown submenu */
  .main-nav li{ position:relative; list-style:none; }
  .main-nav li.has-sub > a::after, .main-nav li.menu-item-has-children > a::after{ content:"▾"; font-size:9px; margin-inline-start:5px; opacity:.7; }
  @media (min-width:1401px){
    .main-nav .sub, .main-nav .sub-menu{
      position:absolute; top:calc(100% + 8px); inset-inline-start:0;
      min-width:225px; margin:0; padding:8px; list-style:none;
      background:linear-gradient(165deg, var(--card2), var(--bg0));
      border:1px solid var(--line2); border-radius:14px;
      box-shadow:0 30px 60px -20px rgba(0,0,0,.75);
      opacity:0; visibility:hidden; transform:translateY(8px);
      transition:opacity .2s, transform .2s, visibility .2s; z-index:60;
      display:block;
    }
    .main-nav li:hover > .sub, .main-nav li:hover > .sub-menu, .main-nav li:focus-within > .sub, .main-nav li:focus-within > .sub-menu{
      opacity:1; visibility:visible; transform:none;
    }
    .main-nav .sub a, .main-nav .sub-menu a{ display:block; padding:10px 13px; border-radius:9px; font-size:14px; white-space:nowrap; }
  }
  @media (max-width:1400px){
    .main-nav .sub, .main-nav .sub-menu{ list-style:none; margin:0; padding:0; padding-inline-start:16px; }
    .main-nav .sub a, .main-nav .sub-menu a{ font-size:15px; color:var(--muted); padding:13px 10px; }
    .js .main-nav.open li:nth-child(8){ animation-delay:.35s; }
  }
  @media (max-width:1080px){
    .page-layout{ grid-template-columns:1fr; }
    .page-side{ position:static; }
  }

/* ===== WordPress content ===== */
.page-layout > *{ min-width:0; }
@media (max-width:1080px){ .page-layout{ grid-template-columns:minmax(0,1fr); } }
.page-content .table-wrap{ overflow-x:auto; margin:18px 0 24px; border:1px solid var(--line2); border-radius:14px; }
.page-content table{ width:100%; border-collapse:collapse; font-size:15px; min-width:520px; }
.page-content caption{ caption-side:top; text-align:start; padding:12px 16px; font-weight:700; color:var(--cy-soft); }
.page-content th, .page-content td{ padding:12px 16px; text-align:start; vertical-align:top; border-bottom:1px solid var(--line); }
.page-content thead th{ background:rgba(34,211,238,.10); color:#F6FBFC; font-weight:800; }
.page-content tbody tr:nth-child(even) td{ background:rgba(255,255,255,.02); }
.page-content tbody tr:last-child td{ border-bottom:0; }
.page-content .embed{ position:relative; aspect-ratio:16/9; margin:18px 0 24px; border-radius:14px; overflow:hidden; background:#000; }
.page-content .embed iframe{ position:absolute; inset:0; width:100%; height:100%; border:0; }
.page-content figure{ margin:16px 0 22px; }
.page-content figcaption{ font-size:13px; color:var(--muted); text-align:center; margin-top:6px; }
.page-content hr{ border:0; border-top:1px solid var(--line); margin:28px 0; }
.page-meta{ color:var(--muted); font-size:14px; margin-bottom:18px; }
.toast.err{ border-color:rgba(248,113,113,.6); }
.pagination-wrap{ margin-top:44px; text-align:center; }
.pagination-wrap .nav-links{ display:inline-flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:center; }
.pagination-wrap .page-numbers{
  display:inline-grid; place-items:center; min-width:42px; height:42px; padding:0 12px;
  border-radius:12px; border:1px solid var(--line2); color:var(--text2);
  text-decoration:none; font-weight:700; background:rgba(4,20,28,.5);
}
.pagination-wrap .page-numbers.current{ background:var(--grad-btn); color:#fff; border-color:transparent; }
.page-content .related-posts{ list-style:none; padding:0; margin:18px 0 26px; display:grid; gap:10px; }
.page-content .related-posts li{ padding:14px 18px; border:1px solid var(--line); border-radius:14px; background:rgba(4,20,28,.45); line-height:1.65; }
.page-content .related-posts li::marker{ content:""; }
.page-content .related-posts a{ text-decoration:none; }
.page-content .related-posts a strong{ color:#F6FBFC; }
.page-content .related-posts a:hover strong{ color:var(--cy-soft); }
.page-content sub, .page-content sup{ font-size:.72em; line-height:0; }
.page-content .listing-grid{ grid-template-columns:repeat(2,1fr); margin:26px 0 0; max-width:none; }
.page-content .article-card{ text-decoration:none; }
.page-content .article-card .article-excerpt{ font-size:14.5px; color:var(--muted); line-height:1.65; margin:0; }
.page-content .article-thumb img{ margin:0; border:0; border-radius:0; }
@media (max-width:640px){ .page-content .listing-grid{ grid-template-columns:1fr; } }
.screen-reader-text{ position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(1px,1px,1px,1px); white-space:nowrap; }

/* phone fields: placeholder and typed number sit on the right; digits keep their own order */
input[type="tel"]{ direction:rtl; unicode-bidi:plaintext; text-align:right; }
