/* Field note: Why America's biggest banks are locking out AI agents.
   Built on the hermes-gbrain story register (carbon, Switzer, IBM Plex Mono, electric blue). */
@font-face{font-family:Switzer;src:url('/assets/fonts/switzer-300.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:Switzer;src:url('/assets/fonts/switzer-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Switzer;src:url('/assets/fonts/switzer-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Switzer;src:url('/assets/fonts/switzer-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/assets/fonts/ibm-plex-mono-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/assets/fonts/ibm-plex-mono-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}

:root{--carbon:#090909;--night:#050505;--panel:#131313;--raised:#171717;--white:#f4f4f0;--silver:#c9c9c3;--smoke:#90908b;--line:#30302d;--blue:#5b76ff;--blue-soft:#b8c4ff;--red:#df2b20;--red-soft:#ff8a7e;--display:Switzer,'Helvetica Neue',Arial,sans-serif;--mono:'IBM Plex Mono',ui-monospace,monospace}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body.fn-explainer{margin:0;background:var(--carbon);color:var(--white);font-family:var(--display);font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased}
.fn-explainer a{color:var(--blue-soft);text-underline-offset:.2em;text-decoration-thickness:1px}
.fn-explainer a:hover{color:var(--white)}
.fn-explainer a:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.skip-link{position:absolute;left:16px;top:-80px;z-index:100;padding:10px 14px;background:var(--white);color:var(--carbon)!important;font-family:var(--mono);font-size:12px}
.skip-link:focus{top:12px}

/* Hero */
.story-hero{width:min(1280px,calc(100vw - 48px));margin:0 auto;padding:clamp(88px,10vw,140px) 0 clamp(48px,6vw,80px)}
.story-hero__formats{display:flex;align-items:center;gap:16px;margin-bottom:28px;font-family:var(--mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase}
.story-hero__formats span{color:var(--smoke)}
.story-hero__meta,.story-hero__receipt{display:flex;gap:10px 22px;flex-wrap:wrap;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--smoke)}
.story-hero__meta span:first-child{color:var(--red-soft)}
.story-hero h1{max-width:1120px;margin:.45em 0 .4em;font-size:clamp(46px,7.4vw,108px);font-weight:300;letter-spacing:-.06em;line-height:.92;color:var(--white)}
.story-hero h1 em{color:var(--silver);font-style:normal}
.story-hero>p{max-width:760px;margin:0 0 40px;font-size:clamp(20px,2.1vw,28px);font-weight:300;line-height:1.4;color:var(--silver)}
.story-hero__receipt span{padding-left:14px;border-left:1px solid var(--line)}
.story-hero__receipt span:first-child{padding-left:0;border-left:0;color:var(--white)}
.fn-hero{width:min(1280px,calc(100vw - 48px));margin:0 auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fn-hero img{display:block;width:100%;height:auto;max-height:640px;object-fit:cover;background:var(--panel)}
.fn-hero figcaption{padding:14px 0;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--smoke)}
.fn-hero figcaption a{color:var(--silver)}

/* Body column */
.story-copy{width:min(760px,calc(100vw - 48px));margin:0 auto;padding:clamp(56px,7vw,96px) 0 clamp(72px,8vw,112px)}
.story-copy p{margin:0 0 1.35em;color:var(--silver)}
.story-copy strong,.story-copy b{color:var(--white);font-weight:500}
.story-copy em{font-style:italic}
.story-copy h2{margin:2.3em 0 .6em;font-size:clamp(32px,4.2vw,52px);font-weight:400;letter-spacing:-.045em;line-height:1.02;color:var(--white)}
.fn-section-no{display:block;margin-bottom:14px;font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:.09em;line-height:1.4;text-transform:uppercase;color:var(--blue-soft)}
.story-copy h3{margin:2em 0 .5em;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--white)}
.fn-ref{font-family:var(--mono);font-size:.62em;letter-spacing:.02em;color:var(--smoke);white-space:normal}
.fn-ref a{color:var(--smoke);text-decoration-color:rgba(144,144,139,.5)}
.fn-ref a:hover{color:var(--blue-soft)}

/* Key points */
.fn-keypoints{margin:0 0 8px;padding:30px 30px 14px;background:var(--panel);border:1px solid var(--line);border-top:2px solid var(--blue)}
.fn-keypoints h2{margin:0 0 18px;font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.09em;line-height:1;text-transform:uppercase;color:var(--blue-soft)}
.fn-keypoints ul{margin:0;padding:0;list-style:none}
.fn-keypoints li{position:relative;padding:0 0 16px 22px;font-size:17px;line-height:1.55;color:var(--white)}
.fn-keypoints li::before{content:"";position:absolute;left:0;top:.68em;width:7px;height:7px;background:var(--blue)}

/* Timeline */
.fn-timeline{margin:44px 0;padding:28px 30px 10px;background:var(--night);border:1px solid var(--line)}
.fn-timeline h3{margin:0;color:var(--blue-soft);font-weight:500}
.fn-timeline .fn-note{margin:4px 0 14px;font-family:var(--mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--smoke)}
.fn-timeline dl{display:grid;grid-template-columns:96px 1fr;column-gap:14px;margin:0;border-top:1px solid var(--line)}
.fn-timeline dt,.fn-timeline dd{padding:14px 0;border-bottom:1px solid var(--line)}
.fn-timeline dl>:nth-last-child(-n+2){border-bottom:0}
.fn-timeline dt{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.04em;color:var(--white);padding-top:17px}
.fn-timeline dd{margin:0;font-size:15px;line-height:1.5;color:var(--silver)}

/* Steps */
.fn-steps{list-style:none;counter-reset:st;margin:34px 0;padding:0;border-top:1px solid var(--line)}
.fn-steps li{counter-increment:st;display:block;position:relative;padding:22px 0 22px 64px;border-bottom:1px solid var(--line);color:var(--silver)}
.fn-steps li::before{content:"0" counter(st);position:absolute;left:0;top:27px;font-family:var(--mono);font-size:11px;color:var(--blue-soft)}
.fn-steps b{color:var(--white);font-weight:500}

/* Figures */
.fn-figure{margin:52px 0;padding:30px 0 0;border-top:1px solid var(--line)}
.fn-figure__title{margin:0 0 6px!important;font-family:var(--mono);font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--blue-soft)!important}
.fn-figure__dek{margin:0 0 24px!important;font-size:22px;font-weight:300;letter-spacing:-.02em;line-height:1.3;color:var(--white)!important}
.fn-figure svg{display:block;width:100%;height:auto;margin:0 auto}
.fn-figure--diagram svg{max-width:600px;padding:24px;background:var(--panel);border:1px solid var(--line);box-sizing:content-box;max-width:min(600px,calc(100% - 50px))}
.fn-figure--chart svg{max-width:640px;padding:24px;background:var(--panel);border:1px solid var(--line);box-sizing:content-box;max-width:min(640px,calc(100% - 50px));margin:0}
.fn-figure figcaption{margin-top:14px;font-family:var(--mono);font-size:10.5px;line-height:1.65;letter-spacing:.02em;color:var(--smoke)}
.fn-figure figcaption a{color:var(--silver)}

/* Quotes */
.fn-pull{margin:52px 0;padding:4px 0 4px 28px;border-left:2px solid var(--blue)}
.fn-pull p{margin:0 0 14px!important;font-size:clamp(25px,3vw,34px);font-weight:300;letter-spacing:-.025em;line-height:1.3;color:var(--white)!important}
.fn-pull cite{display:block;font-family:var(--mono);font-size:10px;font-style:normal;letter-spacing:.07em;line-height:1.6;text-transform:uppercase;color:var(--smoke)}
.fn-pull cite a{color:var(--silver)}

/* Terms box */
.fn-terms{margin:40px 0;padding:26px 28px 20px;background:var(--panel);border-left:2px solid var(--red)}
.fn-label{display:block;margin-bottom:12px;font-family:var(--mono);font-size:10px;letter-spacing:.08em;line-height:1.5;text-transform:uppercase;color:var(--red-soft)}
.fn-terms p{margin:0 0 .8em;font-size:16px;line-height:1.6;color:var(--white)}
.fn-terms .fn-caption{margin:0;font-family:var(--mono);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--smoke)}

/* Implications */
.fn-implications{margin:30px 0 0;border-top:1px solid var(--line)}
.fn-implications section{padding:24px 0 8px;border-bottom:1px solid var(--line)}
.fn-implications h4{margin:0 0 8px;font-size:20px;font-weight:500;letter-spacing:-.015em;line-height:1.3;color:var(--white)}
.fn-implications p{font-size:17px;margin:0 0 1em}

/* What to watch */
.fn-watch{list-style:none;margin:26px 0 0;padding:0;border-top:1px solid var(--line)}
.fn-watch li{display:grid;grid-template-columns:112px 1fr;gap:18px;padding:20px 0;border-bottom:1px solid var(--line);font-size:17px;color:var(--silver)}
.fn-watch__when{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.04em;line-height:1.5;padding-top:4px;color:var(--blue-soft)}

/* Sources */
.fn-sources{margin:88px 0 0;padding:40px;background:var(--night);border:1px solid var(--line)}
.fn-sources h2{margin:0 0 26px;font-size:clamp(30px,3.6vw,44px)}
.fn-sources ol{margin:0;padding-left:2.2em;font-size:14.5px;line-height:1.55;color:var(--silver)}
.fn-sources li{margin:0 0 11px;padding-left:.3em;overflow-wrap:anywhere}
.fn-sources li::marker{font-family:var(--mono);font-size:11px;color:var(--smoke)}
.fn-source-name{color:var(--white);font-weight:500}
.fn-sources .fn-method{margin:26px 0 0;padding-top:20px;border-top:1px solid var(--line);font-size:13.5px;line-height:1.6;color:var(--smoke)}
.fn-standing{margin:36px 0 0!important;font-family:var(--mono);font-size:11px;letter-spacing:.03em;line-height:1.6;color:var(--smoke)!important}
.story-signoff{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line);font-family:var(--mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase}

@media(max-width:900px){.fn-sources{padding:30px}}
@media(max-width:620px){
  body.fn-explainer{font-size:17px}
  .story-hero{width:calc(100% - 32px);padding-top:76px}
  .story-hero h1{font-size:clamp(42px,12.4vw,64px);line-height:.96;letter-spacing:-.05em}
  .story-hero>p{font-size:19px}
  .fn-hero{width:100%;border-left:0;border-right:0}
  .fn-hero figcaption{padding:12px 16px}
  .story-copy{width:calc(100% - 32px)}
  .story-copy h2{font-size:34px}
  .fn-keypoints{padding:24px 20px 10px}
  .fn-keypoints li{font-size:16px}
  .fn-timeline{padding:22px 18px 6px;margin:36px -4px}
  .fn-timeline dl{grid-template-columns:78px 1fr;column-gap:12px}
  .fn-steps li{padding-left:44px}
  .fn-figure--diagram svg,.fn-figure--chart svg{padding:14px;max-width:calc(100% - 30px)}
  .fn-figure__dek{font-size:19px}
  .fn-pull{padding-left:18px}
  .fn-terms{padding:22px 18px 16px}
  .fn-watch li{grid-template-columns:1fr;gap:6px}
  .fn-sources{padding:24px 18px;margin-top:64px}
  .fn-sources ol{padding-left:1.8em;font-size:14px}
  .story-signoff{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Site footer on the carbon story register */
.fn-explainer .shell-footer{margin:0;padding:36px 24px 44px;border-top:1px solid var(--line);background:#070707}
.fn-explainer .shell-footer-inner{max-width:1280px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;font-size:14px;color:var(--smoke)}
.fn-explainer .shell-footer-tagline{font-weight:500;color:var(--white)}
.fn-explainer .shell-footer-links{display:flex;flex-wrap:wrap;gap:4px 16px}
.fn-explainer .shell-footer-links a{color:var(--silver);text-decoration:none;font-size:14px}
.fn-explainer .shell-footer-links a:hover{color:var(--white)}
.fn-explainer .shell-footer-disclaimer{flex-basis:100%;margin:4px 0 0;font-size:13px;color:var(--smoke)}
.fn-explainer ::selection{background:var(--blue);color:var(--white)}
@media(max-width:620px){.fn-br{display:none}}
