/* Berkley Funds — brand stylesheet (charcoal/gold per brand guide) */
:root{
--charcoal:#63666A;
--charcoal-dark:#4a4c4f;
--gold:#84754E;
--gold-light:#a8925f;
--cream:#faf9f7;
--white:#ffffff;
--line:#e4e2dd;
}
*{box-sizing:border-box;}
body{
margin:0;
background:#fff;
font-family:'Poppins','Jost',-apple-system,sans-serif;
color:var(--charcoal);
}
img{ max-width:100%; }

/* ---- shared site chrome ---- */
.site-nav{
display:flex; align-items:center; justify-content:space-between;
padding:22px 48px; border-bottom:1.5px solid var(--gold);
}
.site-nav img.logo{height:34px;}
.site-nav .links{ display:flex; gap:34px; }
.site-nav .links a{
color:var(--charcoal); text-decoration:none; font-size:12.5px;
letter-spacing:.1em; text-transform:uppercase; font-weight:500;
}
.site-nav .links a.current{ color:var(--gold); }
.cta-btn{
background:var(--charcoal); color:#fff; padding:11px 24px; border-radius:2px;
font-size:12px; letter-spacing:.1em; text-transform:uppercase; text-decoration:none;
border:1px solid var(--charcoal); display:inline-block;
}
.cta-btn.gold{ background:var(--gold); border-color:var(--gold); }
.cta-btn.outline{ background:transparent; color:var(--charcoal); }

footer.site-footer{
background:var(--charcoal); color:#d8d6d1; padding:44px 48px 26px; margin-top:0;
}
footer.site-footer .foot-top{
display:flex; justify-content:space-between; flex-wrap:wrap; gap:30px; padding-bottom:28px;
border-bottom:1px solid rgba(255,255,255,.15);
}
footer.site-footer h5{
color:var(--gold-light); font-size:11px; letter-spacing:.14em; text-transform:uppercase;
margin:0 0 12px;
}
footer.site-footer p, footer.site-footer a{
color:#c9c7c2; font-size:13px; line-height:1.9; text-decoration:none;
}
footer.site-footer .legal{
padding-top:18px; font-size:11px; color:#9a9894; line-height:1.7;
}
.eyebrow{
color:var(--gold); font-size:12px; letter-spacing:.14em; text-transform:uppercase;
font-weight:600; margin-bottom:14px; display:block;
}
h1,h2,h3{ font-family:'Jost','Poppins',sans-serif; font-weight:400; letter-spacing:.02em; margin:0; color:var(--charcoal-dark); }
.section{ padding:72px 48px; }
.section.tight{ padding:56px 48px; }
.section.cream{ background:var(--cream); }
.badge-row{ display:flex; gap:14px; flex-wrap:wrap; margin-top:26px; }
.badge{
border:1px solid var(--line); border-radius:2px; padding:9px 16px;
font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--charcoal);
background:#fff;
}
.badge b{ color:var(--gold); }

/* ===== HOME ===== */
.hero{
position:relative; min-height:520px; display:flex; align-items:center;
background:linear-gradient(120deg, rgba(74,76,79,.86), rgba(74,76,79,.55)), url('dunes.jpg') center/cover;
color:#fff; padding:60px 48px;
}
.hero-inner{ max-width:640px; }
.hero h1{ font-size:44px; line-height:1.15; color:#fff; }
.hero p.sub{ font-size:16px; line-height:1.7; color:#eceae5; margin:20px 0 30px; max-width:520px; }
.hero .btn-row{ display:flex; gap:16px; flex-wrap:wrap; }
.stat-strip{
display:flex; justify-content:space-around; background:var(--gold);
padding:28px 20px; color:#fff; text-align:center; flex-wrap:wrap; gap:20px;
}
.stat-strip div span.n{ display:block; font-size:26px; font-family:'Jost'; }
.stat-strip div span.l{ font-size:11px; letter-spacing:.1em; text-transform:uppercase; opacity:.9; }
.trust-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-top:34px; }
.trust-card{ border:1px solid var(--line); padding:26px; border-radius:2px; }
.trust-card .num{ color:var(--gold); font-size:13px; letter-spacing:.1em; }
.trust-card h3{ font-size:18px; margin:12px 0 10px; }
.trust-card p{ font-size:13.5px; line-height:1.7; color:#7a7c7f; margin:0;}
.two-col{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.two-col img{ width:100%; border-radius:2px; display:block; }
.pill-cta{
background:var(--charcoal); color:#fff; padding:50px 48px; display:flex;
justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; margin:0;
}
.pill-cta h2{ color:#fff; font-size:26px; max-width:480px; }

/* ===== ABOUT / interior hero ===== */
.about-hero{ padding:64px 48px 44px; text-align:left; max-width:760px; }
.about-hero h1{ font-size:36px; }
.license-cards{ display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:30px; }
.license-card{ border:1px solid var(--line); padding:28px; border-radius:2px; background:#fff; }
.license-card h4{ margin:0 0 10px; font-size:15px; letter-spacing:.05em; }
.license-card p{ font-size:13px; line-height:1.8; color:#7a7c7f; margin:0; }
.license-card .reg{ color:var(--gold); font-size:12px; margin-top:10px; display:block; letter-spacing:.05em; }
.timeline{ display:flex; gap:0; margin-top:40px; border-top:1px solid var(--line); }
.timeline .t{ flex:1; padding:22px 20px 0; border-left:1px solid var(--line); }
.timeline .t:first-child{ border-left:none; }
.timeline .t .yr{ color:var(--gold); font-size:20px; }
.timeline .t p{ font-size:12.5px; color:#7a7c7f; line-height:1.7; }

/* ===== SERVICES ===== */
.services-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; margin-top:34px; }
.service-card{ border:1px solid var(--line); padding:30px 26px; border-radius:2px; background:#fff; transition:.2s; }
.service-card .icon{
width:44px; height:44px; border-radius:50%; border:1.5px solid var(--gold); margin-bottom:18px;
display:flex; align-items:center; justify-content:center; color:var(--gold); font-size:16px;
}
.service-card h3{ font-size:16px; margin-bottom:10px; }
.service-card p{ font-size:13px; color:#7a7c7f; line-height:1.75; margin:0 0 14px; }
.service-card a{ color:var(--gold); font-size:12px; letter-spacing:.05em; text-decoration:none; }

/* ===== JURISDICTIONS ===== */
.juris-grid{ display:grid; grid-template-columns:1fr 1fr; gap:26px; margin-top:34px; }
.juris-card{ position:relative; border-radius:2px; overflow:hidden; min-height:280px; display:flex; align-items:flex-end; }
.juris-card img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.juris-card .overlay{
position:relative; z-index:2; background:linear-gradient(180deg, rgba(74,76,79,0), rgba(50,51,53,.92));
width:100%; padding:26px; color:#fff;
}
.juris-card .overlay h3{ color:#fff; font-size:20px; margin-bottom:8px;}
.juris-card .overlay p{ font-size:12.5px; color:#e4e2dd; line-height:1.7; margin:0;}
.juris-card .overlay span.tag{ color:var(--gold-light); font-size:11px; letter-spacing:.1em; text-transform:uppercase;}

/* ===== CONTACT ===== */
.contact-wrap{ display:grid; grid-template-columns:1fr 1fr; gap:0; }
.contact-left{ padding:70px 56px; }
.contact-left .big-cta{
border:1px solid var(--line); border-radius:2px; padding:30px; margin-top:30px;
}
.contact-left .big-cta h3{ font-size:18px; margin-bottom:10px; }
.contact-left .big-cta p{ font-size:13px; color:#7a7c7f; line-height:1.7; margin-bottom:18px; }
.contact-right{ background:var(--cream); padding:70px 56px; }
.field{ margin-bottom:18px; }
.field label{ display:block; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#8a8884; margin-bottom:7px; }
.field input, .field select, .field textarea{
width:100%; border:1px solid var(--line); background:#fff; padding:11px 14px; font-size:13px;
font-family:inherit; border-radius:2px; color:var(--charcoal);
}
.field textarea{ height:80px; resize:none; }
.contact-info-strip{ display:flex; gap:36px; margin-top:34px; flex-wrap:wrap; }
.contact-info-strip div{ font-size:12.5px; color:#7a7c7f; }
.contact-info-strip div b{ display:block; color:var(--charcoal); font-size:13px; margin-bottom:4px; }

/* ===== INSIGHTS (knowledge articles) ===== */
.insight-hero{ padding:56px 48px 30px; max-width:820px; }
.insight-hero .hero-top{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-bottom:18px; }
.insight-hero .hero-top .insight-back{ margin-bottom:0; }
.insight-hero .insight-back{ display:inline-block; margin-bottom:18px; font-size:12px; letter-spacing:.05em; color:var(--gold); text-decoration:none; }
.insight-pdf-btn{ display:inline-flex; align-items:center; gap:7px; border:1px solid var(--gold); color:var(--gold); background:transparent; padding:8px 16px; border-radius:2px; font-size:11px; letter-spacing:.08em; text-transform:uppercase; text-decoration:none; transition:background .15s,color .15s; white-space:nowrap; }
.insight-pdf-btn:hover{ background:var(--gold); color:#fff; }
.insight-pdf-btn svg{ width:13px; height:13px; flex:none; }
.insight-hero .tag{ color:var(--gold); font-size:11px; letter-spacing:.12em; text-transform:uppercase; font-weight:600; }
.insight-hero h1{ font-size:32px; margin-top:14px; line-height:1.3; }
.insight-hero p.dek{ font-size:14.5px; line-height:1.8; color:#7a7c7f; margin-top:16px; }
.insight-body{ max-width:820px; margin:0 auto; padding:0 48px 60px; }
.insight-section{ margin-top:44px; padding-top:22px; border-top:1px solid var(--line); }
.insight-section .num{ color:var(--gold); font-size:11.5px; letter-spacing:.14em; font-family:'Jost'; }
.insight-section h2{ font-size:21px; margin:8px 0 16px; }
.insight-section p{ font-size:14.5px; line-height:1.85; color:#54565a; margin:0 0 16px; }
.insight-section ul{ margin:0 0 16px; padding-left:0; list-style:none; }
.insight-section ul li{ font-size:14.5px; line-height:1.8; color:#54565a; padding-left:22px; position:relative; margin-bottom:10px; }
.insight-section ul li:before{ content:"—"; position:absolute; left:0; color:var(--gold); }
.insight-table{ width:100%; border-collapse:collapse; margin:8px 0 20px; font-size:13px; }
.insight-table th{ text-align:left; font-family:'Jost'; font-weight:500; color:var(--charcoal-dark); border-bottom:2px solid var(--gold); padding:10px 12px; font-size:12px; letter-spacing:.03em; }
.insight-table td{ border-bottom:1px solid var(--line); padding:10px 12px; color:#54565a; vertical-align:top; }
.insight-table td:first-child, .insight-table th:first-child{ font-weight:500; color:var(--charcoal-dark); }
.insight-callout{ border:1px solid var(--gold); border-radius:2px; padding:22px 26px; margin-top:8px; background:var(--cream); display:inline-block; }
.insight-callout .lbl{ display:block; color:var(--gold); font-size:11px; letter-spacing:.14em; text-transform:uppercase; font-weight:600; font-family:'Jost'; }
.insight-callout .addr{ display:block; font-size:19px; margin-top:8px; color:var(--charcoal-dark); font-weight:500; }
.insight-disclaimer{ font-size:11.5px; color:#9a9894; line-height:1.7; margin-top:40px; padding-top:20px; border-top:1px solid var(--line); }

.insight-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:20px; }
.insight-card{ border:1px solid var(--line); padding:24px; border-radius:2px; background:#fff; text-decoration:none; display:block; transition:.2s; }
.insight-card:hover{ border-color:var(--gold); }
.insight-card .cat{ color:var(--gold); font-size:10.5px; letter-spacing:.1em; text-transform:uppercase; font-weight:600; }
.insight-card h3{ font-size:16px; margin:10px 0 8px; color:var(--charcoal-dark); line-height:1.35; }
.insight-card p{ font-size:12.5px; color:#7a7c7f; line-height:1.7; margin:0; }
.insight-group-title{ font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:var(--charcoal-dark); margin:44px 0 4px; font-family:'Jost'; }
.insight-group-title:first-of-type{ margin-top:8px; }

@media (max-width:820px){
.two-col, .license-cards, .services-grid, .juris-grid, .contact-wrap, .trust-grid, .insight-grid{
grid-template-columns:1fr !important;
}
.site-nav .links{ display:none; }
.section{ padding:44px 22px; }
.hero h1{ font-size:30px; }
.insight-hero, .insight-body{ padding-left:22px; padding-right:22px; }
}
.social-link{ display:inline-flex; align-items:center; gap:6px; margin-top:12px; color:var(--gold); text-decoration:none; font-size:13px; }
.social-link:hover{ color:#fff; }
.social-link svg{ flex:none; }

/* ---- AI series navigation ---- */
.series-nav{ margin-top:48px; padding-top:28px; border-top:1px solid var(--line); }
.series-nav .lbl{ display:block; color:var(--gold); font-size:11px; letter-spacing:.14em; text-transform:uppercase; font-weight:600; font-family:'Jost'; margin-bottom:14px; }
.series-nav ol{ list-style:none; padding:0; margin:0; counter-reset:part; }
.series-nav li{ counter-increment:part; padding:7px 0; font-size:14px; border-bottom:1px solid var(--line); display:flex; gap:14px; }
.series-nav li::before{ content:counter(part,decimal-leading-zero); color:var(--gold); font-family:'Jost'; font-size:12px; min-width:20px; padding-top:2px; }
.series-nav li a{ color:var(--charcoal); text-decoration:none; }
.series-nav li a:hover{ color:var(--gold); }
.series-nav li.current{ color:var(--charcoal-dark); font-weight:600; }
.series-pn{ display:flex; justify-content:space-between; gap:16px; margin-top:22px; flex-wrap:wrap; }
.series-pn a{ font-size:13px; color:var(--gold); text-decoration:none; letter-spacing:.03em; }
.series-pn a:hover{ text-decoration:underline; }