/* Fanbazar page — extends assets/site.css */
.fb-page{overflow-x:clip}
.fb-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 42%,rgba(13,145,140,.28),transparent 42%),linear-gradient(132deg,#06192d 0%,#0d2b49 57%,#0b4656 100%);color:#fff}
.fb-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(158,224,217,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(158,224,217,.055) 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(to left,#000 20%,transparent 90%)}
.fb-hero .container{position:relative;z-index:1}
.fb-crumbs{display:flex;align-items:center;gap:9px;padding-top:27px;color:#bed3e0;font-size:11px;flex-wrap:wrap}
.fb-crumbs a:hover{color:white}
.fb-hero-grid{padding:70px 0 89px;display:grid;grid-template-columns:1.07fr .93fr;gap:62px;align-items:center}
.fb-hero .kicker{display:inline-flex;align-items:center;gap:8px;border:1px solid #ffffff30;background:#ffffff11;border-radius:999px;padding:6px 14px;font-size:11px;font-weight:800;color:#c6f0ea}
.fb-hero h1{font-size:clamp(36px,4.2vw,58px);line-height:1.55;margin:17px 0 14px;font-weight:900;letter-spacing:-1px}
.fb-hero h1 em{color:#77e0ce;font-style:normal}
.fb-hero .summary{max-width:640px;font-size:15px;line-height:2.25;color:#d2e1e9;margin:0 0 26px}
.fb-hero .hero-buttons{display:flex;gap:12px;flex-wrap:wrap}
.fb-hero-note{color:#a8c2cf;font-size:11px;display:block;margin-top:21px}
.fb-art{position:relative;min-height:385px}
.fb-ring{position:absolute;left:50%;top:50%;width:min(100%,340px);aspect-ratio:1;height:auto;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(179,245,230,.24);box-shadow:0 0 0 45px #ffffff06,0 0 0 91px #ffffff03;pointer-events:none}
.fb-hub{position:absolute;inset:104px auto auto calc(50% - 77px);width:154px;height:154px;border-radius:28px;background:linear-gradient(146deg,#1b6d7b,#123353);border:1px solid #ffffff3b;box-shadow:0 20px 80px #0005;display:grid;place-items:center;transform:rotate(-6deg)}
.fb-hub .inside{transform:rotate(6deg);text-align:center}
.fb-hub img{width:79px;height:79px;object-fit:contain;margin:0 auto 5px;background:#fff;border-radius:50%;padding:7px}
.fb-hub strong{font-size:10px;display:block;color:#d6fff7}
.fb-float{position:absolute;background:#fff;color:var(--navy);box-shadow:0 25px 55px #0004;border-radius:14px;display:flex;align-items:center;gap:11px;padding:13px 16px;max-width:205px}
.fb-float svg{width:39px;height:39px;padding:8px;border-radius:10px;background:#dff3ef;color:var(--teal)}
.fb-float strong{display:block;font-size:12px}.fb-float small{display:block;color:var(--body);font-size:10px}
.fb-float.one{top:22px;right:0}.fb-float.two{top:159px;left:0}.fb-float.three{bottom:4px;right:18px}
.fb-subnav{position:sticky;top:86px;z-index:40;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 9px 25px #10274706}
.fb-subnav .container{display:flex;gap:28px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;align-items:center}
.fb-subnav .container::-webkit-scrollbar{display:none}
.fb-subnav a{padding:15px 0;display:inline-block;font-size:12px;font-weight:800;color:#566b80;border-bottom:2px solid transparent;transition:.2s}
.fb-subnav a:hover,.fb-subnav a:focus-visible{color:var(--teal);border-color:var(--teal)}
.fb-intro-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:55px;align-items:center}
.fb-intro-grid .section-header{margin-bottom:18px}
.fb-intro-grid p{color:var(--body);font-size:13.5px;line-height:2.25}
.fb-feature-stack{display:grid;gap:13px}
.fb-feature{display:flex;gap:16px;align-items:flex-start;padding:21px;border:1px solid var(--line);background:#fff;border-radius:17px}
.fb-feature svg{width:45px;height:45px;padding:10px;flex-shrink:0;border-radius:13px;background:#e8f4f1;color:var(--teal)}
.fb-feature strong{display:block;font-size:14px}.fb-feature span{color:var(--body);font-size:11.7px;line-height:1.9;display:block}
.fb-triad{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.fb-pillar{background:#fff;border:1px solid var(--line);border-radius:20px;padding:29px 26px;position:relative;transition:.2s}
.fb-pillar:hover{border-color:#8ccac1;transform:translateY(-3px);box-shadow:var(--shadow)}
.fb-pillar:before{position:absolute;content:"";height:4px;right:26px;left:26px;top:0;background:var(--teal);border-radius:0 0 5px 5px}
.fb-pillar:nth-child(2):before{background:var(--blue)}
.fb-pillar:nth-child(3):before{background:var(--gold)}
.fb-pillar .icon-box{width:58px;height:58px;margin-bottom:20px}
.fb-pillar:nth-child(2) .icon-box{background:#eef1fa;color:var(--blue)}
.fb-pillar:nth-child(3) .icon-box{background:#fbf4e7;color:#a17437}
.fb-pillar h3{font-size:19px;margin:0 0 10px}.fb-pillar p{color:var(--body);font-size:12px;margin:0 0 14px}
.fb-pillar ul{padding:0 18px 0 0;margin:0 0 16px;color:#4d6074;font-size:11.5px}
.fb-pillar li{padding:4px 0}.fb-pillar .btn{width:100%;margin-top:10px}
.fb-flow-header{display:flex;align-items:flex-start;gap:50px;justify-content:space-between}
.fb-flow-header .section-header{max-width:720px}
.fb-flow-caption{padding:13px 19px;border:1px solid #c4ddde;background:#e8f5f2;border-radius:11px;color:#287478;font-size:12px;font-weight:700;max-width:270px}
.fb-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}
.fb-flow-step{position:relative;border-radius:17px;border:1px solid var(--line);background:white;padding:25px 19px;min-height:207px}
.fb-flow-step:before{content:attr(data-n);display:grid;place-items:center;background:#e4f4f0;border-radius:50%;width:36px;height:36px;color:var(--teal);font-size:15px;font-weight:900;margin-bottom:22px}
.fb-flow-step:not(:last-child):after{content:"←";font-size:21px;position:absolute;left:-19px;top:93px;color:#6d9f9d;z-index:3;font-weight:900}
.fb-flow-step strong{font-size:13px;display:block}.fb-flow-step p{color:var(--body);font-size:11.5px;margin:8px 0 0}
.fb-callout{margin-top:25px;border:1px solid #cbe1df;border-radius:15px;background:#edf7f5;padding:20px 25px;display:flex;gap:17px;align-items:flex-start}
.fb-callout svg{color:var(--teal);width:28px;height:28px}
.fb-callout strong{font-size:13.5px;display:block}.fb-callout p{font-size:12px;color:#43606b;margin:3px 0 0}
.fb-figure{background:#0b2949;color:#fff;position:relative;overflow:hidden}
.fb-figure:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 20%,#0a847a3b,transparent 40%)}
.fb-figure .container{position:relative}
.fb-figure .section-header h2{color:#fff}.fb-figure .section-header p{color:#c7d8e4}
.fb-figure .eyebrow{color:#7fe4d0}.fb-figure .eyebrow:before{background:#7fe4d0}
.fb-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.fb-stat{border:1px solid #ffffff25;border-radius:17px;background:#ffffff0b;padding:22px;text-align:center}
.fb-stat b{font-size:37px;font-weight:900;color:#7fe4d0;display:block;line-height:1.5;font-variant-numeric:tabular-nums}
.fb-stat span{display:block;color:#dce8ef;font-size:11px;line-height:2}
.fb-source{border-right:3px solid #7fe4d0;padding-right:15px;color:#bdd1dd;font-size:11px;margin-top:25px}
.fb-case-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:25px}
.fb-case-narrative{border-radius:22px;padding:35px;background:linear-gradient(140deg,#0b3754,#0d7a7e);color:white;display:flex;flex-direction:column;justify-content:space-between}
.fb-case-narrative .pill{display:inline-block;width:fit-content;background:#ffffff23;border:1px solid #ffffff35;border-radius:99px;padding:5px 13px;font-size:10px}
.fb-case-narrative h3{font-size:28px;line-height:1.65;margin:20px 0 12px}
.fb-case-narrative p{font-size:13px;color:#e2f1f3}
.fb-case-narrative small{font-size:10px;color:#cde1e5}
.fb-case-track{display:grid;gap:11px}
.fb-case-item{border-radius:13px;background:white;border:1px solid var(--line);padding:15px 18px;display:flex;gap:16px;align-items:flex-start}
.fb-case-item b{display:grid;place-items:center;width:32px;height:32px;background:#eaf4f1;color:var(--teal);flex-shrink:0;border-radius:9px;font-size:12px}
.fb-case-item strong{font-size:13px;display:block}.fb-case-item span{font-size:11.5px;color:var(--body)}
.fb-programs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.fb-program{border:1px solid var(--line);border-radius:18px;background:white;padding:29px 25px;position:relative}
.fb-program .tag{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:800;color:var(--teal);background:#eaf5f1;padding:5px 11px;border-radius:50px}
.fb-program h3{font-size:17px;margin:20px 0 13px}.fb-program p{font-size:12px;color:var(--body);margin:0}
.fb-program ul{padding:0 17px 0 0;font-size:11.5px;color:#475e72;margin:15px 0 0}
.fb-program li{margin-bottom:7px}
.fb-governance{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.fb-person{border:1px solid var(--line);border-radius:17px;padding:24px 20px}
.fb-person .role{font-size:10px;color:var(--teal);display:block;font-weight:900;line-height:1.9;margin-bottom:12px}
.fb-person strong{font-size:16px;display:block}.fb-person p{font-size:11px;color:var(--body);margin:5px 0 0}
.fb-legal-note{border-right:3px solid var(--teal);background:#eaf5f4;padding:14px 20px;color:#3f6570;font-size:11px;margin-top:22px;border-radius:9px 0 0 9px}
.fb-intake{display:grid;grid-template-columns:.87fr 1.13fr;gap:38px;border-radius:26px;background:linear-gradient(145deg,#0f2948,#0c5d68);padding:47px;color:#fff;box-shadow:0 20px 60px #0f294823}
.fb-intake .section-header{margin:0}.fb-intake h2{font-size:32px;line-height:1.5;margin:13px 0}.fb-intake p{font-size:13px;color:#d7e8ed}
.fb-intake .info-items{display:grid;gap:13px;margin-top:27px}
.fb-intake .info-items span{display:flex;align-items:center;gap:10px;color:#cfdee8;font-size:12px}
.fb-intake .info-items svg{width:19px;height:19px;color:#80e5d3}
.fb-intake-form{background:#fff;border-radius:18px;padding:26px;color:var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:13px}
.fb-intake-form .full{grid-column:1/-1}
.fb-intake-form label{display:block;font-size:11px;font-weight:800;margin-bottom:4px}
.fb-intake-form input,.fb-intake-form select,.fb-intake-form textarea{width:100%;border:1px solid #dce5eb;border-radius:10px;padding:10px 12px;color:var(--ink);font-size:12px;background:#fafcfd;outline:0}
.fb-intake-form input:focus,.fb-intake-form select:focus,.fb-intake-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #087f881a}
.fb-intake-form textarea{min-height:115px;resize:vertical}
.fb-intake-form .btn{width:100%}
.fb-intake-form .form-note{font-size:10px;color:#687f93;line-height:1.9}
.fb-archive{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.fb-archive article{border-radius:16px;border:1px solid var(--line);background:#fff;padding:22px}
.fb-archive time{font-size:10.5px;color:var(--teal);font-weight:900}
.fb-archive strong{display:block;font-size:14px;margin:9px 0}
.fb-archive p{font-size:11.5px;color:var(--body);margin:0}
.fb-disclaimer{background:#f7fafc;border:1px solid var(--line);padding:17px 21px;font-size:11px;color:#596d80;border-radius:12px;margin-top:22px}
.fb-disclaimer b{color:#263d55}
@media(max-width:1100px){
  .fb-hero-grid{gap:26px}
  .fb-flow{grid-template-columns:repeat(3,1fr)}
  .fb-flow-step:not(:last-child):after{display:none}
}
@media(max-width:850px){
  .fb-subnav{top:73px}
  .fb-hero-grid{grid-template-columns:1fr;padding:49px 0 63px}
  .fb-art{display:none}
  .fb-intro-grid,.fb-case-grid{grid-template-columns:1fr;gap:26px}
  .fb-triad,.fb-programs{grid-template-columns:repeat(2,1fr)}
  .fb-governance{grid-template-columns:repeat(2,1fr)}
  .fb-intake{grid-template-columns:1fr;padding:33px}
  .fb-flow-header{flex-direction:column;gap:0}
  .fb-flow-caption{max-width:none;margin-bottom:20px}
}
@media(max-width:580px){
  .fb-hero-grid{padding:42px 0 58px}
  .fb-hero h1{font-size:32px}
  .fb-hero .summary{font-size:13px}
  .fb-hero .hero-buttons{flex-direction:column}
  .fb-hero .btn{width:100%}
  .fb-subnav .container{gap:21px}
  .fb-triad,.fb-programs,.fb-stats,.fb-archive,.fb-governance{grid-template-columns:1fr}
  .fb-flow{grid-template-columns:1fr}
  .fb-flow-step{min-height:unset;padding:17px}
  .fb-flow-step:before{margin-bottom:10px}
  .fb-callout{padding:18px}
  .fb-case-narrative{padding:24px}
  .fb-intake{padding:23px 17px}
  .fb-intake h2{font-size:25px}
  .fb-intake-form{grid-template-columns:1fr;padding:19px}
}
