.marketing-hero {
    position: relative;
    overflow: hidden;
    padding: 7.5rem 0 6rem;
    color: #fff;
    background: linear-gradient(135deg, #081c2e 0%, #10354e 62%, #0b273c 100%);
}
.marketing-hero::after {
    position: absolute; inset: 0; content: ""; pointer-events: none;
    background: radial-gradient(circle at 85% 25%, rgba(32,171,191,.28), transparent 28rem);
}
.marketing-hero .container { position: relative; z-index: 1; }
.marketing-hero-grid { display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 5rem; }
.marketing-eyebrow { display: inline-block; margin-bottom: 1rem; color: #e66326; font-size: .76rem; font-weight: 850; letter-spacing: .15em; text-transform: uppercase; }
.marketing-hero h1 { max-width: 800px; margin-bottom: 1.35rem; color: #fff; font-size: clamp(3rem, 5.2vw, 5.2rem); line-height: 1; letter-spacing: -.05em; font-weight: 780; }
.marketing-hero h1:focus { outline: none; }
.marketing-hero p { max-width: 690px; margin-bottom: 2rem; color: rgba(255,255,255,.76); font-size: 1.16rem; line-height: 1.75; }
.marketing-actions { display: flex; flex-wrap: wrap; gap: .8rem; }
.marketing-actions .btn, .marketing-cta .btn { border-radius: 999px; }
.marketing-hero-media { position: relative; min-height: 420px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); border-radius: 28px; box-shadow: 0 30px 70px rgba(0,0,0,.3); }
.marketing-hero-media img { width: 100%; height: 100%; min-height: 420px; object-fit: cover; }
.marketing-hero-media::after { position: absolute; inset: 0; content: ""; background: linear-gradient(to top, rgba(4,22,34,.48), transparent 60%); }
.marketing-hero-card { position: absolute; z-index: 2; right: 1.5rem; bottom: 1.5rem; left: 1.5rem; padding: 1.25rem; border: 1px solid rgba(255,255,255,.2); border-radius: 16px; background: rgba(9,32,48,.82); backdrop-filter: blur(14px); }
.marketing-hero-card strong, .marketing-hero-card span { display: block; }
.marketing-hero-card strong { color: #fff; font-size: 1.05rem; }
.marketing-hero-card span { color: rgba(255,255,255,.65); font-size: .85rem; }
.marketing-section { padding: 6.5rem 0; }
.marketing-section.alt { background: #f4f7f9; }
.marketing-heading { max-width: 770px; margin: 0 auto 3.5rem; text-align: center; }
.marketing-heading.left { margin-right: 0; margin-left: 0; text-align: left; }
.marketing-heading h2 { margin-bottom: 1rem; color: #112f44; font-size: clamp(2.2rem, 4vw, 3.6rem); font-weight: 760; letter-spacing: -.045em; }
.marketing-heading p { color: #637887; font-size: 1.06rem; line-height: 1.8; }
.service-grid, .benefit-grid, .product-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.4rem; }
.service-card, .benefit-card, .product-card { padding: 2rem; border: 1px solid #e2e9ee; border-radius: 22px; background: #fff; box-shadow: 0 16px 45px rgba(15,45,66,.055); transition: transform .22s ease, box-shadow .22s ease; }
.service-card:hover, .product-card:hover { transform: translateY(-5px); box-shadow: 0 22px 55px rgba(15,45,66,.11); }
.service-number { display: grid; width: 44px; height: 44px; margin-bottom: 1.25rem; color: #fff; border-radius: 13px; background: linear-gradient(135deg,#178eb7,#255b9c); place-items: center; font-size: .8rem; font-weight: 900; }
.service-card h2, .service-card h3, .benefit-card h3, .product-card h2, .product-card h3 { color: #15354b; font-weight: 750; }
.service-card h2, .service-card h3 { font-size: 1.35rem; }
.service-card p, .benefit-card p, .product-card p { color: #667b8a; line-height: 1.72; }
.service-card a, .product-card a { color: #11749b; font-weight: 800; }
.two-column { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 5rem; }
.content-copy h2 { color: #123147; font-size: clamp(2.2rem, 4vw, 3.45rem); font-weight: 760; letter-spacing: -.045em; }
.content-copy p { color: #617685; font-size: 1.04rem; line-height: 1.82; }
.check-list { margin: 1.7rem 0 0; padding: 0; list-style: none; }
.check-list li { position: relative; margin-bottom: .85rem; padding-left: 1.7rem; color: #29475a; }
.check-list li::before { position: absolute; left: 0; color: #15916b; content: "✓"; font-weight: 900; }
.image-frame { overflow: hidden; border-radius: 26px; box-shadow: 0 26px 65px rgba(15,45,66,.16); }
.image-frame img { display: block; width: 100%; min-height: 430px; object-fit: cover; }
.process-list { display: grid; grid-template-columns: repeat(4,1fr); gap: 1rem; counter-reset: process; }
.process-list article { padding: 1.7rem; border-top: 3px solid #e66326; background: #fff; box-shadow: 0 12px 35px rgba(15,45,66,.07); }
.process-list article::before { counter-increment: process; content: "0" counter(process); display: block; margin-bottom: 1.3rem; color: #e66326; font-size: .75rem; font-weight: 900; }
.process-list h3 { color: #17374d; font-size: 1.15rem; }
.process-list p { margin: 0; color: #6a7e8c; line-height: 1.65; }
.marketing-cta { padding: 4.5rem 0; color: #fff; background: linear-gradient(120deg,#e66326,#c54b20); }
.marketing-cta .container { display: flex; align-items: center; justify-content: space-between; gap: 3rem; }
.marketing-cta .marketing-eyebrow { margin-bottom: .4rem; color: rgba(255,255,255,.7); }
.marketing-cta h2 { margin-bottom: .5rem; color: #fff; font-size: clamp(2rem,4vw,3.2rem); font-weight: 760; }
.marketing-cta p { max-width: 680px; margin: 0; color: rgba(255,255,255,.76); }
.marketing-cta .btn { flex: 0 0 auto; color: #b54319; }
.portfolio-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1.2rem; }
.portfolio-grid figure { margin: 0; overflow: hidden; border-radius: 18px; background: #fff; box-shadow: 0 15px 40px rgba(15,45,66,.09); }
.portfolio-grid img { width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform .3s ease; }
.portfolio-grid figure:hover img { transform: scale(1.035); }
.portfolio-grid figcaption { padding: 1rem 1.2rem; color: #324f61; font-weight: 750; }
.product-card { display: flex; flex-direction: column; }
.product-card img { width: 100%; height: 210px; margin-bottom: 1.5rem; object-fit: cover; border-radius: 15px; }
.product-card .product-logo { width: 70px; height: 70px; object-fit: contain; }
.product-card a { margin-top: auto; }
.report-gallery { display: grid; grid-template-columns: 1.1fr .9fr; gap: 1rem; }
.report-gallery img { width: 100%; border-radius: 16px; box-shadow: 0 16px 40px rgba(15,45,66,.12); }
.report-gallery .report-side { display: grid; gap: 1rem; }
.broker-row { display: grid; grid-template-columns: repeat(4,1fr); align-items: center; gap: 1.5rem; }
.broker-row div { display: grid; min-height: 110px; padding: 1.4rem; border: 1px solid #e3e9ed; border-radius: 16px; background: #fff; place-items: center; }
.broker-row img { max-width: 130px; max-height: 54px; object-fit: contain; }
.seo-copy { max-width: 880px; margin: 0 auto; color: #637887; line-height: 1.85; }
@media (max-width: 991px) {
    .marketing-hero-grid, .two-column { grid-template-columns: 1fr; gap: 3rem; }
    .service-grid, .benefit-grid, .product-grid { grid-template-columns: repeat(2,1fr); }
    .process-list { grid-template-columns: repeat(2,1fr); }
    .portfolio-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 767px) {
    .marketing-hero { padding: 5rem 0 4rem; }
    .marketing-hero-media, .marketing-hero-media img { min-height: 300px; }
    .marketing-section { padding: 4.25rem 0; }
    .service-grid, .benefit-grid, .product-grid, .process-list, .portfolio-grid, .report-gallery, .broker-row { grid-template-columns: 1fr; }
    .marketing-cta .container { align-items: flex-start; flex-direction: column; }
    .image-frame img { min-height: 300px; }
}
