/* BeaconBorrow - "First Light". Beacon amber on warm canvas, deep sea blue counter-bands.
   Amber is a mid-tone: every amber fill carries INK text, never white. */
:root{
  --bg:#FAF6F0;--card:#FFFFFF;--ink:#2A1A08;--text:#3A2A14;--muted:#6B5540;
  --accent:#D97E2B;--accent-deep:#A65A17;--accent-tint:#F8E4CD;--tint2:#EDC79B;--line:#EDE3D6;
  --sea:#235C6B;--sea-band:#1C4A57;--sea-deep:#19333A;
  --foot-bg:#19333A;--foot-text:#D3E2E7;--foot-dim:#BFD3DA;--foot-link:#F0A95E;
  --amber-lite:#F6C68E;--amber-ink:#8A4A12;
  --fd:"Raleway",system-ui,sans-serif;--fb:"Nunito",system-ui,sans-serif;--r:14px;--wrap:1120px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--fb);font-size:17px;line-height:1.62;overflow-x:hidden}
img,svg{max-width:100%;height:auto;display:block}
a{color:var(--accent-deep)}
h1,h2,h3{font-family:var(--fd);color:var(--ink);line-height:1.18;margin:0;font-weight:600}
p,ul,ol{margin:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px;top:0;background:var(--sea-deep);color:#FAF6F0;padding:9px 14px;z-index:60;border-radius:var(--r)}
.skip:focus{left:8px;top:8px}
.eyebrow{font-family:var(--fd);font-weight:600;font-size:13px;letter-spacing:.07em;color:var(--accent-deep)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:var(--fd);font-weight:700;font-size:16.5px;padding:15px 30px;border-radius:999px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:background .15s,border-color .15s}
.btn-primary{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.btn-primary:hover{background:#E8923F;border-color:#E8923F}
.btn-ink{background:var(--ink);color:#FAF6F0;border-color:var(--ink)}
.btn-ink:hover{background:#43290D;border-color:#43290D}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-ghost:hover{background:var(--accent-tint)}

/* header - centred wordmark, three-ray mark at its left, nav lives in the footer */
.mast{background:var(--bg);position:relative;z-index:6}
.sub .mast{border-bottom:1px solid var(--line)}
.mast-in{display:flex;align-items:center;justify-content:center;min-height:78px;position:relative}
.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none}
.brand .mark{width:30px;height:30px;flex:0 0 30px}
.wm{font-family:var(--fd);font-weight:500;font-size:23px;letter-spacing:.004em;color:var(--ink)}
.wm b{font-weight:700;color:var(--accent-deep)}
.nav{display:none}
.nb{display:none;position:absolute;right:0;top:50%;transform:translateY(-50%);width:44px;height:44px;border:1px solid var(--line);background:var(--card);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer;padding:0}
.nb span{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px}
@media(max-width:860px){
  .nb{display:inline-flex}
  .nav{position:absolute;top:calc(100% - 8px);left:0;right:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;align-items:stretch;padding:4px 0;box-shadow:0 20px 44px rgba(26,51,58,.18);z-index:7}
  .nav.open{display:flex}
  .nav a{font-family:var(--fd);font-weight:600;font-size:15.5px;color:var(--ink);text-decoration:none;padding:13px 20px;border-top:1px solid var(--line)}
  .nav a:first-child{border-top:0}
}

/* hero - the photo is only a soft radial wash behind the upper card */
.hero{position:relative;overflow:hidden;background:var(--bg);padding:30px 0 70px}
.hero-wash{position:absolute;left:50%;top:0;transform:translateX(-50%);width:min(1260px,106vw);height:620px;pointer-events:none;
  background:radial-gradient(ellipse 58% 60% at 50% 26%,rgba(250,246,240,.22) 0%,rgba(250,246,240,.64) 34%,rgba(250,246,240,.90) 58%,#FAF6F0 76%),url("/band.webp") center 24%/cover no-repeat;
  filter:saturate(.5)}
.hero-in{position:relative;z-index:1;text-align:center;max-width:980px}
.hero-eyebrow{font-family:var(--fd);font-weight:500;font-size:14.5px;letter-spacing:.015em;color:var(--accent-deep);margin-bottom:22px}

/* form card - generous radius, wide amber top shoulder, centred head, no border */
.form-card{width:100%;max-width:var(--card-max,840px);margin:0 auto;background:var(--card);border-radius:26px;box-shadow:0 2px 4px rgba(42,26,8,.05),0 26px 60px -22px rgba(26,51,58,.26);text-align:left}
.form-card::before{content:"";display:block;height:13px;border-radius:26px 26px 0 0;background:linear-gradient(90deg,var(--accent-deep) 0%,var(--accent) 46%,var(--tint2) 100%)}
.form-card__head{padding:27px 26px 0;text-align:center}
.form-card__head h2{font-size:27px;letter-spacing:-.004em}
.form-card__head p{margin-top:8px;color:var(--muted);font-size:14.5px;line-height:1.5}
.form-host{padding:0 16px}
.form-card__trust{margin:0 24px;padding:15px 0 19px;border-top:1px solid var(--line);font-size:12.5px;line-height:1.55;color:var(--muted);text-align:center}
:root{--card-max:840px;--cta-text:#2A1A08}#storefrontloans_apply_form{min-height:0!important}#storefrontloans_apply_form>h4{position:static!important;top:auto!important;padding:34px 0 0!important;margin:0!important;text-align:center}#storefrontloans_apply_form>img{position:static!important;top:auto!important;display:block;margin:12px auto 40px!important}#storefrontloans_apply_form .bg_holder{padding-bottom:24px!important}#storefrontloans_apply_form .button_back_area{margin-top:0!important;height:auto!important;min-height:0!important}.form-host{min-height:172px!important;text-align:left}
.ticks{display:flex;flex-wrap:wrap;justify-content:center;gap:11px 30px;margin:28px auto 0;padding:0;list-style:none;max-width:780px}
.ticks li{display:inline-flex;align-items:center;gap:9px;font-family:var(--fd);font-weight:600;font-size:14.5px;color:var(--ink)}
.ticks svg{width:17px;height:17px;flex:0 0 17px}
.hero h1{font-size:clamp(29px,4.5vw,45px);letter-spacing:-.016em;max-width:800px;margin:40px auto 0;font-weight:600}
.hero .sub{max-width:690px;margin:16px auto 0;font-size:17.5px;color:var(--text)}
@media(max-width:600px){
  .hero{padding:20px 0 50px}
  .hero-wash{height:470px;width:210vw}
  .form-card{margin-left:calc(50% - 50vw + 4px);margin-right:calc(50% - 50vw + 4px);width:auto;max-width:none;border-radius:18px}
  .form-card::before{border-radius:18px 18px 0 0;height:11px}
  .form-card__head{padding:22px 18px 0}
  .form-card__head h2{font-size:24px}
  .form-host{padding:0 10px}
  .form-card__trust{margin:0 16px}
  .ticks{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px;justify-items:start;margin-top:24px}
  .ticks li{font-size:13.5px;align-items:flex-start;line-height:1.35}
  .ticks svg{margin-top:2px}
  .hero-eyebrow{font-size:13.5px;margin-bottom:18px}
  .hero h1{margin-top:32px}
}

/* recognition band - dark sea blue, straight under the hero. Light, then dark, then light. */
.recog{background:var(--sea-band);padding:80px 0 84px}
.recog-in{text-align:center;max-width:860px}
.recog .eyebrow{color:var(--amber-lite)}
.recog-h{color:#F6FAFB;font-size:clamp(26px,3.4vw,37px);margin-top:10px;letter-spacing:-.016em}
.recog-list{list-style:none;margin:30px auto 0;padding:0;max-width:720px}
.recog-list li{font-family:var(--fd);font-weight:500;font-size:clamp(19px,2.5vw,25px);line-height:1.36;color:#F3F8FA;padding-top:17px}
.recog-list li::before{content:"";display:block;height:2px;margin:0 auto 15px;border-radius:2px;background:linear-gradient(90deg,rgba(217,126,43,0),var(--accent) 50%,rgba(217,126,43,0))}
.recog-list li:nth-child(1)::before{width:36px}
.recog-list li:nth-child(2)::before{width:78px}
.recog-list li:nth-child(3)::before{width:130px}
.recog-list li:nth-child(4)::before{width:192px}
.recog-list li:nth-child(5)::before{width:264px}
.recog-list li:last-child{color:var(--amber-lite);font-weight:700}
.recog-close{margin:30px auto 0;max-width:660px;color:#DCE9ED;font-size:17px}
.recog .btn{margin-top:26px}
@media(max-width:600px){.recog{padding:58px 0 62px}.recog-list li{padding-top:14px}.recog-list li::before{margin-bottom:12px}}

/* how it works - three widening ray panels from a left-hand origin mark */
.how{padding:86px 0 78px}
.sec-head{max-width:720px}
.sec-head h2{font-size:clamp(27px,3.5vw,38px);margin-top:10px;letter-spacing:-.014em}
.sec-head p{margin-top:12px;color:var(--muted);font-size:17px}
.rays{display:grid;grid-template-columns:116px 1fr;gap:0 20px;align-items:center;margin-top:38px}
.rays-origin{display:flex;justify-content:flex-end;align-items:center}
.rays-origin svg{width:116px;height:auto}
.ray-list{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.ray{position:relative;background:var(--card);border-radius:0 20px 20px 0;padding:22px 28px 22px 30px;box-shadow:0 1px 2px rgba(42,26,8,.05),0 16px 36px -26px rgba(26,51,58,.5)}
.ray::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;border-radius:3px;background:var(--accent)}
.ray-n{display:block;font-family:var(--fd);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-deep)}
.ray h3{font-size:21px;margin-top:7px;letter-spacing:-.008em}
.ray p{margin-top:8px;color:var(--text);font-size:16.3px}
@media(min-width:861px){.ray:nth-child(1){margin-right:24%}.ray:nth-child(2){margin-right:12%}}
@media(max-width:860px){.how{padding:60px 0 54px}.rays{grid-template-columns:78px 1fr;gap:0 16px}.rays-origin svg{width:78px}.ray{border-radius:0 16px 16px 0;padding:20px 22px 20px 24px}.ray:nth-child(1){margin-right:14%}.ray:nth-child(2){margin-right:7%}}
@media(max-width:600px){.rays{grid-template-columns:1fr;gap:18px}.rays-origin{justify-content:center}.rays-origin svg{width:64px}.ray{padding:18px 18px 18px 20px}.ray:nth-child(1){margin-right:11%}.ray:nth-child(2){margin-right:5%}}

/* why - artwork and a plain trio on the amber tint */
.why{background:var(--accent-tint);padding:88px 0}
.why-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:54px;align-items:center}
.art{width:100%;border-radius:20px}
.why .eyebrow{color:var(--amber-ink)}
.why h2{font-size:clamp(27px,3.5vw,38px);margin-top:10px;letter-spacing:-.014em}
.why-lead{margin-top:14px;font-size:17px;color:var(--text)}
.trio{list-style:none;margin:26px 0 0;padding:0}
.trio li{display:grid;grid-template-columns:28px 1fr;gap:14px;padding:18px 0;border-top:1px solid rgba(138,74,18,.24)}
.trio li:first-child{border-top:0;padding-top:4px}
.trio li>span{font-family:var(--fd);font-weight:700;font-size:12.5px;letter-spacing:.1em;color:var(--amber-ink);padding-top:6px}
.trio h3{font-size:19px}
.trio p{margin-top:6px;color:var(--text);font-size:16px}
@media(max-width:900px){.why{padding:60px 0}.why-grid{grid-template-columns:1fr;gap:34px}.art{max-width:560px;margin:0 auto}}

/* photo band - one statement over the lighthouse at first light */
.pband{position:relative;overflow:hidden;background:var(--sea-deep)}
.pband-img{position:absolute;inset:0;margin:0}
.pband-img img{width:100%;height:100%;object-fit:cover;object-position:center}
.pband-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(25,51,58,.90) 0%,rgba(25,51,58,.76) 48%,rgba(25,51,58,.92) 100%)}
.pband-in{position:relative;z-index:1;padding:104px 0;max-width:740px;margin:0 auto;text-align:center}
.pband .eyebrow{color:var(--amber-lite)}
.pband h2{color:#F6FAFB;font-size:clamp(28px,4vw,42px);margin-top:12px;letter-spacing:-.016em}
.pband p{margin:16px auto 0;color:#DCE9ED;font-size:17px;max-width:640px}
@media(max-width:700px){.pband-in{padding:68px 0}}

/* faq - centred single column, a thin amber underline opening every question */
.faq{padding:86px 0 80px}
.faq-head{text-align:center;max-width:680px;margin:0 auto}
.faq-head h2{font-size:clamp(27px,3.5vw,38px);margin-top:10px;letter-spacing:-.014em}
.faq-list{max-width:720px;margin:36px auto 0;display:grid;gap:30px;text-align:center}
.faq-item h3{font-size:20.5px;line-height:1.32;padding-bottom:14px;position:relative}
.faq-item h3::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:58px;height:2px;border-radius:2px;background:var(--accent)}
.faq-item p{margin-top:14px;color:var(--text);font-size:16.5px}
@media(max-width:600px){.faq{padding:58px 0 54px}.faq-list{gap:26px}}

/* closing band - the beacon itself, ink on amber */
.close{background:linear-gradient(180deg,#E79243 0%,var(--accent) 100%);padding:78px 0;text-align:center}
.close .eyebrow{color:var(--ink)}
.close h2{color:var(--ink);font-size:clamp(27px,3.6vw,40px);letter-spacing:-.016em;max-width:740px;margin:10px auto 0}
.close p{margin:14px auto 0;max-width:620px;color:var(--ink);font-size:17px}
.close .btn{margin-top:28px}
@media(max-width:600px){.close{padding:58px 0}}

/* footer */
.foot{background:var(--foot-bg);color:var(--foot-text);padding:62px 0 40px;font-size:14.5px}
.foot-top{display:grid;grid-template-columns:1fr auto;gap:22px 44px;align-items:start;padding-bottom:26px;border-bottom:1px solid rgba(211,226,231,.16)}
.foot .wm{color:#F2F8F9}
.foot .wm b{color:var(--foot-link)}
.foot-line{margin-top:11px;color:var(--foot-dim);max-width:480px}
.foot a{color:var(--foot-link)}
.foot-mail{font-family:var(--fd);font-weight:600;font-size:15.5px;text-decoration:none;border-bottom:1px solid rgba(240,169,94,.5);padding-bottom:2px;white-space:nowrap}
.foot-mail:hover{border-bottom-color:var(--foot-link)}
.foot-nav{display:flex;flex-wrap:wrap;gap:10px 30px;margin:24px 0 0;padding:0}
.foot-nav a{font-family:var(--fd);font-weight:700;font-size:16px;color:#F2F8F9;text-decoration:none}
.foot-nav a:hover{color:var(--foot-link)}
.legal-links{margin:20px 0 0;padding:18px 0 0;border-top:1px solid rgba(211,226,231,.14)}
.legal-links a{color:var(--foot-dim);text-decoration:none;font-family:var(--fb);font-weight:500;font-size:13.5px}
.legal-links a:hover{color:var(--foot-link)}
.disc{margin-top:22px;padding-top:22px;border-top:1px solid rgba(211,226,231,.16)}
.disc p{color:var(--foot-dim);font-size:13px;line-height:1.6;margin:0 0 10px}
.disc b,.disc strong{color:#F2F8F9;font-weight:700}
.disc a{color:var(--foot-link)}
@media(max-width:760px){.foot-top{grid-template-columns:1fr}}

/* injected unsubscribe / CCPA cards and modal: amber fills must carry ink text */
.unsub-card .unsub-form__submit{background:var(--accent);color:var(--ink);font-weight:700}
.unsub-card .unsub-form__submit:hover{background:#E8923F}
.unsub-card .unsub-field input:focus,.unsub-card .unsub-field select:focus{outline:2px solid var(--accent-deep)}
.unsub-card .unsub-msg--success{background:var(--accent-tint);color:var(--ink)}
.cmp-modal .cmp-modal-close{background:var(--accent-tint);color:var(--ink)}

/* subpage prose */
.sub main{background:var(--bg)}
.prose{max-width:720px;padding:54px 20px 86px}
.prose h1{font-size:clamp(30px,4.4vw,42px);letter-spacing:-.016em}
.prose p.updated{margin-top:10px;font-family:var(--fd);font-weight:600;font-size:13px;letter-spacing:.05em;color:var(--accent-deep)}
.prose h2{font-size:22px;margin-top:38px;padding-top:22px;border-top:1px solid var(--line);letter-spacing:-.01em}
.prose p{margin-top:14px;line-height:1.72}
.prose ul{margin:14px 0 0;padding:0 0 0 22px}
.prose ul>li{margin-top:8px;line-height:1.66;padding-left:4px}
.prose ul>li::marker{color:var(--accent-deep)}
.prose strong{color:var(--ink);font-weight:700}
.prose a{color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px}
.prose .btn{margin-top:22px;margin-right:10px;text-decoration:none}
.prose a.btn.btn-primary{background:var(--accent);color:var(--ink);border-color:var(--accent)}
.prose a.btn.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}

.legal-links{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}.disc p{font-size:.8rem;line-height:1.55}.cmp-modal{display:none;position:fixed;inset:0;z-index:90;background:rgba(10,14,20,.6);padding:30px 14px;overflow:auto}.cmp-modal.is-open{display:block}body.cmp-modal-open{overflow:hidden}.cmp-modal-card{max-width:860px;margin:0 auto;background:var(--card);color:var(--ink);border-radius:var(--r);box-shadow:0 30px 80px -30px rgba(0,0,0,.6)}.cmp-modal-head{position:sticky;top:0;background:var(--card);display:flex;justify-content:flex-end;padding:10px 12px;border-bottom:1px solid var(--line);border-radius:var(--r) var(--r) 0 0}.cmp-modal-close{border:0;background:var(--accent-tint);width:36px;height:36px;border-radius:9px;font-size:1.25rem;cursor:pointer;color:var(--ink)}.cmp-modal-body{padding:6px 24px 30px}.cmp-modal-body .prose{max-width:none}.cmp-modal-loading{padding:40px;text-align:center;color:var(--muted)}.unsub-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:26px 22px;margin:22px 0}.unsub-card__title{margin:0 0 6px;font-family:var(--fd);font-size:1.35rem}.unsub-card__sub{margin:0 0 18px;color:var(--muted)}.unsub-field{margin:0 0 14px}.unsub-field label{display:block;font-weight:600;font-size:.92rem;margin:0 0 6px}.unsub-field .opt{font-weight:400;color:var(--muted);font-size:.8rem;margin-left:8px}.unsub-field .req{color:var(--accent-deep)}.unsub-field input,.unsub-field select{width:100%;box-sizing:border-box;min-height:48px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font:inherit;font-size:1rem}.unsub-field input:focus,.unsub-field select:focus{outline:2px solid var(--accent);outline-offset:1px}.unsub-field__hint{margin:6px 0 0;font-size:.8rem;color:var(--muted)}.unsub-form__submit{display:inline-block;min-height:48px;padding:12px 22px;border:0;border-radius:999px;background:var(--accent-deep);color:#fff;font:inherit;font-weight:700;cursor:pointer}.unsub-form__submit:disabled{opacity:.6;cursor:wait}.unsub-form__legal{font-size:.8rem;color:var(--muted);margin:12px 0 0}.unsub-msg{display:none;border-radius:10px;padding:12px 14px;margin:0 0 14px;font-size:.95rem}.unsub-msg--error{background:#FDECEC;color:#8A1F1F}.unsub-msg--error.is-visible{display:block}.unsub-msg--success{background:var(--accent-tint);color:var(--ink)}.unsub-card.is-success .unsub-form,.unsub-card.is-success .unsub-card__sub{display:none}.unsub-card.is-success .unsub-msg--success{display:block}