:root{--bg:#080d17;--card:#14203a;--border:#243352;--border-2:#33456a;--accent:#4cc7ff;--accent-2:#8f9cff;--accent-3:#3ee0f0;--warn:#ff9d2f;--text:#f2f6fc;--muted:#aebbd0;--muted-2:#8091ab;--maxw:1200px}
  *{box-sizing:border-box}html,body{margin:0}
  body{background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  a{color:inherit;text-decoration:none}
  .bgl{position:fixed;inset:0;z-index:-2;pointer-events:none}
  .l-duo{inset:-8%;animation:duoBreath 17s ease-in-out infinite;background:radial-gradient(28% 30% at 82% 12%,rgba(76,199,255,.22),transparent 60%),radial-gradient(30% 32% at 14% 60%,rgba(143,156,255,.18),transparent 60%),#080d17}
  @keyframes duoBreath{0%,100%{opacity:.86}50%{opacity:.98}}
  @keyframes barPulse{0%,100%{transform:scaleX(1)}50%{transform:scaleX(.88)}}
  @keyframes typing{0%,60%,100%{opacity:.3}30%{opacity:1}}
  @keyframes barGrow{0%,100%{transform:scaleY(.5)}50%{transform:scaleY(1)}}
  @keyframes pingG{0%{box-shadow:0 0 0 0 rgba(52,211,153,.5)}70%{box-shadow:0 0 0 8px rgba(52,211,153,0)}100%{box-shadow:0 0 0 0 rgba(52,211,153,0)}}
  @keyframes pingO{0%{box-shadow:0 0 0 0 rgba(255,157,47,.55)}70%{box-shadow:0 0 0 8px rgba(255,157,47,0)}100%{box-shadow:0 0 0 0 rgba(255,157,47,0)}}
  @media(prefers-reduced-motion:reduce){*{animation:none!important}}

  .promo{text-align:center;font-family:"Space Grotesk",Inter,sans-serif;font-size:13.5px;font-weight:600;padding:9px 18px;color:#2b0d00;background:linear-gradient(100deg,#ff9d2f,#ff5a3c 48%,#ff4d6a)}
  .promo a{text-decoration:underline;text-underline-offset:2px}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 26px;position:relative;z-index:2}
  nav{display:flex;align-items:center;justify-content:space-between;height:74px}
  .brand{display:flex;align-items:center;gap:11px;font-family:"Space Grotesk";font-weight:700;letter-spacing:.02em}
  .navlogo{width:26px;height:auto}.brand span{color:var(--accent)}
  .navlinks{display:flex;gap:26px;align-items:center;font-size:14.5px;color:var(--muted)}
  .navlinks a:hover{color:var(--text)}.navlinks .fdl{color:var(--text)}
  .navlinks .fdl::after{content:"NEW";font-size:9px;font-weight:700;letter-spacing:.08em;color:#04121b;background:var(--accent-3);border-radius:20px;padding:2px 6px;margin-left:7px;vertical-align:middle}
  .phone{color:var(--accent);font-weight:600;font-size:14.5px}
  @media(max-width:900px){.navlinks{display:none}}

  .eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border-2);background:rgba(20,32,58,.55);padding:7px 13px;border-radius:100px}
  .eyebrow b{color:var(--accent-3)}
  .seyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-3);font-weight:600}
  h1{font-family:"Space Grotesk";font-weight:700;line-height:.98;letter-spacing:-.02em;margin:0}
  h2{font-family:"Space Grotesk";font-weight:700;letter-spacing:-.02em;line-height:1.04;margin:12px 0 0;font-size:clamp(30px,3.8vw,46px)}
  .grad{background:linear-gradient(100deg,#3ee0f0,#4cc7ff 40%,#8f9cff);-webkit-background-clip:text;background-clip:text;color:transparent}
  .lead{color:var(--muted);font-size:17px;line-height:1.6}.lead b{color:var(--text);font-weight:600}
  .btn{display:inline-flex;align-items:center;gap:8px;padding:14px 22px;border-radius:12px;font-weight:600;font-size:15px;cursor:pointer;border:1px solid transparent;transition:transform .15s}
  .btn:hover{transform:translateY(-2px)}
  .btn-primary{color:#04121b;background:linear-gradient(100deg,#4cc7ff,#8f9cff);box-shadow:0 12px 34px -8px rgba(76,199,255,.5)}
  .btn-ghost{color:var(--text);border-color:var(--border-2);background:rgba(20,32,58,.55)}
  .arrow{color:var(--accent-3);font-weight:600}
  section{position:relative;z-index:2}
  .sec{padding:78px 0}
  .biglogo{overflow:visible}.biglogo .lb{transform-box:fill-box;transform-origin:left center}
  .biglogo .lb1{fill:#54678a;animation:barPulse 7s ease-in-out infinite}
  .biglogo .lb2{animation:barPulse 7s ease-in-out 1.2s infinite}
  .biglogo .lb3{fill:#54678a;animation:barPulse 7s ease-in-out 2.4s infinite}
  .bi{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(140deg,rgba(76,199,255,.3),rgba(143,156,255,.3));color:var(--accent-3);font-size:19px;flex:none}

  /* ===== HERO (bento) ===== */
  .bt{border:1px solid var(--border-2);background:rgba(16,26,46,.6);backdrop-filter:blur(10px);border-radius:18px;padding:20px;box-shadow:0 24px 60px -34px rgba(0,0,0,.8);position:relative;overflow:hidden;display:flex;flex-direction:column;transition:transform .16s,border-color .16s}
  a.bt:hover{transform:translateY(-3px);border-color:#3d5480}
  .thead{display:flex;align-items:center;gap:11px}.thead .bi{width:34px;height:34px;font-size:16px}
  .bt h3{font-family:"Space Grotesk";font-weight:600;font-size:16px;margin:0}
  .bt p{color:var(--muted);font-size:12.5px;margin:6px 0 0;line-height:1.4}
  .grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:176px;gap:16px;grid-template-areas:"head head fd fd" "head head stat social" "cta it web web"}
  .t-head{grid-area:head;justify-content:space-between;padding:30px}
  .t-head .hb{display:flex;flex-direction:column;gap:22px}.t-head .biglogo{width:132px;height:auto}
  .t-head h1{font-size:clamp(34px,3.7vw,54px)}
  .t-fd{grid-area:fd;background:linear-gradient(140deg,#4cc7ff,#7e8bff);color:#04121b;flex-direction:row;gap:16px;align-items:stretch;padding:18px}
  .t-fd .fl{flex:.82;display:flex;flex-direction:column;justify-content:flex-start;gap:10px}
  .t-fd .fl .bi{background:rgba(4,18,27,.14);color:#04121b}
  .t-fd .fl h3{color:#04121b;display:flex;align-items:center}.t-fd .np{font-size:10px;font-weight:700;letter-spacing:.06em;background:#081426;color:#5fd0ff;border-radius:20px;padding:2px 8px;margin-left:9px}
  .t-fd .fl p{color:rgba(4,18,27,.72);font-weight:500}
  .t-fd .chat{flex:1.1;background:rgba(6,14,26,.62);border:1px solid rgba(4,18,27,.18);border-radius:13px;padding:12px;display:flex;flex-direction:column;gap:7px;justify-content:center}
  .bub{max-width:88%;padding:8px 11px;border-radius:12px;font-size:12px;line-height:1.3}
  .bub.them{align-self:flex-start;background:rgba(255,255,255,.16);color:#eaf2ff;border-bottom-left-radius:4px}
  .bub.us{align-self:flex-end;background:linear-gradient(100deg,#4cc7ff,#8f9cff);color:#04121b;border-bottom-right-radius:4px}
  .typing{align-self:flex-end;display:flex;gap:4px;padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.14)}
  .typing i{width:6px;height:6px;border-radius:50%;background:#bfe8ff;animation:typing 1.3s infinite}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}
  .t-web{grid-area:web;flex-direction:row;gap:18px;align-items:stretch}
  .t-web .wl{flex:.62;display:flex;flex-direction:column}
  .t-web .wpill{align-self:flex-start;margin-top:12px;font-size:11px;font-weight:600;color:var(--accent-3);border:1px solid rgba(76,199,255,.4);background:rgba(76,199,255,.1);border-radius:100px;padding:5px 11px}
  .site{flex:1;border:1px solid var(--border);border-radius:11px;overflow:hidden;background:#0b1322;display:flex;flex-direction:column}
  .site .mbar{height:18px;background:#0d1526;display:flex;align-items:center;gap:5px;padding:0 9px}
  .site .mbar i{width:6px;height:6px;border-radius:50%;background:#31405e}.site .mbar .url{margin-left:8px;font-size:9px;color:#4a5b7a;font-family:"Space Grotesk"}
  .site .spage{flex:1;padding:10px;display:flex;flex-direction:column;gap:8px}
  .site .shero{flex:1.3;border-radius:8px;background:linear-gradient(130deg,rgba(76,199,255,.4),rgba(143,156,255,.25)),#0e1830;display:flex;align-items:center;padding:0 12px}
  .site .shero .sl{display:flex;flex-direction:column;gap:5px}
  .site .shero .sl b{width:78px;height:8px;border-radius:3px;background:#e8eef7}.site .shero .sl s{width:52px;height:5px;border-radius:3px;background:rgba(232,238,247,.55)}.site .shero .sl em{width:44px;height:12px;border-radius:4px;background:linear-gradient(100deg,#4cc7ff,#8f9cff);margin-top:3px}
  .site .scards{flex:.7;display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.site .scards span{border-radius:6px;background:#18233c;border:1px solid #22304d}
  .t-stat{grid-area:stat}
.t-case{grid-area:stat}.t-stat .stag{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2)}.t-stat .stag b{color:var(--accent-3)}
  .t-stat .slabel{color:var(--muted-2);font-size:12px;margin-top:12px}.t-stat .snum{font-family:"Space Grotesk";font-weight:700;font-size:30px;line-height:1;margin-top:2px}.t-stat .strend{color:var(--accent-3);font-size:11.5px;margin-top:3px}
  .statbars{display:flex;align-items:flex-end;gap:6px;height:34px;margin-top:auto}
  .statbars i{flex:1;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,rgba(76,199,255,.95),rgba(143,156,255,.25));transform-origin:bottom;animation:barGrow 3.2s ease-in-out infinite}
  .statbars i:nth-child(2){animation-delay:.3s}.statbars i:nth-child(3){animation-delay:.6s}.statbars i:nth-child(4){animation-delay:.9s}.statbars i:nth-child(5){animation-delay:1.2s}
  .statset{display:none}.statset.on{display:block}
  .stog{position:absolute;top:15px;right:15px;display:flex;gap:5px}.stog b{width:7px;height:7px;border-radius:50%;background:var(--border-2);cursor:pointer}.stog b.on{background:var(--accent)}
  .t-cta{grid-area:cta;justify-content:center;gap:14px;background:linear-gradient(150deg,rgba(76,199,255,.1),rgba(143,156,255,.06)),rgba(16,26,46,.6)}.t-cta h3{font-size:18px}.t-cta .btn{align-self:flex-start;padding:12px 18px}
  .t-social{grid-area:social}.posts4{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:6px}.posts4 span{height:30px;border-radius:7px}
  .posts4 span:nth-child(1){background:linear-gradient(140deg,#4cc7ff,#2b7fd0)}.posts4 span:nth-child(2){background:linear-gradient(140deg,#8f9cff,#5a63c0)}.posts4 span:nth-child(3){background:linear-gradient(140deg,#3ee0f0,#1c9fb0)}.posts4 span:nth-child(4){background:linear-gradient(140deg,#6f7bf0,#3d47a8)}
  .t-it{grid-area:it}.t-it .statuses{margin-top:auto;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
  .status{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);border:1px solid var(--border-2);background:rgba(9,14,25,.5);padding:7px 12px;border-radius:100px}
  .status .pulse{width:9px;height:9px;border-radius:50%}.status.ok .pulse{background:#34d399;animation:pingG 2s infinite}
  .status.warn{color:#ffcf8f;border-color:rgba(255,157,47,.4)}.status.warn .pulse{background:var(--warn);animation:pingO 2s infinite}
  @media(max-width:940px){.grid{grid-template-columns:1fr 1fr;grid-template-areas:"head head" "fd fd" "stat social" "web web" "cta it";grid-auto-rows:auto}.grid .bt{min-height:158px}.t-head{min-height:auto}.t-fd,.t-web{min-height:180px}}
  @media(max-width:560px){.grid{grid-template-columns:1fr;grid-template-areas:"head" "fd" "stat" "social" "web" "cta" "it"}.t-fd,.t-web{flex-direction:column}}

  /* ===== STATEMENT band ===== */
  .statement{text-align:center;padding:96px 0}
  .statement h2{font-size:clamp(30px,4vw,48px);max-width:1000px;margin:14px auto 0}
  .statement h2 .l2{white-space:nowrap}
  @media(max-width:680px){.statement h2 .l2{white-space:normal}}
  .statement p{max-width:560px;margin:18px auto 0}

  /* ===== alternating service rows ===== */
  .frow{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;padding:44px 0}
  .frow+.frow{border-top:1px solid var(--border)}
  .frow .fvis{order:2}.frow.rev .ftext{order:2}.frow.rev .fvis{order:1}
  .ftext h2{font-size:clamp(26px,3vw,38px)}.ftext .lead{margin-top:14px;max-width:440px}
  .ftext .thead{margin-bottom:6px}
  .ftext a.more{display:inline-block;margin-top:20px}
  .fvis .panel{border:1px solid var(--border-2);background:rgba(16,26,46,.55);backdrop-filter:blur(10px);border-radius:20px;padding:22px;box-shadow:0 30px 70px -40px rgba(0,0,0,.85);min-height:250px;display:flex;flex-direction:column;justify-content:center}
  .fvis .site{min-height:200px}
  .postsbig{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.postsbig span{height:74px;border-radius:12px}
  .postsbig span:nth-child(1){background:linear-gradient(140deg,#4cc7ff,#2b7fd0)}.postsbig span:nth-child(2){background:linear-gradient(140deg,#8f9cff,#5a63c0)}.postsbig span:nth-child(3){background:linear-gradient(140deg,#3ee0f0,#1c9fb0)}.postsbig span:nth-child(4){background:linear-gradient(140deg,#6f7bf0,#3d47a8)}.postsbig span:nth-child(5){background:linear-gradient(140deg,#4cc7ff,#5a63c0)}.postsbig span:nth-child(6){background:linear-gradient(140deg,#3ee0f0,#3d47a8)}
  .monitor{display:flex;flex-direction:column;gap:12px}
  .monitor .mrow{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border:1px solid var(--border-2);background:rgba(9,14,25,.5);border-radius:12px;font-size:14px}
  .monitor .mrow .pulse{width:9px;height:9px;border-radius:50%;margin-right:9px}
  .monitor .ok .pulse{background:#34d399;animation:pingG 2s infinite}.monitor .warn{color:#ffcf8f}.monitor .warn .pulse{background:var(--warn);animation:pingO 2s infinite}
  @media(max-width:820px){.frow{grid-template-columns:1fr;gap:26px}.frow .fvis,.frow.rev .fvis,.frow.rev .ftext{order:0}}

  /* ===== Front Desk spotlight ===== */
  .fdspot{border-radius:26px;overflow:hidden;background:linear-gradient(135deg,#4cc7ff,#7e8bff);color:#04121b;display:grid;grid-template-columns:1fr 1fr;gap:0}
  .fdspot .fs-l{padding:44px}
  .fdspot .np{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;background:#081426;color:#5fd0ff;border-radius:20px;padding:4px 11px;margin-bottom:16px}
  .fdspot h2{color:#04121b;font-size:clamp(28px,3.4vw,42px);margin:0}
  .fdspot .fs-p{color:rgba(4,18,27,.78);font-size:16px;margin:16px 0 0;max-width:420px;font-weight:500}
  .fdspot ul{list-style:none;padding:0;margin:22px 0 0;display:flex;flex-direction:column;gap:11px}
  .fdspot li{display:flex;align-items:center;gap:11px;color:#04121b;font-weight:500;font-size:14.5px}
  .fdspot li .ck{width:22px;height:22px;border-radius:50%;background:rgba(4,18,27,.16);display:grid;place-items:center;font-size:12px;flex:none}
  .fdspot .fs-btn{display:inline-block;margin-top:26px;background:#081426;color:#eaf6ff;padding:14px 22px;border-radius:12px;font-weight:600;font-size:15px}
  .fdspot .fs-r{padding:44px;display:flex;flex-direction:column;justify-content:center;gap:9px;background:rgba(6,14,26,.5)}
  .fdspot .fs-r .bub{max-width:82%;font-size:13.5px;padding:11px 14px}
  @media(max-width:820px){.fdspot{grid-template-columns:1fr}.fdspot .fs-l,.fdspot .fs-r{padding:30px}}

  /* ===== proof ===== */
  .proof{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .pcard{border:1px solid var(--border-2);background:rgba(16,26,46,.55);backdrop-filter:blur(10px);border-radius:20px;padding:28px;box-shadow:0 30px 70px -40px rgba(0,0,0,.85);transition:transform .16s,border-color .16s;display:flex;flex-direction:column}
  .pcard:hover{transform:translateY(-3px);border-color:#3d5480}
  .pcard h3{font-family:"Space Grotesk";font-weight:600;font-size:22px;margin:14px 0 0}
  .pcard p{color:var(--muted);margin:8px 0 0;font-size:14.5px;flex:1}
  .pcard .thumb{height:auto;border-radius:12px;overflow:hidden;border:1px solid var(--border);margin-top:18px;display:flex}
  .pcard .thumb .b4{flex:1;background:linear-gradient(160deg,#2e4a3a,#20372c)}
  .pcard .thumb .a4{flex:1;background:linear-gradient(160deg,#5a3a2a,#7a4a35)}
  .pcard .thumb.demo .b4{background:linear-gradient(160deg,rgba(76,199,255,.3),#0e1830)}.pcard .thumb.demo .a4{background:linear-gradient(160deg,rgba(143,156,255,.3),#0e1830)}
  @media(max-width:720px){.proof{grid-template-columns:1fr}}

  /* ===== pricing teaser ===== */
  .pricing{border:1px solid rgba(255,120,80,.3);border-radius:24px;padding:44px;text-align:center;background:radial-gradient(80% 120% at 50% 0%,rgba(255,90,60,.14),transparent 60%),rgba(14,22,38,.6);backdrop-filter:blur(10px)}
  .pricing .price{font-family:"Space Grotesk";font-weight:700;font-size:clamp(38px,5vw,58px);margin:16px 0 0}
  .pricing .sub{color:var(--muted);margin-top:10px}
  .pricing .btn{margin-top:26px}

  /* ===== contact (Front Desk form) ===== */
  .cwrap{display:grid;grid-template-columns:.92fr 1.08fr;gap:44px;align-items:stretch}
  @media(max-width:880px){.cwrap{grid-template-columns:1fr;gap:30px}}
  .cleft h2{margin-bottom:14px}.cleft>.lead{margin-bottom:24px;max-width:420px}
  .cflow{list-style:none;display:flex;flex-direction:column;gap:15px;margin:0;padding:0}
  .cflow li{display:flex;gap:13px;align-items:flex-start}
  .cf-n{flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font-family:"Space Grotesk";font-weight:700;font-size:.9rem;color:var(--accent);background:linear-gradient(135deg,rgba(76,199,255,.16),rgba(124,140,255,.16));border:1px solid var(--border-2)}
  .cflow b{display:block;font-size:15px;margin-bottom:2px}.cflow p{color:var(--muted);font-size:13.5px;margin:0;line-height:1.45}
  .cright{position:relative;background:linear-gradient(180deg,var(--card),rgba(12,18,32,.9));border:1px solid var(--border-2);border-radius:22px;padding:30px;box-shadow:0 40px 80px -44px rgba(0,0,0,.85)}
  .cright h3{font-family:"Space Grotesk";font-size:19px;margin:0 0 4px}.cright .csub{color:var(--muted);font-size:14px;margin-bottom:20px}
  .frow2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:480px){.frow2{grid-template-columns:1fr}}
  .ffield{margin-bottom:15px}.ffield label{display:block;font-size:.78rem;font-weight:600;margin-bottom:7px;color:var(--muted)}
  .ffield input,.ffield textarea{width:100%;padding:13px 14px;border-radius:11px;border:1px solid var(--border-2);background:rgba(7,11,18,.5);color:var(--text);font-family:inherit;font-size:15px}
  .ffield input:focus,.ffield textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(76,199,255,.14)}
  .ffield textarea{resize:vertical;min-height:96px}
  .btn-deal{width:100%;color:#2b0d00;background:linear-gradient(100deg,#ff9d2f,#ff5a3c 52%,#ff4d6a);border:0;padding:15px;border-radius:12px;font-weight:600;font-size:15px;cursor:pointer}

  /* footer */
  footer{border-top:1px solid var(--border);margin-top:20px;padding:40px 0 30px;position:relative;z-index:2}
  .foot{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center}
  .footlinks{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;color:var(--muted);font-size:14px}
  .footlinks a:hover{color:var(--text)}
  .footmeta{color:var(--muted-2);font-size:13px}
  .tag{position:fixed;left:14px;bottom:16px;z-index:9;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted-2);border:1px solid var(--border);background:rgba(10,16,28,.7);padding:6px 10px;border-radius:8px}
  @media(max-width:640px){.tag{display:none}}

  .fs-note{font-size:11.5px;color:rgba(234,246,255,.62);text-align:center;margin-top:6px}
  .gradred{background:linear-gradient(100deg,#ff9d2f,#ff5a3c 50%,#ff4d6a);-webkit-background-clip:text;background-clip:text;color:transparent}
  .btn-red{color:#2b0d00;background:linear-gradient(100deg,#ff9d2f,#ff5a3c 52%,#ff4d6a);box-shadow:0 12px 34px -8px rgba(255,90,60,.5)}
  .pricing .seyebrow{color:#ff8a5c}
  .fdincl{display:inline-flex;align-items:center;gap:9px;margin-top:16px;font-size:13.5px;color:var(--text);border:1px solid rgba(255,120,80,.32);background:rgba(255,90,60,.08);border-radius:100px;padding:8px 15px}
  .fdincl b{color:#ff9d6a;font-weight:600}

  /* scroll reveal */
  .js .reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
  .js .reveal.in{opacity:1;transform:none}
  /* bars mark on section eyebrows (sitewide standard) */
  .seyebrow::before{content:'';display:inline-block;width:19px;height:14px;margin-right:9px;vertical-align:-2px;background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2066%2047'%3E%3Cdefs%3E%3ClinearGradient%20id='g'%20x1='0'%20y1='0'%20x2='1'%20y2='0'%3E%3Cstop%20offset='0'%20stop-color='%234cc7ff'/%3E%3Cstop%20offset='1'%20stop-color='%238f9cff'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect%20width='52'%20height='13'%20rx='6.5'%20fill='%235c6f90'/%3E%3Crect%20x='14'%20y='17'%20width='52'%20height='13'%20rx='6.5'%20fill='url(%23g)'/%3E%3Crect%20y='34'%20width='52'%20height='13'%20rx='6.5'%20fill='%235c6f90'/%3E%3C/svg%3E") no-repeat center/contain}
  /* center row headers with their icon */
  .thead h2{margin:0}
  /* explore buttons spacing */
  .ftext .btn{margin-top:22px}
  /* front desk "what happens next" */
  .fs-next{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}
  .fs-next .fnh{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:rgba(191,232,255,.72);margin-bottom:10px}
  .fs-next .fnrow{display:flex;gap:9px;align-items:flex-start;color:#dcecff;font-size:12.5px;line-height:1.4;margin-bottom:7px}
  .fs-next .fnd{width:6px;height:6px;border-radius:50%;background:#5fd0ff;margin-top:5px;flex:none}

  .cf-consent{display:flex;gap:10px;align-items:flex-start;margin:2px 0 16px;font-size:12px;line-height:1.5;color:var(--muted-2);text-align:left}
  .cf-consent input{margin-top:3px;flex:none;width:16px;height:16px;accent-color:var(--accent)}
  .cf-consent a{color:var(--accent)}

  .fdline{display:flex;align-items:center;gap:8px;margin-top:16px;font-size:13.5px;color:var(--muted)}
  .fdline .fdi{color:var(--accent-3)}
  .btnrow{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
  .btnrow .btn{margin-top:0}
  .btn-fd{color:#04121b;background:linear-gradient(100deg,#3ee0f0,#22a8dd);box-shadow:0 12px 34px -8px rgba(62,224,240,.42)}

  .hp{position:absolute;left:-9999px;width:0;height:0;opacity:0}
  .cf-status{margin-top:12px;font-size:13px;min-height:1em;text-align:center;color:var(--muted)}
  .cf-status.err{color:#fb7185}
  .cthanks{text-align:center;padding:18px 6px}
  .cthanks .chk{width:58px;height:58px;border-radius:50%;margin:0 auto 16px;display:grid;place-items:center;font-size:1.6rem;color:#04121b;background:linear-gradient(135deg,#34d399,#22d3ee)}
  .cthanks h3{background:linear-gradient(120deg,var(--accent),var(--accent-2));-webkit-background-clip:text;background-clip:text;color:transparent;font-size:1.25rem;margin:0 0 8px}
  .cthanks p{color:var(--muted);font-size:.95rem;max-width:340px;margin:0 auto}

  /* --- web-design page components (chips sidenote + front desk band) --- */
  .chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:780px;margin:0 auto}
  .chip{font-size:.86rem;color:var(--muted);background:var(--card);border:1px solid var(--border);border-radius:999px;padding:9px 16px}
  .fdband{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;background:linear-gradient(120deg,rgba(76,199,255,.10),rgba(143,156,255,.10));border:1px solid var(--border-2);border-radius:20px;padding:28px 32px}
  .fdband-txt{display:flex;align-items:flex-start;gap:14px;max-width:660px}
  .fdband-txt .fdi{color:var(--accent-3);font-size:1.35rem;line-height:1.35}
  .fdband-txt b{color:var(--text);font-size:1.14rem;display:block;margin-bottom:5px}
  .fdband-txt p{color:var(--muted);font-size:.97rem;margin:0;line-height:1.55}
  .btn-fd{background:linear-gradient(120deg,var(--accent-3),var(--accent));color:#04121a;font-weight:700;white-space:nowrap}
  .chatmock{background:rgba(9,14,25,.5);border:1px solid var(--border);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:9px}
  @media(max-width:640px){.fdband{flex-direction:column;align-items:flex-start}}

  /* --- compact Front Desk feature card (distinct from homepage spotlight) --- */
  .fdmini{border-radius:22px;overflow:hidden;background:linear-gradient(135deg,#4cc7ff,#7e8bff);color:#04121b;display:grid;grid-template-columns:1.05fr .95fr;gap:0}
  .fdmini .fm-l{padding:36px 38px;display:flex;flex-direction:column;justify-content:center}
  .fdmini .np{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;background:#081426;color:#5fd0ff;border-radius:20px;padding:4px 11px;margin-bottom:15px;align-self:flex-start}
  .fdmini h3{color:#04121b;font-size:clamp(21px,2.4vw,28px);margin:0;line-height:1.15;font-family:'Space Grotesk',system-ui,sans-serif;font-weight:600}
  .fdmini p{color:rgba(4,18,27,.78);font-size:15px;margin:13px 0 0;font-weight:500;max-width:400px;line-height:1.5}
  .fdmini .fm-btn{display:inline-block;margin-top:23px;background:#081426;color:#eaf6ff;padding:12px 21px;border-radius:11px;font-weight:600;font-size:14.5px;align-self:flex-start}
  .fdmini .fm-r{background:rgba(6,14,26,.55);padding:34px;display:flex;flex-direction:column;justify-content:center;gap:8px}
  @media(max-width:820px){.fdmini{grid-template-columns:1fr}.fdmini .fm-r{padding:28px}}
  /* --- even essentials grid (3x2) --- */
  .essgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:860px;margin:24px auto 0}
  .ess{display:flex;align-items:center;gap:11px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:15px 17px;color:var(--muted);font-size:.93rem}
  .ess .ck2{width:20px;height:20px;border-radius:50%;background:rgba(62,224,240,.14);color:var(--accent-3);display:grid;place-items:center;font-size:11px;flex:none}
  @media(max-width:720px){.essgrid{grid-template-columns:1fr 1fr}}
  @media(max-width:440px){.essgrid{grid-template-columns:1fr}}

  /* --- rotating showcase inside hero cell --- */
  .b-shot .rotstack{position:relative;flex:1;min-height:0;overflow:hidden;background:#0b1322}
  .b-shot .rimg{position:absolute;top:0;left:0;width:100%;height:auto;opacity:0;transition:opacity .9s ease}
  .b-shot .rimg.on{opacity:1}
  .b-shot .shotlab{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#04121b;border:none}
  /* --- compact before/after slider (mini 412toring) --- */
  .mba{position:relative;aspect-ratio:1280/960;border:1px solid var(--border-2);border-radius:16px;overflow:hidden;cursor:ew-resize;touch-action:none;--mbaw:100%;background:#0b1322}
  .mba img{position:absolute;top:0;left:0;height:100%;object-fit:cover;object-position:top;display:block}
  .mba .mba-after{width:100%}
  .mba-before{position:absolute;top:0;left:0;height:100%;width:50%;overflow:hidden}
  .mba-before img{width:var(--mbaw);max-width:none}
  .mba-handle{position:absolute;top:0;bottom:0;left:50%;width:2px;margin-left:-1px;background:rgba(255,255,255,.9);z-index:4;pointer-events:none}
  .mba-handle span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:34px;height:34px;border-radius:50%;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.45);display:grid;place-items:center}
  .mba-handle span::before{content:"\2194";color:#0b1322;font-size:15px;font-weight:800}
  .mba-tag{position:absolute;bottom:10px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:100px;z-index:3}
  .mba-tag.before{left:10px;background:rgba(148,163,184,.28);color:#e8eef7}
  .mba-tag.after{right:10px;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#04121b}

  /* --- lively hero mini-tiles (web-design) --- */
  .livesteps{margin-top:auto;display:flex;flex-direction:column;gap:9px}
  .livesteps .lstep{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}
  .livesteps .lstep .ld{width:9px;height:9px;border-radius:50%;background:var(--border-2);flex:none}
  .livesteps .lstep.done{color:var(--text)}.livesteps .lstep.done .ld{background:var(--accent-3)}
  .livesteps .lstep.live{color:#7ef0c4;font-weight:600}.livesteps .lstep.live .ld{background:#34d399;animation:pingG 2s infinite}
  .statuses{margin-top:auto;display:flex;flex-direction:column;gap:8px;align-items:flex-start}

  /* --- Live-in-2-weeks progress graphic (distinct from pulse) --- */
  .prog{height:9px;border-radius:6px;background:rgba(9,14,25,.6);border:1px solid var(--border-2);overflow:hidden}
  .prog-fill{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--accent-3),var(--accent),var(--accent-2));width:8%;animation:progfill 3.8s ease-in-out infinite}
  @keyframes progfill{0%{width:8%;opacity:1}50%{width:100%;opacity:1}72%{width:100%;opacity:1}84%{opacity:0}85%{width:8%;opacity:0}100%{width:8%;opacity:1}}
  .proglab{display:flex;justify-content:space-between;margin-top:9px;font-size:10.5px;color:var(--muted-2);text-transform:uppercase;letter-spacing:.08em}
  .proglab .pl-live{color:#7ef0c4;font-weight:700}
  /* compact managed pills so they fit */
  .wbento .statuses{gap:7px}
  .wbento .status{padding:6px 11px;font-size:11.5px}

  .wbento .statuses{margin-top:0}

  /* red founding-offer box: bars-mark matches the red gradient, not blue */
  .pricing .seyebrow::before{background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2066%2047'%3E%3Cdefs%3E%3ClinearGradient%20id='gr'%20x1='0'%20y1='0'%20x2='1'%20y2='0'%3E%3Cstop%20offset='0'%20stop-color='%23ff9d2f'/%3E%3Cstop%20offset='1'%20stop-color='%23ff4d6a'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect%20width='52'%20height='13'%20rx='6.5'%20fill='%235c6f90'/%3E%3Crect%20x='14'%20y='17'%20width='52'%20height='13'%20rx='6.5'%20fill='url(%23gr)'/%3E%3Crect%20y='34'%20width='52'%20height='13'%20rx='6.5'%20fill='%235c6f90'/%3E%3C/svg%3E") no-repeat center/contain}

  .panel.p-mint{background:radial-gradient(130% 130% at 0% 100%,rgba(52,211,153,.16),transparent 55%),rgba(16,26,46,.55)!important}

  .panel.p-violet{background:radial-gradient(130% 130% at 100% 0%,rgba(143,156,255,.17),transparent 55%),rgba(16,26,46,.55)!important}

  /* no orphan words anywhere: balance headings, prevent single-word last lines in body copy */
  h1,h2,h3,h4{text-wrap:balance}
  p,li,.lead,.sub,.price,.snum,.rev-txt,.notif-body,.fdc-msg,.pc-body p{text-wrap:pretty}

  /* hero perks row (emblem perks under the CTA) — Front Desk formula, sitewide */
  .hero-meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:22px}
  .hero-meta span{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--muted);font-weight:500}
  .hero-meta .hm-ic{color:var(--accent-3);font-size:14px}

  /* ===================== MOBILE POLISH — pass 2 (2026-07-18) ===================== */
  /* --- mobile hamburger nav (replaces phone in the top bar on small screens) --- */
  nav{position:relative}
  .navtoggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0;border:1px solid var(--border-2);background:rgba(20,32,58,.6);border-radius:12px;cursor:pointer}
  .navtoggle span{display:block;width:20px;height:2px;margin:0 auto;background:var(--text);border-radius:2px;transition:transform .22s ease,opacity .18s ease}
  .navtoggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .navtoggle.open span:nth-child(2){opacity:0}
  .navtoggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .mobmenu{display:none;position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:60;flex-direction:column;gap:2px;background:rgba(11,18,34,.98);backdrop-filter:blur(16px);border:1px solid var(--border-2);border-radius:16px;padding:12px;box-shadow:0 36px 74px -30px rgba(0,0,0,.92)}
  .mobmenu.open{display:flex}
  .mobmenu a{padding:14px 14px;border-radius:11px;font-size:16px;color:var(--text);font-weight:500}
  .mobmenu a:hover,.mobmenu a:active{background:rgba(76,199,255,.12)}
  .mobmenu .mm-phone{margin-top:8px;border-top:1px solid var(--border);border-radius:0;padding-top:16px;color:var(--accent);font-weight:600}
  @media(max-width:900px){.navtoggle{display:flex}.phone{display:none}}

  /* --- eyebrow pill fits cleanly on phones (no letter-stacking) --- */
  @media(max-width:640px){
    .eyebrow{font-size:10px;letter-spacing:.05em;gap:6px;padding:6px 11px;flex-wrap:wrap;row-gap:3px;line-height:1.35}
    .eyebrow>b,.eyebrow>.grad{white-space:nowrap}
  }

  /* --- tighten vertical rhythm on phones (kills the big empty gaps) --- */
  @media(max-width:640px){
    .sec{padding:46px 0}
    .statement{padding:50px 0}
    .statement p{margin-top:14px}
    .frow{padding:24px 0;gap:22px}
    .btnrow{flex-wrap:nowrap;gap:10px}
    .btnrow .btn{flex:1;min-width:0;padding:12px 8px;font-size:12.5px;justify-content:center;white-space:nowrap}
    .fdspot .fs-l,.fdspot .fs-r,.fdmini .fm-l,.fdmini .fm-r{padding:26px}
    .pricing{padding:32px 22px}
    .cright{padding:22px}
  }

  /* --- hero bento: real 2-column mobile-first layout (not a stacked wall) --- */
  @media(max-width:560px){
    .grid{grid-template-columns:1fr 1fr;grid-template-areas:"head head" "fd fd" "stat stat" "web social" "cta it"!important;gap:12px}
    .grid .bt{min-height:auto;padding:20px}
    .grid .t-head{padding:26px;justify-content:flex-start;gap:16px}
    .grid .t-head .biglogo{width:100px;margin:4px 0 10px}
    .t-web .site{display:none}          /* skeleton browser mock = noise; keep label + pill */
    .t-fd{flex-direction:column;gap:12px}
    .t-fd .chat{flex:none}
    .t-stat .stog{display:none}
    .t-stat .statbars{height:24px}
    .t-social .posts4{margin-top:12px}
    .t-social .posts4 span{height:26px}
    .t-it .statuses{gap:6px}
    .t-it .status{font-size:10px;padding:5px 9px;line-height:1.3;align-items:flex-start}
    .t-it .status .pulse{margin-top:3px;flex:none}
    .grid .thead{gap:7px}
    .grid .thead .bi{width:24px;height:24px;font-size:13px}
    .grid .bt h3{font-size:13.5px;line-height:1.15}
    .grid .bt p{font-size:12px}
    .t-cta{gap:10px}
  }
  /* --- hero feature visuals: fit mobile, kill the forced-420px void/stretch --- */
  @media(max-width:640px){
    .b-shot{min-height:0!important}
    .b-shot .shotframe{height:auto!important}
    .b-shot .rotstack{flex:none!important;aspect-ratio:1200/712;min-height:0}
    .b-shot .rimg{height:100%!important;object-fit:cover;object-position:top}
    .swbento>.bt:last-child{min-height:0!important}
    .hmos{grid-template-rows:auto!important;height:auto!important}
    .hmos a{aspect-ratio:1200/712}
    .sobento>.bt:last-child{min-height:0!important;padding:14px!important}
  }
  .frow>.ftext,.frow>.fvis{min-width:0}
  .feedtile{min-width:0}
  /* --- feed grid promoted to shared (homepage social row uses it too) --- */
  .feedgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;grid-auto-rows:auto;height:100%;align-content:center;min-height:0}
  .feedtile{position:relative;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px;min-width:0;aspect-ratio:1;min-height:0;box-shadow:0 10px 24px -14px rgba(0,0,0,.6)}
  .fe-lb{position:static;align-self:flex-start;line-height:1.25;font-weight:700;font-size:11px;color:rgba(255,255,255,.98);text-shadow:0 1px 4px rgba(0,0,0,.45)}
  .fe-em{font-size:42px;line-height:1;filter:drop-shadow(0 3px 9px rgba(0,0,0,.32))}@media(min-width:641px){.fe-em{font-size:72px}.fe-lb{font-size:13px}}
  .ft1{background:linear-gradient(140deg,#4cc7ff,#7e8bff)}.ft2{background:linear-gradient(140deg,#8f9cff,#c86bff)}.ft3{background:linear-gradient(140deg,#3ee0f0,#4cc7ff)}.ft4{background:linear-gradient(140deg,#ff9d6c,#ff5a8a)}.ft5{background:linear-gradient(140deg,#34d399,#3ee0f0)}.ft6{background:linear-gradient(140deg,#ffce6b,#ff9d2f)}
  .pcard .thumb img{object-position:top left!important}
  .ebsep{font-style:normal;margin:0 2px;opacity:.5}
  @media(max-width:640px){.ebsep{display:none}}

  /* mid-section rows: headline -> copy -> visual -> CTA (button is the terminal action).
     Desktop keeps two columns: text+cta stacked left, visual right. */
  .frow:has(.fcta){grid-template-areas:"ftext fvis" "fcta fvis";grid-template-rows:auto auto;column-gap:52px;row-gap:20px;align-items:start}
  .frow:has(.fcta) .ftext{grid-area:ftext}
  .frow:has(.fcta) .fvis{grid-area:fvis;align-self:center;order:0}
  .frow:has(.fcta) .fcta{grid-area:fcta;align-self:start}
  .frow.rev:has(.fcta){grid-template-areas:"fvis ftext" "fvis fcta"}
  .fcta .btn{margin-top:0}.fcta .btnrow{margin-top:0}
  @media(max-width:820px){
    .frow:has(.fcta),.frow.rev:has(.fcta){grid-template-columns:1fr;grid-template-areas:"ftext" "fvis" "fcta";row-gap:20px}
  }
  /* real-client-work cards: CTA is a real button (site .btn styling), not a text link */
  .pcard .pcta{margin-top:18px;align-self:flex-start;min-height:44px}
  /* stat card: all three rotation states occupy ONE grid cell, so the card is always
     sized to the tallest state and cannot shift when it auto-rotates (copy-proof) */
  .t-stat .statwrap{display:grid}
  .t-stat .statwrap .statset{grid-area:1/1;display:block;visibility:hidden;opacity:0;transition:opacity .35s ease}
  .t-stat .statwrap .statset.on{visibility:visible;opacity:1}
  /* real client work card: copy -> visual -> CTA, matching the .frow rows */
  .rwcard:has(.rwcta){grid-template-areas:"rwtext rwvis" "rwcta rwvis";grid-template-rows:auto auto;align-items:start;row-gap:20px}
  .rwcard:has(.rwcta) .rwtext{grid-area:rwtext}
  .rwcard:has(.rwcta) .mba{grid-area:rwvis;align-self:center}
  .rwcard:has(.rwcta) .rwcta{grid-area:rwcta;align-self:start}
  .rwcta .btn{margin-top:0}
  @media(max-width:820px){.rwcard:has(.rwcta){grid-template-columns:1fr;grid-template-areas:"rwtext" "rwvis" "rwcta"}}
  /* SYSTEMIC RULE: frames showing full-page screenshots derive their aspect from the
     asset (thumb-*.jpg 1200x712, cs-*.webp 1280x960) so object-fit:cover discards nothing. */
  .pcard .thumb.single{display:block;height:auto}
  /* 412Toring pair: stacked on phones (big + legible), side-by-side on desktop so the
     2-up proof grid stays balanced. height:auto in BOTH => slot takes the asset aspect, 0% crop. */
  .pcard .thumb.stack{display:grid;grid-template-columns:1fr;gap:6px;height:auto}
  @media(min-width:721px){.pcard .thumb.stack{grid-template-columns:1fr 1fr}}
  .pcard .thumb.stack img,.pcard .thumb.single img{width:100%;height:auto;display:block}
  /* Footer contact: email + phone on their own line under the copyright.
     white-space:nowrap makes each an unbreakable unit, so a phone number can
     never split mid-digits at any viewport (hyphens are break opportunities). */
  .footcontact{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;color:var(--muted-2);font-size:13px}
  .footcontact a{color:var(--muted-2);white-space:nowrap}
  .footcontact a:hover{color:var(--text)}
  .fsep{opacity:.5}
  .phone,.mm-phone{white-space:nowrap}
/* footer contact — gradient emphasis (7/18) */
.footcontact{gap:10px;font-size:15px}
.footcontact a{background:linear-gradient(100deg,#3ee0f0,#4cc7ff 45%,#8f9cff);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:700;white-space:nowrap;transition:filter .2s ease}
.footcontact a:hover{color:transparent;filter:brightness(1.3)}
.fsep{opacity:.3;color:var(--muted-2)}

/* homepage hero: colour tiers + real-client proof tile (7/18) */
.t-social{background:linear-gradient(140deg,rgba(143,156,255,.20),rgba(200,107,255,.13))}
.t-web{background:linear-gradient(140deg,rgba(62,224,240,.15),rgba(76,199,255,.11))}
.t-case{justify-content:center;gap:0;padding:10px;overflow:hidden}
.t-case .casefr{position:relative;aspect-ratio:1280/690;border-radius:10px;overflow:hidden;border:1px solid var(--border-2);flex:0 0 auto;width:100%}
.t-case .casefr img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;}
.t-case:hover{border-color:rgba(76,199,255,.5)}

/* founding tile mirrors the /pricing card; case tile gets its own colour + glow */
:root{--case-a:rgba(217,83,42,.26);--case-b:rgba(240,170,110,.10);--case-glow:rgba(217,83,42,.36)}
.t-found2{overflow:hidden;background:radial-gradient(120% 130% at 100% 0%,rgba(255,90,60,.22),transparent 55%),linear-gradient(160deg,rgba(38,18,14,.55),rgba(16,26,46,.6));border-color:rgba(255,120,80,.4);justify-content:center;gap:2px}
.t-found2 .fbadge{font-size:10px}
.t-found2 .btn{padding:9px 14px;font-size:13px}
.t-found2 .f2price{font-family:"Space Grotesk";font-weight:700;font-size:clamp(19px,1.55vw,24px);line-height:1.08;margin:6px 0 2px}
.t-found2 .f2sub{margin:0 0 10px;font-size:11.5px;line-height:1.3;color:var(--muted-2)}
.t-found2 .fdot{width:7px;height:7px;border-radius:50%;background:#ff5a3c;display:inline-block}
.t-case{background:radial-gradient(120% 130% at 0% 0%,var(--case-a),transparent 58%),linear-gradient(160deg,var(--case-b),rgba(16,26,46,.6));border-color:rgba(217,110,60,.38);box-shadow:0 0 0 1px rgba(217,83,42,.12),0 18px 46px -22px var(--case-glow)}
.t-case:hover{border-color:rgba(224,120,70,.65);box-shadow:0 0 0 1px rgba(217,83,42,.20),0 22px 56px -20px var(--case-glow)}
.t-case .casefr img{transition:transform .4s ease}
.t-case:hover .casefr img{transform:scale(1.03)}

.t-it{background:linear-gradient(160deg,#05070d,#080d18 55%,#04060b);box-shadow:inset 130px 100px 160px -120px rgba(70,125,215,.6),0 24px 60px -34px rgba(0,0,0,.8);border-color:rgba(84,124,196,.32)}
.t-it:hover{border-color:rgba(120,170,255,.45)}
.t-case .casechip{position:absolute;left:8px;top:8px;z-index:2;font-size:10.5px;font-weight:700;color:#fff;letter-spacing:.02em;background:linear-gradient(120deg,#d9532a,#e8763a);border:1px solid rgba(255,190,150,.45);box-shadow:0 6px 16px -8px rgba(217,83,42,.8);padding:5px 10px;border-radius:999px;white-space:nowrap}
.t-case .casechip b{font-weight:800}
.t-case .casechip{max-width:calc(100% - 16px);overflow:hidden;text-overflow:ellipsis}
@media(max-width:640px){.t-case .cc-pre{display:none}.t-case .casechip{font-size:10px;padding:4px 8px}}

/* ── Front Desk mark ──────────────────────────────────────────────
   The bell is the Front Desk logo. Reserved exclusively for Front Desk:
   never use it for any other feature, service, or decoration.
   Static inline = .fdb + <use href="#fdbell">. Animated hero = .fdbell.
   Only ONE animated bell per page, and never inline in body copy.      */
.fdb{width:1em;height:1em;fill:currentColor;vertical-align:-.14em;flex:none}
/* In a tile the mark should FILL the square, not float in it. !important because the
   inline width/height on each marker guards against the stale-CSS 300x150 fallback. */
.bi .fdb{width:76%!important;height:76%!important;vertical-align:0!important}
.fdbell{overflow:visible}
.fdbell .w1,.fdbell .w2{opacity:0}  /* base state: waves never show unless animating */
.fdbell .dome,.fdbell .knob,.fdbell .bar{transform-box:fill-box}
.fdbell .dome{transform-origin:50% 100%}
.fdbell .knob{transform-origin:50% 100%}
.fdbell .bar{transform-origin:50% 50%}
.fdbell .waves{transform-box:view-box;transform-origin:16px 17px}
/* Tap fires at the START of the cycle so it rings ~0.6s after load, then every 5s. */
@keyframes fdTap{0%,4%{transform:translateY(0)}9%{transform:translateY(1.7px)}18%,100%{transform:translateY(0)}}
@keyframes fdSquash{0%,4%{transform:scale(1,1)}10%{transform:scale(1.06,.94)}19%,100%{transform:scale(1,1)}}
@keyframes fdBarNudge{0%,4%{transform:scaleX(1)}11%{transform:scaleX(1.05)}20%,100%{transform:scaleX(1)}}
@keyframes fdWaveOut{0%,5%{transform:scale(.78)}36%,100%{transform:scale(1.22)}}
@keyframes fdWaveFade{0%,5%{opacity:0}12%{opacity:.85}32%,100%{opacity:0}}
.fdbell .knob{animation:fdTap 5s ease-in-out .35s infinite}
.fdbell .dome{animation:fdSquash 5s ease-in-out .35s infinite}
.fdbell .bar{animation:fdBarNudge 5s ease-in-out .35s infinite}
.fdbell .waves{animation:fdWaveOut 5s ease-out .35s infinite}
.fdbell .w1{animation:fdWaveFade 5s ease-out .35s infinite}
.fdbell .w2{animation:fdWaveFade 5s ease-out .47s infinite}
@media(max-width:640px){.fdbell{width:48px;height:48px}}
