/* Royal Financial Group: Direct Lending page (dl-) v1.
   Built specifically for direct-lending.html's own markup (.dl- prefixed
   classes). Uses only RFG brand colours and fonts already defined in
   style.css: navy, ink-raised, blue, sky, text-soft, border, bg, bg-alt,
   white, charcoal, serif (Poppins) and sans (Roboto). Loaded after
   style.css and footer.css. */
 
.dl{
  --dl-navy:var(--navy);
  --dl-navy-2:var(--ink-raised);
  --dl-blue:var(--blue);
  --dl-sky:#BFE0F5;
  --dl-ink:var(--navy);
  --dl-soft:var(--text-soft);
  --dl-line:var(--border);
  --dl-bg:var(--bg);
  --dl-bg-alt:var(--bg-alt);
  --dl-glass:rgba(255,255,255,.06);
  --dl-glass-line:rgba(191,224,245,.18);
  --dl-head:var(--serif);
  --dl-body:var(--sans);
  --dl-ease:cubic-bezier(.22,.61,.36,1);
  background:var(--dl-bg);color:var(--charcoal);font-family:var(--dl-body);overflow-x:clip;
}
.dl *{box-sizing:border-box;}
.dl h1,.dl h2,.dl h3{font-family:var(--dl-head);font-weight:600;letter-spacing:-.015em;color:var(--dl-ink);margin:0;}
.dl p{margin:0;}
.dl a{color:inherit;}
.dl svg.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.dl-accent{font-style:normal;background:linear-gradient(100deg,var(--dl-blue),var(--dl-navy-2));-webkit-background-clip:text;background-clip:text;color:transparent;}
.dl-link{color:var(--dl-blue) !important;text-decoration:none;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;transition:background-size .3s;}
.dl-link:hover{background-size:0 1px;background-position:100% 100%;}
 
/* ---- Reveal on scroll -------------------------------------------------- */
.dl-js .dl-rv{opacity:0;transform:translateY(28px);transition:opacity .9s var(--dl-ease),transform .9s var(--dl-ease);transition-delay:var(--d,0s);}
.dl-js .dl-rv.is-in{opacity:1;transform:none;}
 
/* ---- Section shells ------------------------------------------------------ */
.dl-sec{position:relative;padding-block:clamp(64px,9vw,112px);}
.dl-sec--soft{background:var(--dl-bg-alt);}
.dl-head{max-width:780px;margin-bottom:clamp(36px,5vw,56px);}
.dl-head--center{margin-inline:auto;text-align:center;}
.dl-head--center .lede{margin-inline:auto;}
 
/* ---- Hero --------------------------------------------------------------- */
.dl-hero{position:relative;overflow:hidden;color:#fff;isolation:isolate;padding-block:clamp(56px,8vw,104px) clamp(72px,8vw,112px);}
.dl-hero__bg{position:absolute;inset:0;z-index:-3;}
.dl-hero__bg img{width:100%;height:100%;object-fit:cover;}
.dl-hero__veil{position:absolute;inset:0;z-index:-2;background:linear-gradient(115deg,rgba(6,34,66,.94) 0%,rgba(10,60,110,.9) 48%,rgba(10,60,110,.62) 100%);}
.dl-hero__grid-bg{position:absolute;inset:-64px;z-index:-1;background-image:linear-gradient(rgba(191,224,245,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(191,224,245,.07) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 70% 40%,#000 10%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000 10%,transparent 70%);}
.dl-hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(36px,5vw,80px);align-items:center;}
 
.dl-crumb ol{list-style:none;margin:0 0 26px;padding:6px 14px;display:inline-flex;flex-wrap:wrap;gap:8px;font-family:var(--dl-head);font-size:12px;color:rgba(255,255,255,.65);background:rgba(255,255,255,.06);border:1px solid var(--dl-glass-line);border-radius:999px;backdrop-filter:blur(8px);}
.dl-crumb li{display:inline-flex;align-items:center;}
.dl-crumb li+li::before{content:"/";margin-right:8px;color:var(--dl-sky);opacity:.6;}
.dl-crumb a{color:rgba(255,255,255,.85);text-decoration:none;}
.dl-crumb a:hover{color:var(--dl-sky);}
.dl-crumb li[aria-current="page"]{color:#fff;}
 
.dl-hero .eyebrow{color:var(--dl-sky);}
.dl-hero h1{color:#fff;font-size:clamp(32px,4.6vw,56px);line-height:1.1;margin-top:16px;letter-spacing:-.02em;max-width:18ch;}
.dl-hero__sub{font-family:var(--dl-head);font-weight:500;font-size:clamp(17px,1.8vw,20px);color:var(--dl-sky);margin-top:20px !important;line-height:1.5;}
.dl-hero__text{font-size:16px;line-height:1.75;color:rgba(255,255,255,.8);max-width:56ch;margin-top:14px !important;}
.dl-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;}
.dl-hero__pills{list-style:none;margin:36px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px;}
.dl-hero__pills li{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--dl-glass-line);border-radius:999px;background:rgba(255,255,255,.05);backdrop-filter:blur(6px);font-family:var(--dl-head);font-size:12px;color:rgba(255,255,255,.9);}
.dl-hero__pills svg.icon{width:16px;height:16px;color:var(--dl-sky);}
 
/* ---- Hero flow diagram ---------------------------------------------------- */
.dl-flow{position:relative;}
.dl-flow svg{display:block;width:100%;height:auto;max-width:520px;margin-inline:auto;}
.dl-flow__path{fill:none;stroke:rgba(191,224,245,.3);stroke-width:1.4;stroke-dasharray:4 7;}
.dl-flow__src rect{fill:rgba(255,255,255,.07);stroke:rgba(191,224,245,.3);stroke-width:1.2;}
.dl-flow__src text{fill:#fff;font-family:var(--dl-head);font-size:13px;font-weight:500;}
.dl-flow__dot{fill:var(--dl-sky);filter:drop-shadow(0 0 5px rgba(191,224,245,.85));}
.dl-flow__card{fill:rgba(255,255,255,.05);stroke:rgba(191,224,245,.22);stroke-width:1.2;}
.dl-flow__label{fill:var(--dl-sky);font-family:var(--dl-head);font-size:11px;font-weight:600;letter-spacing:.12em;}
.dl-flow__axis{stroke:rgba(255,255,255,.25);stroke-width:1;}
.dl-flow__bar{fill:var(--dl-blue);transform-box:fill-box;transform-origin:50% 100%;animation:dlBarGrow .7s var(--dl-ease) both;animation-delay:var(--bd,0s);}
.dl-flow__area{fill:url(#dlArea);}
.dl-flow__line{fill:none;stroke:#fff;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:260;stroke-dashoffset:260;animation:dlDraw 1.8s var(--dl-ease) .4s forwards;}
.dl-flow__endring{fill:none;stroke:var(--dl-sky);stroke-width:1.4;opacity:.7;animation:dlRing 2.6s ease-out 1.8s infinite;}
.dl-flow__end{fill:#fff;}
.dl-flow__hub{fill:var(--dl-navy-2);stroke:rgba(191,224,245,.4);stroke-width:1.5;}
.dl-flow__hubsub{fill:var(--dl-sky);font-family:var(--dl-head);font-size:10.5px;font-weight:600;letter-spacing:.14em;text-anchor:middle;}
.dl-flow__hubtxt{fill:#fff;font-family:var(--dl-head);font-size:13px;font-weight:600;text-anchor:middle;}
 
.dl-flow__chip{position:absolute;display:flex;align-items:center;gap:10px;padding:11px 15px;border-radius:14px;background:rgba(10,60,110,.72);border:1px solid var(--dl-glass-line);backdrop-filter:blur(12px);color:#fff;font-size:12.5px;line-height:1.35;box-shadow:0 20px 40px -18px rgba(0,0,0,.6);max-width:220px;}
.dl-flow__chip svg.icon{flex:none;width:28px;height:28px;padding:6px;border-radius:9px;background:rgba(23,131,193,.35);color:#fff;}
.dl-flow__chip b{display:block;font-family:var(--dl-head);font-weight:600;font-size:12.5px;}
.dl-flow__chip--a{left:-10px;top:-18px;}
.dl-flow__chip--b{right:-10px;bottom:-18px;}
 
/* ---- Uses marquee --------------------------------------------------------- */
.dl-uses{position:relative;background:var(--dl-navy);overflow:hidden;padding:14px 0;}
.dl-uses::before,.dl-uses::after{content:"";position:absolute;top:0;bottom:0;width:100px;z-index:1;pointer-events:none;}
.dl-uses::before{left:0;background:linear-gradient(90deg,var(--dl-navy),transparent);}
.dl-uses::after{right:0;background:linear-gradient(-90deg,var(--dl-navy),transparent);}
.dl-uses__track{display:flex;gap:40px;width:max-content;animation:dlMarquee 36s linear infinite;}
.dl-uses:hover .dl-uses__track{animation-play-state:paused;}
.dl-uses__track span{display:inline-flex;align-items:center;gap:40px;font-family:var(--dl-head);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.75);white-space:nowrap;}
.dl-uses__track span::after{content:"";width:5px;height:5px;transform:rotate(45deg);background:var(--dl-blue);}
 
/* ---- Who it is for (bento) ------------------------------------------------ */
.dl-bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.dl-who{position:relative;background:var(--white);border:1px solid var(--dl-line);border-radius:var(--radius);padding:26px 24px;transition:transform .4s var(--dl-ease),box-shadow .4s,border-color .4s;}
.dl-who--lg{grid-column:span 1;}
.dl-who:hover{transform:translateY(-5px);box-shadow:0 24px 48px -28px rgba(10,60,110,.3);border-color:rgba(23,131,193,.3);}
.dl-who__ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:var(--dl-blue);background:var(--dl-bg-alt);border:1px solid var(--dl-line);}
.dl-who h3{font-size:18px;margin-top:18px;}
.dl-who p{margin-top:8px !important;color:var(--dl-soft);font-size:14.5px;line-height:1.6;}
.dl-who__tag{display:inline-block;margin-top:14px;font-family:var(--dl-head);font-size:11px;letter-spacing:.08em;color:var(--dl-blue);text-transform:uppercase;}
 
/* ---- Understanding direct lending ----------------------------------------- */
.dl-under{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(36px,5vw,72px);align-items:start;}
.dl-under__aside{position:sticky;top:110px;}
.dl-under__media{margin-top:28px;border-radius:var(--radius);overflow:hidden;background:var(--white);border:1px solid var(--dl-line);}
.dl-under__media img{width:100%;height:auto;display:block;}
.dl-under__media figcaption{display:flex;gap:12px;align-items:flex-start;padding:18px 20px;font-size:14px;line-height:1.6;color:var(--dl-soft);}
.dl-under__media figcaption svg.icon{flex:none;width:20px;height:20px;color:var(--dl-blue);margin-top:2px;}
.dl-under__media figcaption b{color:var(--dl-ink);}
 
.dl-steps{display:grid;gap:16px;}
.dl-step{background:var(--white);border:1px solid var(--dl-line);border-radius:var(--radius);padding:24px 26px;}
.dl-step h3{font-size:18px;}
.dl-step ul{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px;}
.dl-step ul li{position:relative;padding-left:20px;font-size:14.5px;line-height:1.6;color:var(--dl-soft);}
.dl-step ul li::before{content:"";position:absolute;left:0;top:8px;width:7px;height:7px;border-radius:2px;background:var(--dl-blue);}
.dl-step p{margin-top:12px !important;font-size:14.5px;line-height:1.7;color:var(--dl-soft);}
.dl-step p .dl-link{color:var(--dl-blue) !important;}
 
.dl-compare{margin-top:clamp(44px,5vw,72px);background:var(--white);border:1px solid var(--dl-line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-md);}
.dl-compare__head{padding:22px 26px;background:linear-gradient(100deg,var(--dl-navy),var(--dl-navy-2));}
.dl-compare__head h3{font-size:19px;color:#fff;}
.dl-compare__head p{margin-top:6px !important;font-size:13px;color:var(--dl-sky);}
.dl-table{width:100%;border-collapse:collapse;font-size:14.5px;}
.dl-table th,.dl-table td{text-align:left;padding:16px 26px;border-bottom:1px solid var(--dl-line);vertical-align:top;}
.dl-table thead th{font-family:var(--dl-head);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--dl-blue);font-weight:600;background:var(--dl-bg-alt);}
.dl-table tbody th{font-family:var(--dl-head);font-weight:600;font-size:14.5px;color:var(--dl-ink);width:20%;}
.dl-table tbody tr:last-child th,.dl-table tbody tr:last-child td{border-bottom:0;}
.dl-table tbody tr:hover{background:var(--dl-bg-alt);}
 
/* ---- Why borrowers come to RFG (values) ----------------------------------- */
.dl-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.dl-val{position:relative;background:var(--white);border:1px solid var(--dl-line);border-radius:var(--radius);padding:26px 24px 28px;overflow:hidden;transition:transform .4s var(--dl-ease),box-shadow .4s,border-color .4s;}
.dl-val:hover{transform:translateY(-5px);box-shadow:0 24px 48px -28px rgba(10,60,110,.3);border-color:rgba(23,131,193,.3);}
.dl-val__top{display:flex;justify-content:space-between;align-items:center;}
.dl-val__ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:var(--dl-blue);background:var(--dl-bg-alt);border:1px solid var(--dl-line);}
.dl-val__n{font-family:var(--dl-head);font-size:34px;font-weight:600;color:transparent;-webkit-text-stroke:1.1px var(--dl-blue);line-height:1;}
.dl-val h3{font-size:18px;margin-top:18px;}
.dl-val p{margin-top:8px !important;color:var(--dl-soft);font-size:14.5px;line-height:1.6;}
.dl-val__bar{display:block;position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--dl-blue),var(--dl-sky));transform:scaleX(0);transform-origin:0 50%;transition:transform .5s var(--dl-ease);}
.dl-val:hover .dl-val__bar{transform:scaleX(1);}
 
/* ---- Our approach (journey, zig-zag stages) -------------------------------- */
.dl-journey{position:relative;max-width:880px;margin-inline:auto;padding-left:64px;}
.dl-journey__track{position:absolute;left:27px;top:6px;bottom:6px;width:2px;background:var(--dl-line);}
.dl-journey__fill{position:absolute;top:0;left:0;width:100%;height:0;background:linear-gradient(180deg,var(--dl-blue),var(--dl-navy-2));transition:height 1.4s var(--dl-ease);}
.dl-journey.is-in .dl-journey__fill,html:not(.dl-js) .dl-journey__fill{height:100%;}
.dl-stage{position:relative;padding-bottom:34px;}
.dl-stage:last-child{padding-bottom:0;}
.dl-stage__node{position:absolute;left:-64px;top:0;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--dl-blue),var(--dl-navy));display:grid;place-items:center;font-family:var(--dl-head);font-size:17px;font-weight:600;color:#fff;box-shadow:0 0 0 6px var(--dl-bg,var(--white)),0 10px 22px -10px rgba(23,131,193,.8);}
.dl-sec--soft .dl-stage__node{box-shadow:0 0 0 6px var(--dl-bg-alt),0 10px 22px -10px rgba(23,131,193,.8);}
.dl-stage__card{background:var(--white);border:1px solid var(--dl-line);border-radius:var(--radius);padding:24px 26px;transition:transform .4s var(--dl-ease),box-shadow .4s,border-color .4s;}
.dl-stage__card:hover{transform:translateX(4px);box-shadow:0 22px 44px -28px rgba(10,60,110,.3);border-color:rgba(23,131,193,.3);}
.dl-stage__k{font-family:var(--dl-head);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--dl-blue);font-weight:600;}
.dl-stage__card h3{font-size:19px;margin-top:8px;}
.dl-stage__card p{margin-top:10px !important;font-size:14.5px;line-height:1.65;color:var(--dl-soft);}
.dl-stage__out{display:flex;align-items:flex-start;gap:10px;margin-top:16px !important;font-size:13px;color:var(--dl-ink) !important;padding:12px 14px;border-radius:10px;background:var(--dl-bg-alt);}
.dl-stage__out svg.icon{flex:none;width:18px;height:18px;color:var(--dl-blue);margin-top:1px;}
.dl-stage__out b{color:var(--dl-blue);font-weight:600;}
.dl-journey__more{margin-top:40px;text-align:center;}
 
/* ---- Why Royal Financial Group (dark section) ------------------------------ */
.dl-dark{position:relative;overflow:hidden;background:linear-gradient(160deg,var(--dl-navy) 0%,var(--dl-navy) 60%,var(--dl-navy-2) 100%);color:#fff;isolation:isolate;}
.dl-dark::before{content:"";position:absolute;inset:0;z-index:0;background-image:linear-gradient(rgba(191,224,245,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(191,224,245,.06) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 20% 0%,#000,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 20% 0%,#000,transparent 70%);}
.dl-dark::after{content:"";position:absolute;z-index:0;width:560px;height:560px;right:-180px;bottom:-240px;border-radius:50%;background:radial-gradient(circle,rgba(23,131,193,.45),transparent 65%);filter:blur(40px);}
.dl-dark > .wrap{position:relative;z-index:1;}
.dl-dark h2,.dl-dark h3{color:#fff;}
.dl-dark .eyebrow{color:var(--dl-sky);}
.dl-dark .lede{color:rgba(255,255,255,.75);}
.dl-dark .dl-link{color:var(--dl-sky) !important;}
 
.dl-diff{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.dl-diff__item{position:relative;padding:26px 24px;border-radius:var(--radius);background:var(--dl-glass);border:1px solid var(--dl-glass-line);backdrop-filter:blur(10px);transition:transform .4s var(--dl-ease),background .4s,border-color .4s;}
.dl-diff__item:hover{transform:translateY(-5px);background:rgba(255,255,255,.09);border-color:rgba(191,224,245,.4);}
.dl-diff__item svg.icon{width:40px;height:40px;padding:9px;border-radius:12px;color:#fff;background:linear-gradient(135deg,var(--dl-blue),var(--dl-navy-2));box-shadow:0 10px 20px -10px rgba(23,131,193,.9);}
.dl-diff__item h3{font-size:18px;margin-top:18px;}
.dl-diff__item p{margin-top:8px !important;color:rgba(255,255,255,.72);font-size:14.5px;line-height:1.6;}
 
.dl-role{margin-top:44px;display:flex;gap:16px;padding:22px 26px;border-radius:var(--radius);border:1px solid rgba(191,224,245,.3);background:rgba(23,131,193,.14);backdrop-filter:blur(8px);}
.dl-role__ic{flex:none;width:36px;height:36px;display:grid;place-items:center;}
.dl-role__ic svg.icon{width:22px;height:22px;color:var(--dl-sky);}
.dl-role p{font-size:14px;line-height:1.7;color:rgba(255,255,255,.85);}
.dl-role b{color:#fff;}
 
/* ---- Related -------------------------------------------------------------- */
.dl-related{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.dl-rel{position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--dl-line);border-radius:var(--radius);padding:26px 22px 22px;text-decoration:none;overflow:hidden;isolation:isolate;transition:transform .4s var(--dl-ease),box-shadow .4s,border-color .4s;}
.dl-rel::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(160deg,var(--dl-navy),var(--dl-navy-2));transform:translateY(101%);transition:transform .5s var(--dl-ease);}
.dl-rel:hover{transform:translateY(-5px);box-shadow:0 26px 54px -28px rgba(10,60,110,.45);border-color:transparent;}
.dl-rel:hover::before{transform:translateY(0);}
.dl-rel__k{font-family:var(--dl-head);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--dl-blue);font-weight:600;transition:color .4s;}
.dl-rel h3{font-size:17.5px;line-height:1.35;margin-top:12px;transition:color .4s;}
.dl-rel p{margin-top:8px !important;font-size:13.5px;color:var(--dl-soft);line-height:1.6;flex:1;transition:color .4s;}
.dl-rel__go{margin-top:18px;display:inline-flex;align-items:center;gap:8px;font-family:var(--dl-head);font-size:12.5px;font-weight:600;color:var(--dl-ink);transition:color .4s,gap .3s;}
.dl-rel__go svg.icon{width:16px;height:16px;}
.dl-rel:hover .dl-rel__k{color:var(--dl-sky);}
.dl-rel:hover h3,.dl-rel:hover .dl-rel__go{color:#fff;}
.dl-rel:hover p{color:rgba(255,255,255,.75);}
.dl-rel:hover .dl-rel__go{gap:12px;}
 
/* ---- FAQ -------------------------------------------------------------------- */
.dl-faq{max-width:880px;margin-inline:auto;display:grid;gap:12px;}
.dl-faq__item{background:var(--white);border:1px solid var(--dl-line);border-radius:var(--radius-sm);overflow:hidden;transition:border-color .3s,box-shadow .3s;}
.dl-faq__item:has(.dl-faq__btn[aria-expanded="true"]){border-color:rgba(23,131,193,.4);box-shadow:0 18px 38px -28px rgba(10,60,110,.4);}
.dl-faq__q{margin:0;}
.dl-faq__btn{all:unset;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:20px 22px;font-family:var(--dl-head);font-weight:500;font-size:clamp(15.5px,1.6vw,17.5px);color:var(--dl-ink);}
.dl-faq__ic{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:var(--dl-blue);background:var(--dl-bg-alt);transition:transform .4s var(--dl-ease),background .3s,color .3s;}
.dl-faq__ic svg.icon{width:16px;height:16px;}
.dl-faq__btn[aria-expanded="true"] .dl-faq__ic{transform:rotate(135deg);background:var(--dl-blue);color:#fff;}
.dl-faq__a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s var(--dl-ease);}
.dl-faq__a > p{min-height:0;overflow:hidden;padding:0 56px 0 22px;color:var(--dl-soft);line-height:1.75;font-size:15px;}
.dl-faq__item:has(.dl-faq__btn[aria-expanded="true"]) .dl-faq__a{grid-template-rows:1fr;}
.dl-faq__item:has(.dl-faq__btn[aria-expanded="true"]) .dl-faq__a > p{padding-bottom:22px;}
 
/* ---- Final CTA ---------------------------------------------------------------- */
.dl-cta{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--dl-navy),var(--dl-navy-2));padding-block:clamp(64px,8vw,104px);isolation:isolate;color:#fff;}
.dl-cta__bg{position:absolute;inset:0;z-index:-2;opacity:.14;mix-blend-mode:luminosity;}
.dl-cta__bg img{width:100%;height:100%;object-fit:cover;}
.dl-cta__lines{position:absolute;inset:0;z-index:-1;width:100%;height:100%;opacity:.5;}
.dl-cta__lines path{fill:none;stroke:rgba(191,224,245,.25);stroke-width:1.2;}
.dl-cta > .wrap{position:relative;text-align:center;max-width:780px;}
.dl-cta .eyebrow{color:var(--dl-sky);justify-content:center;}
.dl-cta h2{color:#fff;font-size:clamp(28px,3.8vw,44px);margin-top:16px;line-height:1.15;}
.dl-cta > .wrap > p{color:rgba(255,255,255,.78);font-size:16px;line-height:1.75;margin:16px auto 0 !important;max-width:58ch;}
.dl-cta__row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:30px;}
.dl-cta__note{display:block;margin-top:22px !important;font-size:12.5px;color:rgba(255,255,255,.65) !important;}
 
/* ---- Keyframes ------------------------------------------------------------------ */
@keyframes dlBarGrow{from{transform:scaleY(0);}to{transform:scaleY(1);}}
@keyframes dlDraw{to{stroke-dashoffset:0;}}
@keyframes dlRing{0%{transform:scale(.9);opacity:.8;}100%{transform:scale(1.6);opacity:0;}}
@keyframes dlMarquee{to{transform:translateX(-50%);}}
 
@media (prefers-reduced-motion:reduce){
  .dl *,.dl *::before,.dl *::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}
  .dl-js .dl-rv{opacity:1;transform:none;}
  .dl-uses__track{animation:none;}
  .dl-journey__fill{height:100% !important;}
}
 
/* ---- Responsive ------------------------------------------------------------------ */
@media (max-width:1100px){
  .dl-bento{grid-template-columns:repeat(2,minmax(0,1fr));}
  .dl-values{grid-template-columns:repeat(2,minmax(0,1fr));}
  .dl-diff{grid-template-columns:repeat(2,minmax(0,1fr));}
  .dl-related{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:960px){
  .dl-hero__inner{grid-template-columns:1fr;}
  .dl-flow{margin-top:36px;max-width:460px;margin-inline:auto;}
  .dl-flow__chip{display:none;}
  .dl-under{grid-template-columns:1fr;}
  .dl-under__aside{position:static;}
}
@media (max-width:700px){
  .dl-bento,.dl-values,.dl-diff,.dl-related{grid-template-columns:1fr;}
  .dl-table,.dl-table thead,.dl-table tbody,.dl-table tr,.dl-table th,.dl-table td{display:block;width:100% !important;}
  .dl-table thead{display:none;}
  .dl-table tbody tr{padding:14px 20px;border-bottom:1px solid var(--dl-line);}
  .dl-table tbody th,.dl-table td{padding:4px 0;border:0;}
  .dl-table td::before{content:attr(data-h) ": ";font-family:var(--dl-head);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--dl-blue);}
  .dl-journey{padding-left:56px;}
  .dl-stage__node{left:-56px;width:48px;height:48px;font-size:15px;}
}
@media (max-width:520px){
  .dl-hero__cta .btn{width:100%;justify-content:center;}
  .dl-cta__row .btn{width:100%;justify-content:center;}
}
 
/* ---------- Optimization additions (paste at the very end of assets/direct-lending.css) ---------- */
 
/* Footer headings are <h3> now (same look as the old <h4>) */
.foot h3{font-family:var(--mono);font-weight:500;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--navy);margin-bottom:16px}
 
/* Skip link for keyboard users */
.skip-link{position:absolute;left:-9999px;top:0;z-index:10000;background:#0A1A2F;color:#fff;padding:10px 16px;border-radius:0 0 8px 8px;font:600 14px/1.2 system-ui,sans-serif;text-decoration:none}
.skip-link:focus{left:12px}
 
/* Screen-reader-only text (replaces an inline style) */
.dl .dl-sr{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
 
/* Light link on the dark "Why Royal Financial Group" section (replaces an inline style) */
.dl .dl-link.dl-link--light{color:#fff}
 
/* "Also explore" links line under the related cards */
.dl .dl-more{margin-top:28px;font-size:15px;line-height:1.7}
.dl .dl-more a{color:#1783C1;font-weight:500;text-decoration:underline;text-underline-offset:3px}
.dl .dl-more a:hover{text-decoration-thickness:2px}
 
/* Visible keyboard focus */
.dl a:focus-visible,.dl button:focus-visible{outline:3px solid #1783C1;outline-offset:3px;border-radius:6px}
 
 