/* Archimedes Funding — Editorial / Professional site layer
   Built on the design system's professional.css (.pro-* tokens).
   Restrained: paper & beige surfaces, hairline rules, no sticker shadows. */

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--pro-paper);color:var(--pro-ink);font-family:var(--pro-font-body)}
body{min-height:100vh;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}

/* ---- containers ---- */
.ed-wrap{max-width:1120px;margin:0 auto;padding:0 40px}
.ed-narrow{max-width:760px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.ed-wrap,.ed-narrow{padding:0 24px}}

/* ---- header ---- */
.ed-header{position:sticky;top:0;z-index:50;background:var(--pro-paper);border-bottom:var(--pro-hair)}
.ed-header-inner{max-width:1120px;margin:0 auto;padding:16px 40px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.ed-header img{height:48px;display:block}
.ed-nav{display:flex;gap:34px}
.ed-nav a{color:var(--pro-ink-soft);text-decoration:none;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);padding:4px 0;border-bottom:1px solid transparent;transition:color .12s var(--ease-out),border-color .12s var(--ease-out)}
.ed-nav a:hover,.ed-nav a.active{color:var(--pro-teal);border-color:var(--pro-teal)}
@media(max-width:760px){.ed-nav{display:none}}
@media(max-width:640px){.ed-header-inner{padding:14px 24px}.ed-header img{height:40px}}

/* ---- buttons ---- */
.ed-btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--pro-font-body);font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.1em;padding:13px 24px;border-radius:var(--r-sm);border:1px solid var(--pro-ink);text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .16s var(--ease-out),color .16s var(--ease-out)}
.ed-btn-primary{background:var(--pro-gold);color:var(--pro-ink);border-color:var(--pro-ink)}
.ed-btn-primary:hover{background:var(--af-yellow-600)}
.ed-btn-quiet{background:transparent;color:var(--pro-ink)}
.ed-btn-quiet:hover{background:var(--pro-beige-deep)}
.ed-btn-sm{padding:10px 18px;font-size:12px}
.ed-btn:focus-visible{outline:3px solid var(--pro-teal);outline-offset:2px}

/* ---- labels / eyebrows ---- */
.ed-label{font-family:var(--pro-font-body);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);color:var(--pro-teal);display:inline-flex;align-items:center;gap:12px;white-space:nowrap}
.ed-label--gold{color:var(--pro-teal)}
.ed-label .bar{height:1px;width:40px;background:currentColor;display:inline-block}

/* ---- hero / cover ---- */
.ed-hero{border-bottom:var(--pro-hair)}
.ed-hero .ed-wrap{padding-top:96px;padding-bottom:96px}
.ed-hero .meta{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:22px;margin-bottom:44px;border-bottom:var(--pro-hair);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);color:var(--pro-ink-faint)}
.ed-hero h1{font-family:var(--pro-font-display);text-transform:uppercase;color:var(--pro-ink);font-weight:400;line-height:1.0;letter-spacing:-.005em;font-size:clamp(46px,7vw,92px);margin:0 0 32px}
.ed-hero h1 .gold{color:var(--pro-teal)}
.ed-hero .lede{font-family:var(--pro-font-body);font-size:clamp(19px,2.2vw,23px);line-height:1.5;color:var(--pro-ink-soft);max-width:640px;margin:0 0 40px}
.ed-hero .actions{display:flex;gap:14px;flex-wrap:wrap}
.ed-hero-row{display:flex;justify-content:space-between;align-items:center;gap:64px}
.ed-hero-copy{flex:1;min-width:0}
.ed-hero-mark{flex:none;width:210px;height:auto;display:block}
@media(max-width:860px){.ed-hero-mark{display:none}}
.ed-hero .facts{display:flex;flex-wrap:wrap;gap:0;margin-top:56px;border-top:var(--pro-hair)}
.ed-hero .fact{flex:1;min-width:150px;padding:24px 24px 24px 0;border-right:var(--pro-hair-soft)}
.ed-hero .fact:last-child{border-right:0}
.ed-hero .fact .k{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);color:var(--pro-ink-faint);margin-bottom:8px}
.ed-hero .fact .v{font-family:var(--pro-font-head);font-weight:600;font-size:19px;color:var(--pro-ink)}
@media(max-width:640px){.ed-hero .meta{flex-direction:column;gap:6px}.ed-hero .fact{flex-basis:45%;padding-right:16px}}

/* ---- page header (interior pages) ---- */
.ed-pagehead{background:var(--pro-beige);border-bottom:var(--pro-hair)}
.ed-pagehead .ed-wrap{padding-top:72px;padding-bottom:72px}
.ed-pagehead h1{font-family:var(--pro-font-display);text-transform:uppercase;color:var(--pro-ink);font-weight:400;line-height:1.02;letter-spacing:-.005em;font-size:clamp(40px,6vw,76px);margin:20px 0 24px}
.ed-pagehead h1 .gold{color:var(--pro-ink);font-family:var(--font-display-3d)}
.ed-pagehead .lede{font-family:var(--pro-font-body);font-size:clamp(18px,2vw,21px);line-height:1.5;color:var(--pro-ink-soft);max-width:640px;margin:0}

/* ---- sections ---- */
.ed-section{padding:80px 0;border-bottom:var(--pro-hair)}
.ed-section.tight{padding:64px 0}
.ed-section.beige{background:var(--pro-beige)}
.ed-section-head{max-width:680px;margin:0 0 48px}
.ed-section-head h2{font-family:var(--pro-font-head);font-weight:600;color:var(--pro-ink);font-size:clamp(28px,3.6vw,40px);line-height:1.15;letter-spacing:0;margin:16px 0 0;text-transform:none}
.ed-h2-display{font-family:var(--pro-font-display)!important;text-transform:uppercase!important;letter-spacing:-.005em!important;line-height:1.02!important;font-weight:400!important}
.ed-section-head p{font-family:var(--pro-font-body);font-size:18px;line-height:1.6;color:var(--pro-ink-soft);margin:18px 0 0}

/* ---- prose ---- */
.ed-prose p{font-family:var(--pro-font-body);font-size:18px;line-height:1.7;color:var(--pro-ink-soft);margin:0 0 22px}
.ed-prose strong{color:var(--pro-ink);font-weight:700}
.ed-prose h2{font-family:var(--pro-font-head);font-weight:600;color:var(--pro-ink);font-size:clamp(24px,3vw,32px);line-height:1.15;letter-spacing:0;text-transform:none;margin:52px 0 20px}
.ed-prose .dropcap::first-letter{font-family:var(--pro-font-display);float:left;font-size:76px;line-height:.72;color:var(--pro-teal);padding:6px 14px 0 0}
.ed-prose .pull{font-family:var(--pro-font-display);text-transform:uppercase;color:var(--pro-ink);font-weight:400;font-size:clamp(24px,3vw,32px);line-height:1.15;letter-spacing:-.005em;border-left:3px solid var(--pro-gold);padding:6px 0 6px 26px;margin:44px 0}

/* ---- panels / cards ---- */
.ed-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:var(--pro-hair)}
.ed-grid-3 .ed-item{padding:36px 32px 36px 0;border-right:var(--pro-hair-soft)}
.ed-grid-3 .ed-item:last-child{border-right:0;padding-right:0}
@media(max-width:820px){.ed-grid-3{grid-template-columns:1fr}.ed-grid-3 .ed-item{border-right:0;border-bottom:var(--pro-hair-soft);padding:28px 0}.ed-grid-3 .ed-item:last-child{border-bottom:0}}
.ed-item .idx{font-family:var(--pro-font-display);font-size:28px;color:var(--pro-teal);line-height:1;margin-bottom:16px}
.ed-item h3{font-family:var(--pro-font-head);font-weight:600;font-size:21px;color:var(--pro-ink);line-height:1.2;letter-spacing:0;text-transform:none;margin:0 0 12px}
.ed-item p{font-family:var(--pro-font-body);font-size:15px;line-height:1.6;color:var(--pro-ink-soft);margin:0 0 18px}
.ed-item .more{font-family:var(--pro-font-body);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);color:var(--pro-teal);text-decoration:none;border-bottom:1px solid var(--pro-teal);padding-bottom:2px}
.ed-item .more:hover{color:var(--pro-ink);border-color:var(--pro-ink)}

.ed-panel{background:var(--pro-paper);border:var(--pro-hair);padding:32px}
.ed-panel--beige{background:var(--pro-beige)}

/* two-path structure */
.ed-paths{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}
@media(max-width:720px){.ed-paths{grid-template-columns:1fr}}
.ed-path{background:var(--pro-paper);border:var(--pro-hair);padding:28px}
.ed-path .tag{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);color:var(--pro-teal);margin-bottom:14px}
.ed-path .tag--gold{color:var(--pro-teal)}
.ed-path h3{font-family:var(--pro-font-head);font-weight:600;font-size:22px;color:var(--pro-ink);letter-spacing:0;text-transform:none;margin:0 0 12px}
.ed-path p{font-family:var(--pro-font-body);font-size:15px;line-height:1.6;color:var(--pro-ink-soft);margin:0}
.ed-path .exit{margin-top:18px;padding-top:16px;border-top:var(--pro-hair-soft);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);color:var(--pro-ink-faint)}
.ed-path .exit b{display:block;margin-top:6px;font-family:var(--pro-font-head);font-weight:600;font-size:17px;letter-spacing:0;text-transform:none;color:var(--pro-ink)}

/* numbered flow */
.ed-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:var(--pro-hair);margin-top:8px}
.ed-flow .step{padding:28px 24px 28px 0;border-right:var(--pro-hair-soft)}
.ed-flow .step:last-child{border-right:0;padding-right:0}
@media(max-width:760px){.ed-flow{grid-template-columns:1fr 1fr}.ed-flow .step:nth-child(2){border-right:0}}
@media(max-width:460px){.ed-flow{grid-template-columns:1fr}.ed-flow .step{border-right:0;border-bottom:var(--pro-hair-soft)}.ed-flow .step:last-child{border-bottom:0}}
.ed-flow .step .n{font-family:var(--pro-font-display);font-size:26px;color:var(--pro-teal);line-height:1;margin-bottom:12px}
.ed-flow .step h4{font-family:var(--pro-font-head);font-weight:600;font-size:16px;color:var(--pro-ink);letter-spacing:0;text-transform:none;margin:0 0 8px}
.ed-flow .step p{font-family:var(--pro-font-body);font-size:14px;line-height:1.55;color:var(--pro-ink-soft);margin:0}

/* requirements list */
.ed-reqs{list-style:none;margin:0;padding:0;counter-reset:req;border-top:var(--pro-hair)}
.ed-reqs li{counter-increment:req;position:relative;padding:20px 0 20px 54px;border-bottom:var(--pro-hair-soft);font-family:var(--pro-font-body);font-size:16px;line-height:1.55;color:var(--pro-ink-soft)}
.ed-reqs li:last-child{border-bottom:0}
.ed-reqs li::before{content:counter(req,decimal-leading-zero);position:absolute;left:0;top:19px;font-family:var(--pro-font-display);font-size:22px;color:var(--pro-teal);line-height:1}
.ed-reqs li strong{color:var(--pro-ink);font-weight:700}

/* exclusion list */
.ed-nots{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0}
@media(max-width:560px){.ed-nots{grid-template-columns:1fr}}
.ed-nots li{padding:15px 0;border-top:var(--pro-hair-soft);font-family:var(--pro-font-body);font-size:15px;color:var(--pro-ink-soft);display:flex;align-items:center;gap:14px}
.ed-nots li .x{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:none;border-radius:999px;background:var(--af-orange);color:var(--pro-paper);font-family:var(--pro-font-head);font-weight:700;font-size:13px;line-height:1}

/* contact */
.ed-contact-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:0;border-top:var(--pro-hair);margin-top:44px}
@media(max-width:760px){.ed-contact-grid{grid-template-columns:1fr}}
.ed-contact-grid .col{padding:32px 32px 32px 0;border-right:var(--pro-hair-soft)}
.ed-contact-grid .col:last-child{border-right:0;padding-right:0}
@media(max-width:760px){.ed-contact-grid .col{border-right:0;border-bottom:var(--pro-hair-soft);padding:28px 0}.ed-contact-grid .col:last-child{border-bottom:0}}
.ed-contact-grid h4{font-family:var(--pro-font-body);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);color:var(--pro-teal);margin:0 0 16px}
.ed-contact-grid .who{font-family:var(--pro-font-head);font-weight:600;font-size:20px;color:var(--pro-ink);margin:0 0 4px}
.ed-contact-grid p{font-family:var(--pro-font-body);font-size:15px;line-height:1.6;color:var(--pro-ink-soft);margin:0 0 12px}
.ed-contact-grid a.mail{font-family:var(--pro-font-head);font-weight:600;font-size:15px;color:var(--pro-teal);text-decoration:none;border-bottom:1px solid var(--pro-teal);padding-bottom:1px;white-space:nowrap}
.ed-contact-grid a.mail:hover{color:var(--pro-ink);border-color:var(--pro-ink)}

/* signature */
.ed-sign{margin-top:52px;padding-top:26px;border-top:var(--pro-hair);font-family:var(--pro-font-display);text-transform:uppercase;font-size:20px;color:var(--pro-ink)}
.ed-sign .back{display:block;color:var(--pro-teal);font-size:30px;line-height:1;margin-bottom:12px}
.ed-sign .sub{display:block;font-family:var(--pro-font-body);font-weight:600;font-size:11px;letter-spacing:var(--pro-tracking-label);color:var(--pro-ink-faint);margin-top:8px;text-transform:uppercase}

/* email cta line */
.ed-mail-cta{display:inline-flex;align-items:center;gap:12px;margin-top:6px;font-family:var(--pro-font-display);text-transform:uppercase;font-size:clamp(20px,2.6vw,28px);color:var(--pro-ink);text-decoration:none;border-bottom:2px solid var(--pro-gold);padding-bottom:6px}
.ed-mail-cta:hover{color:var(--pro-teal);border-color:var(--pro-teal)}

/* footer */
.ed-footer{background:var(--pro-beige-deep);border-top:var(--pro-hair)}
.ed-footer-inner{max-width:1120px;margin:0 auto;padding:56px 40px 32px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
@media(max-width:760px){.ed-footer-inner{grid-template-columns:1fr 1fr;padding:48px 24px 28px}}
.ed-footer img{height:44px;margin-bottom:16px}
.ed-footer .brand p{font-family:var(--pro-font-body);font-size:13px;line-height:1.6;color:var(--pro-ink-soft);margin:0 0 6px;max-width:280px}
.ed-footer h5{font-family:var(--pro-font-body);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:var(--pro-tracking-label);color:var(--pro-ink-faint);margin:0 0 16px}
.ed-footer a{display:block;color:var(--pro-ink-soft);text-decoration:none;font-family:var(--pro-font-body);font-size:14px;padding:4px 0}
.ed-footer a:hover{color:var(--pro-teal)}
.ed-footer .geo{display:block;font-family:var(--pro-font-body);font-size:14px;color:var(--pro-ink-soft);padding:4px 0}
.ed-footer-bottom{max-width:1120px;margin:0 auto;padding:22px 40px 40px;border-top:var(--pro-hair-soft);display:flex;flex-direction:column;gap:8px;font-family:var(--pro-font-body);font-size:12px;color:var(--pro-ink-faint)}
@media(max-width:760px){.ed-footer-bottom{padding:22px 24px 32px}}
.ed-footer-bottom .disc{max-width:720px;font-style:italic}

/* generic link default for editorial body */
a.tlink{color:var(--pro-teal);text-decoration:none;border-bottom:1px solid var(--pro-teal);padding-bottom:1px}
a.tlink:hover{color:var(--pro-ink);border-color:var(--pro-ink)}

/* divided-grid content padding — keep content off the hairline divider */
.ed-grid-3 .ed-item+.ed-item{padding-left:32px}
.ed-hero .fact+.fact{padding-left:28px}
.ed-flow .step+.step{padding-left:28px}
.ed-contact-grid .col+.col{padding-left:32px}
@media(max-width:820px){.ed-grid-3 .ed-item+.ed-item{padding-left:0}}
@media(max-width:760px){.ed-flow .step+.step,.ed-contact-grid .col+.col{padding-left:0}}
@media(max-width:640px){.ed-hero .fact+.fact{padding-left:0}}
