:root{--navy:#0c2340;--blue:#236192;--red:#a71930;--gold:#d3bc8d;--green:#0e5b56;--ink:#101820;--muted:#56616e;--line:#d9e1e8;--paper:#fff;--mist:#f3f6f8;--radius:18px;--shadow:0 18px 45px rgba(12,35,64,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.shell{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{background:var(--navy);color:#fff;font-size:.85rem}.topbar .shell{display:flex;justify-content:flex-end;gap:24px;padding:7px 0}.topbar a{opacity:.9}.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.nav-inner{height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{display:flex;align-items:center}.wordmark b{font:800 1.35rem Georgia;letter-spacing:.1em;color:var(--navy)}.wordmark small{display:block;font-size:.62rem;letter-spacing:.15em;color:var(--muted)}.links{display:flex;align-items:center;gap:24px;font-weight:700;font-size:.92rem}.links a:hover,.links a.active{color:var(--red)}.menu{display:none;border:0;background:var(--navy);color:#fff;border-radius:10px;padding:9px 13px}
.brand-tabs{border-top:1px solid var(--line);background:#fff;overflow-x:auto;scrollbar-width:none}.brand-tabs::-webkit-scrollbar{display:none}.brand-tab-track{width:max-content;min-width:100%;display:flex;justify-content:center;align-items:stretch;padding:0 14px}.brand-tabs a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:7px 15px;border-right:1px solid #e8edf1;color:var(--navy);font-size:.76rem;font-weight:800;line-height:1.15;text-align:center;white-space:nowrap}.brand-tabs a:first-child{border-left:1px solid #e8edf1}.brand-tabs a:hover,.brand-tabs a.active{background:var(--navy);color:#fff}
.menu-brands-label,.menu-brand-link{display:none}
.hero{background:linear-gradient(120deg,#eef3f7 0%,#fff 58%);overflow:hidden}.hero-grid{min-height:620px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px;padding:70px 0}.eyebrow{display:inline-flex;align-items:center;color:var(--blue);font-weight:800;letter-spacing:.13em;text-transform:uppercase;font-size:.78rem}.eyebrow:before{content:none}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.1;color:var(--navy);margin:0}h1{font-size:clamp(3rem,6.6vw,6rem);letter-spacing:-.045em}.hero h1 span{display:block;color:var(--red)}.lead{font-size:clamp(1.08rem,2vw,1.32rem);color:var(--muted);max-width:660px;margin:24px 0 30px}.actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;font-weight:800;border:2px solid var(--navy);background:var(--navy);color:#fff}.btn.alt{background:transparent;color:var(--navy)}.hero-art{position:relative}.hero-art:before{content:"";position:absolute;inset:-24px 30px 30px -24px;border:2px solid var(--red);border-radius:24px}.hero-art img{position:relative;width:100%;border-radius:18px;box-shadow:var(--shadow)}
.section{padding:88px 0}.section.mist{background:var(--mist)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:34px}.section h2{font-size:clamp(2.25rem,4vw,3.7rem);letter-spacing:-.035em}.section-head p{max-width:540px;color:var(--muted);margin:0}.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:0 9px 30px rgba(12,35,64,.06);transition:.2s ease}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-logo{display:block;width:100%;aspect-ratio:2.38;background-color:#fff;background-image:url('/assets/123944A3-A0BC-4DCF-BCF1-553DE353E33A.jpeg');background-repeat:no-repeat;background-size:214.5% auto;background-position:var(--logo-x) var(--logo-y);border-radius:0}.card h3{font-size:1.42rem;margin:18px 0 8px}.card p{color:var(--muted);margin:0 0 18px}.card .more{font-weight:800;color:var(--blue)}.band{background:var(--navy);color:#fff}.band .shell{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.band h2{color:#fff}.band p{color:#cdd8e2}.pill-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pill{border:1px solid rgba(255,255,255,.25);padding:13px 15px;border-radius:12px;font-weight:700}
.contact-card{display:grid;grid-template-columns:1.15fr .85fr;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.contact-copy{padding:52px}.contact-copy p{color:var(--muted)}.contact-details{background:var(--navy);color:#fff;padding:52px;display:grid;gap:20px}.contact-details small{color:#aebdcc;display:block}.contact-details a{font-size:1.1rem;font-weight:800}.legal{font-size:.78rem;color:#6f7984;margin-top:26px}
.brand-hero{background:var(--navy);color:#fff}.brand-hero .shell{min-height:440px;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;padding:60px 0}.brand-hero h1{color:#fff;font-size:clamp(2.8rem,6vw,5.4rem)}.brand-hero .lead{color:#d8e1e8}.brand-hero img{max-height:380px;width:100%;object-fit:cover;object-position:top;border-radius:0;box-shadow:0 22px 54px rgba(0,0,0,.3)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature{border-top:4px solid var(--red);background:#fff;padding:24px;border-radius:0 0 15px 15px;box-shadow:0 10px 30px rgba(12,35,64,.07)}.feature h3{font-size:1.28rem}.feature p{color:var(--muted);margin-bottom:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.split img{border-radius:18px;box-shadow:var(--shadow);max-height:620px;margin:auto}.checklist{list-style:none;padding:0;display:grid;gap:12px}.checklist li{padding:13px 16px 13px 48px;border:1px solid var(--line);border-radius:12px;position:relative}.checklist li:before{content:"✓";position:absolute;left:16px;color:var(--red);font-weight:900}.back{color:#d8e1e8;font-weight:700;display:inline-block;margin-bottom:20px}
footer{background:#071728;color:#c8d2dc;padding:38px 0}footer .shell{display:flex;justify-content:space-between;gap:24px;align-items:center}footer b{color:#fff}footer nav{display:flex;gap:20px;font-size:.9rem}
.hero .eyebrow{display:none}
.eyebrow{color:var(--red)}
.brand-hero .eyebrow,.band .eyebrow{color:#ffd166}
.brand-hero .back{display:block;width:max-content;margin-bottom:18px}
.brand-hero .eyebrow{display:flex;margin-bottom:12px}
#services .eyebrow{color:var(--red)}
#services~#contact .eyebrow{color:var(--red)}
.hero-art img{background:#fefefe;border:3px solid #fefefe;box-shadow:none}
.video-frame{width:100%;aspect-ratio:16/9;margin:22px 0;border-radius:14px;overflow:hidden;background:#071728}.video-frame iframe,.video-frame video{display:block;width:100%;height:100%;border:0}.video-frame video{object-fit:contain;background:#071728}.video-logo{margin:22px 0 16px;padding:clamp(.8rem,2.5vw,1.5rem);border-radius:14px;background:#fff}.video-logo img{display:block;width:100%;height:auto}.video-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px}
.presentation-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);gap:1.5rem;align-items:stretch;margin-bottom:1.5rem}.presentation-card{margin:0!important}.presentation-image{display:block;width:100%;height:100%;min-height:340px;object-fit:cover;background:#fff;border:0;outline:0;box-shadow:none}
.standalone-graphic{display:block;width:min(100%,760px);height:auto;margin:0 auto;border-radius:18px;box-shadow:var(--shadow)}
.btn.alt.light{color:#fff;border-color:rgba(255,255,255,.65)}
.partner-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.partner-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;text-align:center;box-shadow:0 9px 30px rgba(12,35,64,.06)}.partner-card img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:12px;margin-bottom:18px;background:#fff}.partner-card h3{font-size:1.25rem;margin:0 0 7px}.partner-card p{color:var(--muted);margin:0 0 10px;line-height:1.4}.partner-card a{color:var(--blue);font-weight:800}.recruiting-card{margin:22px 0}.recruiting-card+.recruiting-card{margin-top:0}
@media(max-width:900px){.partner-grid{grid-template-columns:1fr 1fr}.links{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:22px 20px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.links.open{display:flex}.menu{display:block}.hero-grid,.brand-hero .shell,.split,.band .shell,.contact-card{grid-template-columns:1fr}.hero-grid{padding:55px 0}.hero-art{max-width:620px}.brand-grid{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1fr 1fr}.section{padding:64px 0}.brand-hero .shell{padding:55px 0}.brand-hero img{max-height:none}}
@media(max-width:900px){.presentation-split{grid-template-columns:1fr}.presentation-image{height:auto;min-height:0;object-fit:contain}}
@media(max-width:900px){.brand-tab-track{justify-content:flex-start}.brand-tabs a{min-height:42px;padding:7px 14px}.links{z-index:2;max-height:calc(100vh - 120px);overflow-y:auto}.menu-brands-label{display:block;width:100%;margin-top:4px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}.menu-brand-link{display:block;width:100%;padding:5px 0}}
@media(max-width:600px){.partner-grid{grid-template-columns:1fr}.shell{width:min(100% - 28px,1160px)}.topbar .shell{justify-content:center;gap:13px}.topbar a:first-child{display:none}.nav-inner{height:70px}.links{top:70px}.wordmark b{font-size:1rem}.wordmark small{font-size:.52rem}.hero-grid{min-height:auto;gap:42px}.hero h1{font-size:3.35rem}.hero-art:before{inset:-12px 18px 18px -12px}.section-head{display:block}.section-head p{margin-top:15px}.brand-grid,.feature-grid,.pill-list{grid-template-columns:1fr}.section{padding:52px 0}.contact-copy,.contact-details{padding:32px 24px}footer .shell{display:block}footer nav{margin-top:18px;flex-wrap:wrap}}
@media(max-width:600px){.hero-art{max-width:calc(100% - 20px);margin:10px auto 0}.hero-art:before{inset:-10px}}

/* Laptop and desktop presentation */
@media(min-width:901px){
  .shell{width:min(1080px,calc(100% - 64px))}
  .nav-inner{height:72px}
  .links{gap:20px}
  .hero-grid{min-height:0;grid-template-columns:minmax(0,.88fr) minmax(480px,1.12fr);gap:68px;padding:64px 0 72px}
  .hero h1{font-size:clamp(3.5rem,5vw,4.75rem);max-width:640px}
  .hero .lead{font-size:1.12rem;line-height:1.65;margin:22px 0 28px}
  .hero-art{width:100%;max-width:610px;justify-self:end}
  .hero-art:before{inset:-16px;border-radius:22px}
  .hero-art img{width:100%;height:auto;border-radius:16px}
  .section{padding:72px 0}
  .section-head{align-items:start;margin-bottom:30px}
  .section h2{font-size:clamp(2.25rem,3.2vw,3.15rem)}
  .brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .card{padding:26px 28px}
  .card h3{margin-top:14px}
  .brand-hero .shell{min-height:0;grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);gap:64px;padding:56px 0}
  .brand-hero h1{font-size:clamp(3.3rem,5vw,4.8rem)}
  .brand-hero .lead{font-size:1.18rem;line-height:1.55}
  .brand-hero img{width:auto;max-width:100%;height:auto;max-height:540px;object-fit:contain;object-position:center;justify-self:end;border-radius:0}
  .feature-grid{gap:20px}
  .feature{padding:26px}
  .split{grid-template-columns:minmax(0,1fr) minmax(360px,.8fr);gap:64px;align-items:center}
  .split img{width:auto;max-width:100%;height:auto;max-height:560px;object-fit:contain;justify-self:center}
  .band .shell{gap:64px}
  .contact-copy,.contact-details{padding:46px}
  .partner-grid{gap:20px}
}

@media(min-width:901px) and (max-width:1100px){
  .shell{width:min(100% - 48px,1000px)}
  .hero-grid{grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:44px}
  .hero h1{font-size:3.65rem}
  .brand-hero .shell{grid-template-columns:minmax(310px,.78fr) minmax(0,1.22fr);gap:42px}
  .brand-hero h1{font-size:3.6rem}
  .brand-hero img{max-height:500px}
  .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Crop into the clean white interior of each source panel. */
.service-logo{background-color:#fff;background-image:url('/assets/imagine-financial-collage-img7463.png');background-size:224% auto;box-shadow:none}

/* Keep every photograph, logo graphic, and media frame square across the site. */
img,
.hero-art:before,
.video-frame,
.video-logo{
  border-radius:0!important;
}

/* Remove the decorative red frame and let the collage occupy its footprint. */
.hero-art:before{
  display:none!important;
}

@media(min-width:901px){
  .hero-art{
    width:calc(100% + 32px);
    max-width:642px;
  }
}

@media(max-width:600px){
  .hero-art{
    width:100%;
    max-width:100%;
    margin:0 auto;
  }
}

/* Email chooser: keeps contact actions usable in browsers that block mailto links. */
.email-panel{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(5,24,47,.72)}
.email-panel.open{display:flex}
.email-panel-card{position:relative;width:min(100%,560px);max-height:calc(100vh - 40px);overflow:auto;padding:38px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.email-panel-card h2{font-size:clamp(1.8rem,5vw,2.6rem);margin-top:8px}
.email-panel-close{position:absolute;top:10px;right:14px;border:0;background:transparent;color:var(--navy);font-size:2rem;line-height:1;cursor:pointer}
.email-address{font-weight:800;color:var(--navy);overflow-wrap:anywhere}
.email-panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.email-panel-actions .btn{width:100%;cursor:pointer;text-align:center}
.email-copy-status{min-height:1.5em;margin:16px 0 0;color:var(--blue);font-weight:800}
@media(max-width:600px){.email-panel-card{padding:34px 22px 26px}.email-panel-actions{grid-template-columns:1fr}}
