/* F4 Consulting shared stylesheet */

  :root{
    --ink:#14171C;
    --paper:#F7F5F0;
    --rule:#D8D3C8;
    --navy:#2E5FA8;
    --navy-deep:#0F2A4D;
    --navy-glow:#5B9CF0;
    --navy-tint:#E7EDF1;
    --brass:#D98A3D;
    --brass-deep:#8A4E14;
    --brass-glow:#F5B85C;
    --brass-tint:#F3E7D8;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--paper);
    color:var(--ink);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  a{color:inherit; text-decoration:none;}
  button{font-family:inherit; cursor:pointer; border:none; background:none;}
        @media (prefers-reduced-motion: reduce){
    *{animation-duration:.01ms !important; transition-duration:.01ms !important;}
  }
  :focus-visible{outline:2px solid var(--ink); outline-offset:3px;}

  /* ============ SPLITTER ============ */
  #splitter{
    position:relative; height:100vh; width:100%;
    display:flex; flex-direction:column; overflow:hidden;
    background:#0A1220;
  }
  .splitter-mark{
    flex:0 0 auto; padding:2rem 0 .5rem; text-align:center;
    font-family:'IBM Plex Mono',monospace; font-size:.72rem;
    letter-spacing:.18em; text-transform:uppercase; color:#fff; opacity:.6;
    display:flex; align-items:center; justify-content:center; gap:.6rem; z-index:6;
  }
  .splitter-mark::before, .splitter-mark::after{content:''; width:22px; height:1px; background:#fff; opacity:.5;}

  .hero-straddle{
    flex:0 0 auto; text-align:center; padding:.5rem 5vw 2.2rem;
    position:relative; z-index:6; pointer-events:none;
  }
  .hero-straddle h1{
    font-family:'Newsreader',serif; font-weight:500; font-size:clamp(1.7rem,4vw,3.1rem);
    line-height:1.14; letter-spacing:-.01em; max-width:1040px; margin:0 auto;
    background:linear-gradient(92deg, var(--navy-glow) 0%, #C9B6D8 48%, var(--brass-glow) 100%);
    background-size:220% 100%;
    -webkit-background-clip:text; background-clip:text; color:transparent;
    animation:shimmer 9s ease-in-out infinite;
  }
  .hero-straddle h1 em{
    font-style:italic; font-weight:600;
  }
  @keyframes shimmer{
    0%,100%{background-position:0% 50%;}
    50%{background-position:100% 50%;}
  }

  .split-halves{position:relative; flex:1; display:flex; overflow:hidden;}
  #blend-canvas{
    position:absolute; inset:0; z-index:1; pointer-events:none; width:100%; height:100%;
    filter:blur(38px) saturate(1.3); opacity:.9;
  }

  .split-half{
    position:relative; width:50%; height:100%;
    display:flex; align-items:center; justify-content:center;
    cursor:pointer; overflow:hidden; z-index:2;
    transition:width .6s cubic-bezier(.65,0,.35,1);
  }
  #splitter:has(.split-half.left:hover) .left{width:60%;}
  #splitter:has(.split-half.left:hover) .right{width:40%;}
  #splitter:has(.split-half.right:hover) .right{width:60%;}
  #splitter:has(.split-half.right:hover) .left{width:40%;}

  .split-half.left{
    background:linear-gradient(115deg, rgba(15,42,77,.94) 0%, rgba(15,42,77,.75) 60%, rgba(15,42,77,.15) 100%);
    color:var(--navy-tint);
  }
  .split-half.right{
    background:linear-gradient(245deg, rgba(236,238,241,.96) 0%, rgba(236,238,241,.8) 60%, rgba(236,238,241,.15) 100%);
    color:var(--navy-deep);
  }
  .split-content{padding:0 6vw; max-width:500px; z-index:2; transition:transform .5s cubic-bezier(.65,0,.35,1);}
  .split-half:hover .split-content{transform:translateY(-4px);}
  .split-eyebrow{
    font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.14em;
    text-transform:uppercase; opacity:.65; margin-bottom:1.1rem; display:block;
  }
  .split-half.left .split-eyebrow{color:#8FC1FF;}
  .split-half.right .split-eyebrow{color:var(--navy);}
  .split-half.left h2{
    font-family:'Newsreader',serif; font-weight:500; font-style:italic;
    font-size:clamp(2rem,4.2vw,3.4rem); line-height:1.08; letter-spacing:-.01em;
  }
  .split-half.right h2{
    font-family:'Big Shoulders Display',sans-serif; font-weight:800;
    text-transform:uppercase; font-size:clamp(2rem,4.2vw,3.4rem); line-height:.95; letter-spacing:.01em;
  }
  .split-sub{margin-top:1.2rem; font-size:.98rem; line-height:1.55; max-width:400px;}
  .split-half.left .split-sub{color:#C7D5DE;}
  .split-half.right .split-sub{color:#2C3B4D;}
  .split-cta{
    margin-top:2rem; display:inline-flex; align-items:center; gap:.5rem;
    font-family:'IBM Plex Mono',monospace; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase;
    padding-bottom:.3rem; border-bottom:1px solid currentColor; opacity:.9;
    transition:gap .3s ease;
  }
  .split-half:hover .split-cta{gap:.9rem;}

  /* ============ SHARED ARM CHROME ============ */
  .arm-nav{
    position:sticky; top:0; z-index:20;
    display:flex; align-items:center; justify-content:space-between;
    padding:1.3rem clamp(1.5rem,5vw,4rem);
    backdrop-filter:blur(8px);
  }
  .arm-logo{font-family:'IBM Plex Mono',monospace; font-weight:500; font-size:.95rem; letter-spacing:.02em;}
  .arm-nav-links{display:flex; align-items:center; gap:clamp(1.2rem,2.5vw,2.4rem); font-size:.86rem; flex-wrap:wrap; justify-content:flex-end;}
  .arm-nav-links a{opacity:.75; transition:opacity .2s;}
  .arm-nav-links a:hover{opacity:1;}
  .home-pill{
    font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase;
    padding:.45rem .9rem; border-radius:2px; border:1px solid currentColor; opacity:.85;
  }
  .home-pill:hover{opacity:1;}
  section{padding:clamp(3.5rem,7vw,6.5rem) clamp(1.5rem,5vw,4rem);}
  .eyebrow{
    font-family:'IBM Plex Mono',monospace; font-size:.74rem; letter-spacing:.12em; text-transform:uppercase;
    opacity:.6; display:block; margin-bottom:1rem;
  }
  .max{max-width:1180px; margin:0 auto;}
  .narrow{max-width:760px;}
  hr.rule{border:none; border-top:1px solid var(--rule); margin:0;}

  /* ============ FINANCE ARM ============ */
  #finance{background:var(--paper); color:var(--ink); --accent-deep:var(--navy-deep);}
  #finance .arm-nav{background:rgba(247,245,240,.9); border-bottom:1px solid var(--rule);}
  #finance .arm-logo{color:var(--navy-deep);}
  #finance .home-pill{color:var(--navy-deep);}
  #finance .hero{padding-top:clamp(4rem,9vw,7rem); position:relative; overflow:hidden;}
  #finance .hero::before{
    content:''; position:absolute; top:-20%; right:-10%; width:50vw; height:50vw; max-width:640px; max-height:640px;
    background:radial-gradient(circle, var(--navy-glow) 0%, transparent 70%);
    opacity:.16; pointer-events:none; z-index:0; filter:blur(10px);
    animation:driftA 14s ease-in-out infinite;
  }
  @keyframes driftA{0%,100%{transform:translate(0,0);} 50%{transform:translate(-3%,4%);}}
  #finance .hero .max{position:relative; z-index:1;}
  #finance .hero h1{
    font-family:'Newsreader',serif; font-weight:500; font-size:clamp(2.4rem,5.4vw,4.4rem);
    line-height:1.06; letter-spacing:-.015em; max-width:920px;
  }
  #finance .hero h1 em{font-style:italic; color:var(--navy);}
  #finance .hero-sub{
    margin-top:1.6rem; font-size:1.08rem; line-height:1.65; max-width:640px; color:#3A3F45;
  }
  #finance .hero-links{margin-top:2.2rem; display:flex; gap:1rem; flex-wrap:wrap;}
  .btn-primary{
    background:var(--navy-deep); color:var(--navy-tint); padding:.85rem 1.5rem;
    font-size:.88rem; letter-spacing:.02em; border-radius:2px; transition:background .2s;
  }
  .btn-primary:hover{background:var(--navy);}
  .btn-ghost{
    border:1px solid var(--ink); padding:.85rem 1.5rem; font-size:.88rem; border-radius:2px;
    transition:background .2s;
  }
  .btn-ghost:hover{background:var(--ink); color:var(--paper);}

  .principle-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:2.5rem; margin-top:2.5rem;}
  .principle h3{font-family:'Newsreader',serif; font-weight:600; font-size:1.2rem; margin-bottom:.6rem;}
  .principle p{font-size:.94rem; line-height:1.6; color:#4A4F55;}

  .service-row{
    display:grid; grid-template-columns:70px 1fr 1fr; gap:2rem; padding:2.1rem 0;
    border-top:1px solid var(--rule); align-items:start;
  }
  .service-row:last-child{border-bottom:1px solid var(--rule);}
  .service-num{font-family:'IBM Plex Mono',monospace; font-size:.85rem; color:var(--navy); padding-top:.2rem;}
  .service-row h4{font-family:'Newsreader',serif; font-weight:600; font-size:1.28rem; margin-bottom:.5rem;}
  .service-row p{font-size:.93rem; line-height:1.6; color:#4A4F55;}

  .step-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; margin-top:2.5rem;}
  .step-card{border-top:2px solid var(--navy); padding-top:1.2rem;}
  .step-card .step-num{font-family:'IBM Plex Mono',monospace; font-size:.8rem; color:var(--navy);}
  .step-card h4{font-family:'Newsreader',serif; font-size:1.08rem; margin:.5rem 0 .6rem; font-weight:600;}
  .step-card p{font-size:.87rem; line-height:1.55; color:#4A4F55;}

  .sector-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:1.6rem; margin-top:2.5rem;}
  .sector-card{background:var(--navy-tint); padding:1.7rem; border-radius:3px;}
  .sector-tag{
    font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase;
    color:var(--navy); margin-bottom:.6rem; display:block;
  }
  .sector-card h4{font-family:'Newsreader',serif; font-weight:600; font-size:1.08rem; margin-bottom:.5rem;}
  .sector-card p{font-size:.87rem; line-height:1.55; color:#42484F;}

  #finance .cta-band{background:var(--navy-deep); color:var(--navy-tint); text-align:left;}
  #finance .cta-band h2{font-family:'Newsreader',serif; font-weight:500; font-size:clamp(1.8rem,3.6vw,2.6rem); max-width:640px;}
  #finance .cta-band p{margin-top:1rem; opacity:.75; max-width:500px;}
  #finance footer{
    padding:2.2rem clamp(1.5rem,5vw,4rem); display:flex; justify-content:space-between;
    align-items:center; flex-wrap:wrap; gap:1rem; font-size:.78rem; opacity:.55;
    border-top:1px solid var(--rule);
  }

  /* ============ SMALL BUSINESS ARM ============ */
  #smallbiz{
    background:#ECEEF1; color:var(--ink);
    --brass:#2E5FA8; --brass-deep:#0F2A4D; --brass-glow:#5B9CF0; --brass-tint:#E7EDF1;
    --accent-deep:var(--brass-deep);
  }
  #smallbiz .arm-nav{background:rgba(236,238,241,.9); border-bottom:1px solid #D8DEE5;}
  #smallbiz .arm-logo{color:var(--brass-deep);}
  #smallbiz .home-pill{color:var(--brass-deep);}
  #smallbiz .hero{padding-top:clamp(4rem,9vw,7rem); position:relative; overflow:hidden;}
  #smallbiz .hero::before{
    content:''; position:absolute; top:-15%; left:-8%; width:46vw; height:46vw; max-width:600px; max-height:600px;
    background:radial-gradient(circle, var(--brass-glow) 0%, transparent 70%);
    opacity:.18; pointer-events:none; z-index:0; filter:blur(10px);
    animation:driftB 16s ease-in-out infinite;
  }
  @keyframes driftB{0%,100%{transform:translate(0,0);} 50%{transform:translate(4%,-3%);}}
  #smallbiz .hero .max{position:relative; z-index:1;}
  #smallbiz .hero h1{
    font-family:'Big Shoulders Display',sans-serif; font-weight:800; text-transform:uppercase;
    font-size:clamp(2.4rem,6vw,5rem); line-height:.94; letter-spacing:.005em; max-width:980px;
  }
  #smallbiz .hero h1 span{color:var(--brass);}
  #smallbiz .hero-sub{
    margin-top:1.8rem; font-size:1.1rem; line-height:1.68; max-width:640px; color:#3A424C;
  }
  #smallbiz .hero-links{margin-top:2.2rem; display:flex; gap:1rem; flex-wrap:wrap;}
  .btn-primary-brass{
    background:var(--brass-deep); color:#FFFFFF; padding:.85rem 1.6rem;
    font-size:.88rem; letter-spacing:.02em; border-radius:2px; transition:background .2s;
    font-weight:500;
  }
  .btn-primary-brass:hover{background:var(--brass);}
  .btn-ghost-brass{
    border:1px solid var(--brass-deep); color:var(--brass-deep); padding:.85rem 1.6rem;
    font-size:.88rem; border-radius:2px; transition:background .2s;
  }
  .btn-ghost-brass:hover{background:var(--brass-deep); color:#FFFFFF;}

  .mission-block{
    display:grid; grid-template-columns:1fr 1.3fr; gap:3.5rem; align-items:start;
  }
  .mission-block .eyebrow{color:var(--brass-deep);}
  .mission-block h2{
    font-family:'Big Shoulders Display',sans-serif; font-weight:700; text-transform:uppercase;
    font-size:clamp(1.7rem,3vw,2.3rem); line-height:1.05;
  }
  .mission-block .body-copy p{font-size:1rem; line-height:1.75; color:#3A424C; margin-bottom:1.1rem;}
  .mission-block .body-copy p:last-child{margin-bottom:0;}

  .sb-service-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.8rem; margin-top:2.5rem;}
  .sb-service-card{
    background:#fff; border:1px solid #D8DEE5; border-radius:4px; padding:1.9rem;
    transition:border-color .2s;
  }
  .sb-service-card:hover{border-color:var(--brass);}
  .sb-service-card .sb-label{
    font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase;
    color:var(--brass-deep); margin-bottom:.9rem; display:block;
  }
  .sb-service-card h4{font-family:'Public Sans',sans-serif; font-weight:600; font-size:1.12rem; margin-bottom:.6rem;}
  .sb-service-card p{font-size:.9rem; line-height:1.6; color:#3A424C;}

  .sb-engage-row{
    display:flex; gap:1.6rem; margin-top:2.5rem; flex-wrap:wrap;
  }
  .sb-engage-item{flex:1; min-width:220px; border-left:3px solid var(--brass); padding-left:1.2rem;}
  .sb-engage-item h4{font-family:'Public Sans',sans-serif; font-weight:600; font-size:1rem; margin-bottom:.5rem;}
  .sb-engage-item p{font-size:.88rem; line-height:1.55; color:#3A424C;}

  #smallbiz .cta-band{background:var(--brass-deep); color:#FFFFFF;}
  #smallbiz .cta-band-inner{display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start;}
  #smallbiz .cta-band h2{
    font-family:'Big Shoulders Display',sans-serif; font-weight:800; text-transform:uppercase;
    font-size:clamp(1.9rem,3.6vw,2.7rem); line-height:1;
  }
  #smallbiz .cta-band p{margin-top:1rem; opacity:.82; max-width:440px; line-height:1.6;}

  /* ============ CHAT WIDGET (reusable across arms) ============ */
  .chat-panel{
    display:flex; flex-direction:column; height:420px; max-width:520px;
    background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.18); border-radius:8px;
    overflow:hidden;
  }
  .chat-messages{flex:1; overflow-y:auto; padding:1.2rem; display:flex; flex-direction:column; gap:.8rem;}
  .chat-msg{
    max-width:85%; padding:.65rem .9rem; border-radius:6px; font-size:.9rem; line-height:1.5;
    white-space:pre-wrap;
  }
  .chat-msg-bot{
    align-self:flex-start; background:rgba(255,255,255,.1); color:inherit;
    border-bottom-left-radius:2px;
  }
  .chat-msg-user{
    align-self:flex-end; background:#FFFFFF; color:var(--accent-deep);
    border-bottom-right-radius:2px; font-weight:500;
  }
  .chat-msg-typing{align-self:flex-start; opacity:.6; font-style:italic;}
  .chat-input-row{
    display:flex; gap:.6rem; padding:.9rem; border-top:1px solid rgba(255,255,255,.18);
  }
  .chat-input-row input{
    flex:1; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.3);
    border-radius:2px; padding:.7rem .9rem; color:#FFFFFF; font-family:'Inter',sans-serif; font-size:.9rem;
  }
  .chat-input-row input::placeholder{color:rgba(255,255,255,.45);}
  .chat-input-row button{
    background:#FFFFFF; color:var(--accent-deep); padding:.7rem 1.2rem;
    font-weight:600; font-size:.85rem; border-radius:2px; white-space:nowrap;
  }
  .chat-input-row button:disabled{opacity:.5; cursor:not-allowed;}
  .chat-error{font-size:.78rem; color:#F2B8B8; padding:0 1.2rem .8rem;}

  #smallbiz footer{
    padding:2.2rem clamp(1.5rem,5vw,4rem); display:flex; justify-content:space-between;
    align-items:center; flex-wrap:wrap; gap:1rem; font-size:.78rem; opacity:.55;
    border-top:1px solid #D8DEE5;
  }

  /* ============ RESPONSIVE ============ */
  /* ============ FOUNDER PAGE (shared) ============ */
  #founder{background:var(--paper); color:var(--ink);}
  #founder .arm-nav{background:rgba(247,245,240,.9); border-bottom:1px solid var(--rule);}
  #founder .arm-logo{color:var(--ink);}
  #founder .home-pill{color:var(--ink);}
  .founder-split-bar{width:56px; height:4px; border-radius:2px; overflow:hidden; display:flex; margin-bottom:1.6rem;}
  .founder-split-bar span{flex:1; height:100%;}
  .founder-split-bar .b1{background:var(--navy);}
  .founder-split-bar .b2{background:#AEB8C2;}
  .founder-hero{padding-top:clamp(3.5rem,8vw,6rem); display:grid; grid-template-columns:1.1fr 1.4fr; gap:3.5rem; align-items:start;}
  .founder-portrait{
    aspect-ratio:4/5; border-radius:6px; width:78%; object-fit:cover;
    display:block; box-shadow:0 18px 40px -12px rgba(20,23,28,.25);
    filter:grayscale(1) contrast(1.05);
  }
  .founder-name{font-family:'Newsreader',serif; font-weight:500; font-size:clamp(2rem,3.6vw,2.9rem); letter-spacing:-.01em; line-height:1.05;}
  .founder-role{font-family:'IBM Plex Mono',monospace; font-size:.85rem; letter-spacing:.04em; opacity:.6; margin-top:.7rem;}
  .founder-summary{margin-top:1.6rem; font-size:1.03rem; line-height:1.72; color:#3A3F45; max-width:620px;}
  .founder-summary p{margin-bottom:1rem;}
  .founder-summary p:last-child{margin-bottom:0;}
  .founder-linkedin{
    display:inline-flex; align-items:center; gap:.5rem; margin-top:1.4rem;
    font-family:'IBM Plex Mono',monospace; font-size:.78rem; letter-spacing:.04em; text-transform:uppercase;
    border-bottom:1px solid var(--ink); padding-bottom:.25rem;
  }

  .stat-strip{display:grid; grid-template-columns:repeat(4,1fr); gap:1.6rem; margin-top:3rem;}
  .stat-card{border-top:2px solid var(--rule); padding-top:1rem;}
  .stat-num{font-family:'Newsreader',serif; font-weight:600; font-size:1.9rem; color:var(--navy);}
  .stat-label{font-size:.83rem; line-height:1.5; color:#4A4F55; margin-top:.4rem;}

  .timeline{margin-top:2rem;}
  .tl-row{
    display:grid; grid-template-columns:190px 1fr; gap:2rem; padding:1.8rem 0;
    border-top:1px solid var(--rule); align-items:start;
  }
  .tl-row:last-child{border-bottom:1px solid var(--rule);}
  .tl-period{font-family:'IBM Plex Mono',monospace; font-size:.8rem; color:var(--navy); padding-top:.2rem;}
  .tl-row h4{font-family:'Newsreader',serif; font-weight:600; font-size:1.15rem; margin-bottom:.4rem;}
  .tl-row p{font-size:.92rem; line-height:1.6; color:#4A4F55;}

  .founder-cta-band{background:var(--ink); color:#F2F0EA;}
  .founder-cta-band h2{font-family:'Newsreader',serif; font-weight:500; font-size:clamp(1.6rem,3vw,2.2rem);}
  .founder-cta-links{display:flex; gap:1.2rem; flex-wrap:wrap; margin-top:1.6rem;}
  .founder-cta-links a{
    padding:.85rem 1.5rem; border-radius:2px; font-size:.88rem; font-family:'IBM Plex Mono',monospace;
    letter-spacing:.03em; border:1px solid rgba(255,255,255,.35); transition:background .2s;
  }
  .founder-cta-links a:hover{background:rgba(255,255,255,.1);}

  #founder footer{
    padding:2.2rem clamp(1.5rem,5vw,4rem); display:flex; justify-content:space-between;
    align-items:center; flex-wrap:wrap; gap:1rem; font-size:.78rem; opacity:.55;
    border-top:1px solid var(--rule);
  }
  @media (max-width:860px){
    .split-halves{flex-direction:column;}
    .split-half{width:100% !important; height:50%;}
    .hero-straddle{padding-top:0;}
    .principle-grid, .step-grid, .sector-grid, .sb-service-grid{grid-template-columns:1fr;}
    .service-row{grid-template-columns:40px 1fr; }
    .service-row > div:nth-child(3){grid-column:2;}
    .mission-block, #smallbiz .cta-band-inner{grid-template-columns:1fr;}
    .founder-hero{grid-template-columns:1fr;}
    .stat-strip{grid-template-columns:repeat(2,1fr);}
    .tl-row{grid-template-columns:1fr; gap:.5rem;}
  }

  /* ============ SERVICE PRISMS (Finance / Small Business) ============ */
  .prism-feature{
    display:grid; grid-template-columns:auto 1fr; align-items:center; gap:clamp(3.5rem,9vw,7rem);
    max-width:780px; margin:0 auto;
  }
  .prism-explainer{max-width:440px; text-align:left; transition:opacity .22s ease; padding-left:.5rem;}
  .prism-explainer-eyebrow{
    font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase;
    opacity:.55; display:block; margin-bottom:.9rem;
  }
  .prism-explainer-desc{font-size:1rem; line-height:1.7; color:#4A4F55;}
  #smallbiz .prism-explainer-desc{color:#3A424C;}

  .prism-scene{
    perspective:900px; width:230px; height:230px; cursor:grab; touch-action:pan-y;
    -webkit-user-select:none; user-select:none; -webkit-user-drag:none; flex-shrink:0;
    margin-right:1rem;
  }
  .prism-scene:active{cursor:grabbing;}
  .prism{position:relative; width:100%; height:100%; transform-style:preserve-3d;}
  .prism-face{
    position:absolute; top:0; left:0; border-radius:8px;
    backface-visibility:hidden; -webkit-backface-visibility:hidden;
    display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center;
    padding:1.2rem; gap:.6rem;
    box-shadow:0 18px 40px -16px rgba(20,23,28,.45); cursor:pointer;
    -webkit-user-select:none; user-select:none;
  }
  .prism-face-num-big{font-family:'IBM Plex Mono',monospace; font-size:1.7rem; letter-spacing:.02em; opacity:.8;}
  .prism-face-title{font-size:1rem; line-height:1.28;}
  .prism-face.finance-face{background:var(--navy-deep); color:var(--navy-tint); font-family:'Newsreader',serif; font-weight:600;}
  .prism-face.smallbiz-face{background:var(--brass-deep); color:#FFFFFF; font-family:'Public Sans',sans-serif; font-weight:600;}
  .prism-hint{font-family:'IBM Plex Mono',monospace; font-size:.72rem; letter-spacing:.03em; opacity:.55; margin-top:1.1rem; text-align:center;}

  @media (max-width:760px){
    .prism-feature{grid-template-columns:1fr; justify-items:center; text-align:center;}
    .prism-explainer{text-align:center; max-width:440px;}
    .prism-scene{width:190px; height:190px;}
  }

  /* ============ FINANCE PRACTICE SUB-PAGES ============ */
  #finance .service-hero{
    padding:clamp(6.5rem,11vw,9rem) clamp(1.5rem,5vw,4rem) 3rem; background:var(--paper);
  }
  #finance .service-hero-inner{
    max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.5fr 1fr; gap:3.5rem; align-items:start;
  }
  #finance .hero-eyebrow{
    font-family:'IBM Plex Mono',monospace; font-size:.74rem; letter-spacing:.12em; text-transform:uppercase;
    opacity:.6; margin-bottom:1rem;
  }
  #finance .service-hero h1{
    font-family:'Newsreader',serif; font-weight:500; font-size:clamp(2rem,4.2vw,3.2rem);
    line-height:1.08; letter-spacing:-.01em; margin-bottom:1.2rem;
  }
  #finance .service-hero-lead{font-size:1.05rem; line-height:1.7; color:#3A3F45; max-width:640px;}
  #finance .service-hero-meta{
    background:var(--navy-tint); border-radius:6px; padding:1.6rem 1.8rem; display:flex; flex-direction:column;
  }
  #finance .meta-item{padding:1.1rem 0; border-top:1px solid var(--rule);}
  #finance .meta-item:first-child{padding-top:0; border-top:none;}
  #finance .meta-label{
    font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase;
    opacity:.55; margin-bottom:.4rem;
  }
  #finance .meta-value{font-size:.9rem; line-height:1.55; color:#2C333B;}
  #finance .meta-value a{color:var(--navy);}

  #finance .anchor-nav{
    position:sticky; top:0; z-index:15; background:rgba(247,245,240,.92); backdrop-filter:blur(8px);
    border-bottom:1px solid var(--rule);
  }
  #finance .anchor-nav-inner{
    max-width:1180px; margin:0 auto; display:flex; gap:clamp(1.2rem,2.5vw,2.2rem);
    padding:.9rem clamp(1.5rem,5vw,4rem); overflow-x:auto;
  }
  #finance .anchor-link{
    font-family:'IBM Plex Mono',monospace; font-size:.74rem; letter-spacing:.04em; text-transform:uppercase;
    opacity:.5; white-space:nowrap; padding-bottom:.3rem; border-bottom:2px solid transparent; transition:opacity .2s,border-color .2s;
  }
  #finance .anchor-link:hover{opacity:.8;}
  #finance .anchor-link.active{opacity:1; border-bottom-color:var(--navy); color:var(--navy-deep);}

  #finance .content-section{padding:clamp(3.2rem,6.5vw,5.5rem) clamp(1.5rem,5vw,4rem); border-top:1px solid var(--rule);}
  #finance .content-inner{max-width:1180px; margin:0 auto; display:grid; grid-template-columns:.85fr 2fr; gap:3rem;}
  #finance .content-label h2{
    font-family:'Newsreader',serif; font-weight:500; font-size:1.5rem; position:sticky; top:5rem;
  }
  #finance .content-label p{font-size:.88rem; color:#6b7178; margin-top:.6rem; line-height:1.5; position:sticky; top:8rem;}
  #finance .content-body h3{
    font-family:'Newsreader',serif; font-weight:600; font-size:1.2rem; margin:1.8rem 0 .7rem;
  }
  #finance .content-body h3:first-child{margin-top:0;}
  #finance .content-body p{font-size:.96rem; line-height:1.7; color:#3A3F45; margin-bottom:1rem;}
  #finance .content-body ul{margin:1rem 0 0; padding-left:1.2rem;}
  #finance .content-body li{font-size:.92rem; line-height:1.8; color:#3A3F45;}
  #finance .content-body strong{color:var(--navy-deep); font-weight:600;}

  #finance .problem-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem; margin-top:1.8rem;}
  #finance .problem-card{background:#fff; border:1px solid var(--rule); border-radius:5px; padding:1.4rem;}
  #finance .problem-card h4{font-family:'Newsreader',serif; font-weight:600; font-size:1.02rem; margin-bottom:.6rem;}
  #finance .problem-card p{font-size:.86rem; line-height:1.55; color:#4A4F55; margin:0;}

  #finance .outcome-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.8rem; margin-top:1.5rem;}
  #finance .outcome-item{border-top:2px solid var(--navy); padding-top:1rem;}
  #finance .outcome-item .metric{font-family:'Newsreader',serif; font-weight:600; font-size:1.9rem; color:var(--navy);}
  #finance .outcome-item p{font-size:.86rem; line-height:1.55; color:#4A4F55; margin-top:.4rem;}

  #finance .service-contact{background:var(--navy-deep); color:var(--navy-tint); padding:clamp(3.5rem,7vw,5.5rem) clamp(1.5rem,5vw,4rem);}
  #finance .service-contact-inner{max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.1fr .9fr; gap:4rem;}
  #finance .contact-form-wrap h2{font-family:'Newsreader',serif; font-weight:500; font-size:1.7rem; margin-bottom:.6rem;}
  #finance .contact-form-wrap > p{font-size:.92rem; opacity:.75; margin-bottom:1.6rem; line-height:1.6;}
  #finance .form-row{margin-bottom:1rem;}
  #finance .form-row label{
    font-family:'IBM Plex Mono',monospace; font-size:.7rem; letter-spacing:.06em; text-transform:uppercase;
    opacity:.7; display:block; margin-bottom:.4rem;
  }
  #finance .form-row input, #finance .form-row textarea, #finance .form-row select{
    width:100%; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.28); border-radius:2px;
    padding:.75rem .9rem; color:var(--navy-tint); font-family:'Inter',sans-serif; font-size:.9rem;
  }
  #finance .form-row textarea{min-height:110px; resize:vertical;}
  #finance .form-row input::placeholder, #finance .form-row textarea::placeholder{color:rgba(231,237,241,.4);}
  #finance .form-row select option{color:#14171C;}
  #finance .service-contact .btn-primary{
    background:var(--navy-tint); color:var(--navy-deep); font-weight:600; border-radius:2px;
  }
  #finance .service-contact .btn-primary:hover{background:#fff;}
  #finance .contact-direct h3{font-family:'Newsreader',serif; font-weight:500; font-size:1.15rem; margin-bottom:1rem;}
  #finance .contact-email{padding:1rem 0; border-top:1px solid rgba(255,255,255,.15);}
  #finance .contact-email:first-of-type{border-top:none;}
  #finance .email-label{
    font-family:'IBM Plex Mono',monospace; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase;
    opacity:.55; margin-bottom:.3rem;
  }
  #finance .email-address{color:var(--navy-glow); font-size:.92rem;}
  #finance .contact-note{
    margin-top:2rem; padding-top:1.6rem; border-top:1px solid rgba(255,255,255,.15);
    font-size:.85rem; line-height:1.7; opacity:.75;
  }

  @media (max-width:860px){
    #finance .service-hero-inner{grid-template-columns:1fr;}
    #finance .content-inner{grid-template-columns:1fr;}
    #finance .content-label h2, #finance .content-label p{position:static;}
    #finance .problem-cards, #finance .outcome-grid{grid-template-columns:1fr;}
    #finance .service-contact-inner{grid-template-columns:1fr;}
  }

