:root { --ma-navy:#14243a; --ma-ink:#263244; --ma-muted:#6f7480; --ma-cream:#f7f3ed; --ma-rose:#b77362; --ma-line:#e5e5e8; }
.ma-shell { width:92%; max-width:1360px; margin:0 auto; }
.ma-announcement { background:var(--ma-navy); color:#fff; text-align:center; padding:9px 18px; font:12px/1.5 Arial,sans-serif; letter-spacing:.4px; }
.ma-announcement a { color:#f1cfc1; margin-left:12px; }
header.ma-site-header { background:#fff; border:0; position:relative; z-index:30; font-family:Arial,sans-serif; }
.ma-header-main { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:17px 0; }
.ma-brand { display:flex; gap:12px; align-items:center; flex-shrink:0; text-decoration:none!important; color:var(--ma-navy)!important; }
.ma-brand img { width:85px; height:53px; object-fit:contain; }
.ma-brand>span { font-size:20px; letter-spacing:1.5px; font-weight:700; }
.ma-brand>span>span { display:block; font-size:10px; letter-spacing:3px; margin-top:4px; }
.ma-search-wrap { max-width:500px; flex:1; position:relative; }
.ma-search-wrap input { width:100%; border:1px solid #dcdde2; background:#fafafa; border-radius:3px; height:42px; padding:0 40px 0 16px; font-size:13px; color:var(--ma-ink); }
.ma-search-wrap>span { position:absolute; right:15px; top:8px; font-size:21px; color:var(--ma-muted); }
.ma-search-results { position:absolute; background:#fff; top:48px; width:100%; padding:8px; border:1px solid var(--ma-line); box-shadow:0 12px 25px #14243a18; z-index:50; }
.ma-search-results[hidden] { display:none; }
.ma-search-results a { display:block; padding:12px; color:var(--ma-ink); }
.ma-search-results a:hover { background:var(--ma-cream); }
.ma-search-results p { padding:10px; font-size:13px; }
.ma-header-actions { display:flex; gap:27px; }
.ma-header-actions a { text-align:center; color:var(--ma-navy); text-decoration:none; }
.ma-header-actions span { display:block; font-size:23px; line-height:1.2; }
.ma-header-actions small { display:block; font-size:10px; margin-top:5px; white-space:nowrap; }
.ma-main-nav { border-top:1px solid #efeff2; border-bottom:1px solid var(--ma-line); }
.ma-main-nav>.ma-shell { display:flex; justify-content:space-between; gap:15px; }
.ma-main-nav a { color:var(--ma-ink); font-size:12px; padding:16px 0; white-space:nowrap; text-decoration:none; position:relative; }
.ma-main-nav a:hover,.ma-main-nav a[aria-current] { color:var(--ma-rose); }
.ma-main-nav a[aria-current]::after { content:''; position:absolute; bottom:0; left:0; right:0; height:2px; background:var(--ma-rose); }
.ma-menu-toggle { display:none; }
.ma-storefront { margin:0; background:#fff; color:var(--ma-ink); font-family:Arial,sans-serif; }
.ma-storefront main { overflow:hidden; }
.ma-storefront h1,.ma-storefront h2,.ma-storefront h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; color:var(--ma-navy); }
.ma-storefront a { text-decoration:none; }
.ma-hero { display:grid; grid-template-columns:1fr 1fr; min-height:530px; background:#ebe5dc; }
.ma-hero-copy { padding:70px 6vw 50px; position:relative; align-self:center; }
.ma-eyebrow { display:block; color:#966555; letter-spacing:2px; text-transform:uppercase; font:11px/1.6 Arial,sans-serif; }
.ma-storefront .ma-hero h1 { font-size:clamp(38px,4.1vw,65px); line-height:1.12; margin:24px 0; letter-spacing:-1.8px; }
.ma-hero h1 em { font-weight:400; }
.ma-hero-copy>p { color:#616776; font-size:16px; line-height:1.9; margin:0 0 28px; }
.ma-button { display:inline-flex; align-items:center; justify-content:center; gap:28px; background:var(--ma-navy); border:1px solid var(--ma-navy); padding:15px 24px; color:#fff!important; font:13px/1.5 Arial,sans-serif; text-decoration:none; }
.ma-button:hover { background:#2a405c; }
.ma-hero-secondary { display:block; color:var(--ma-navy); font-size:12px; margin-top:17px; text-decoration:underline!important; text-underline-offset:5px; }
.ma-hero-footnote { display:block; font-size:9px; letter-spacing:1.7px; color:#777b82; margin-top:38px; }
.ma-hero-visual { position:relative; min-height:530px; overflow:hidden; }
.ma-hero-visual>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.ma-hero-visual::after { content:''; position:absolute; inset:0; background:linear-gradient(transparent 50%,#122b3a80); }
.ma-hero-note { position:absolute; bottom:42px; left:38px; color:white; z-index:1; }
.ma-hero-note span { font-size:10px; text-transform:uppercase; letter-spacing:2px; }
.ma-hero-note strong { display:block; font:italic 33px/1.2 Georgia,serif; margin-top:12px; }
.ma-promise-strip { display:flex; justify-content:center; background:#faf9f7; border-bottom:1px solid #efede8; padding:21px 4%; gap:0; }
.ma-promise-strip span { padding:0 34px; border-right:1px solid #d5d7dc; font-size:11px; letter-spacing:.4px; text-align:center; }
.ma-promise-strip span:last-child { border:0; }
.ma-section { padding-top:68px; padding-bottom:68px; }
.ma-section-heading { text-align:center; margin-bottom:35px; }
.ma-section-heading h2 { font-size:36px; margin:12px 0; line-height:1.25; }
.ma-section-heading p { color:var(--ma-muted); font-size:14px; line-height:1.7; margin:0; }
.ma-service-categories { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:30px; }
.ma-service-categories a { text-align:center; color:var(--ma-ink); font-size:13px; }
.ma-service-categories img { display:block; width:100%; height:auto; aspect-ratio:1; border-radius:50%; object-fit:cover; margin-bottom:18px; border:6px solid #f4f1ec; transition:transform .25s; }
.ma-service-categories a:hover img { transform:translateY(-5px); }
.ma-collections { background:#f8f7f5; }
.ma-collection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.ma-collection-card { background:#fff; color:var(--ma-ink); }
.ma-collection-card>img { display:block; width:100%; height:275px; object-fit:cover; }
.ma-collection-card>div { padding:27px 25px 30px; }
.ma-collection-card>div>span:first-child { font-size:9px; letter-spacing:1.5px; color:#9a7464; }
.ma-collection-card h3 { font-size:27px; line-height:1.25; margin:12px 0 21px; }
.ma-text-link { font-size:12px; color:var(--ma-navy); }
.ma-heading-with-controls { display:flex; align-items:end; justify-content:space-between; text-align:left; }
.ma-rail-controls { display:flex; gap:10px; }
.ma-rail-controls button { width:44px; height:44px; border:1px solid #d7d8dd; background:#fff; color:var(--ma-navy); border-radius:50%; font-size:20px; }
.ma-rail-controls button:hover { background:var(--ma-cream); }
.ma-rail-controls button:disabled { opacity:.35; cursor:default; }
.ma-industry-rail { display:flex; gap:22px; overflow-x:auto; padding-bottom:18px; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:#bec1c9 #f0f0f2; }
.ma-industry-edit { display:block; position:relative; flex:0 0 calc((100% - 66px)/4); aspect-ratio:3/4.5; min-height:350px; overflow:hidden; border-radius:5px; scroll-snap-align:start; background:var(--ma-navy); }
.ma-industry-edit::after { content:''; position:absolute; inset:0; background:linear-gradient(#14243a16 25%,#0c142ce8); }
.ma-industry-edit>img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; transition:transform .4s; }
.ma-industry-edit:hover>img { transform:scale(1.05); }
.ma-industry-number { position:absolute; top:18px; left:18px; z-index:2; color:#fff; font-size:10px; letter-spacing:2px; background:#14243a65; padding:5px 8px; }
.ma-industry-caption { position:absolute; bottom:25px; left:22px; right:22px; z-index:2; }
.ma-storefront .ma-industry-caption h3 { color:#fff; font-size:26px; line-height:1.15; margin:0 0 10px; }
.ma-industry-caption p { color:#e0e2e8; font-size:11px; line-height:1.5; margin:0; padding-right:26px; }
.ma-industry-arrow { color:#fff; position:absolute; right:0; bottom:0; font-size:26px; }
.ma-scroll-hint { font-size:11px; color:var(--ma-muted); margin:15px 0 0; }
.ma-scroll-hint span { float:right; }
.ma-feature-band { display:grid; grid-template-columns:1fr 1fr; background:#e8eced; }
.ma-feature-image img { width:100%; height:420px; object-fit:cover; display:block; }
.ma-feature-copy { padding:55px 10%; align-self:center; }
.ma-feature-copy h2 { font-size:43px; line-height:1.14; margin:18px 0; }
.ma-feature-copy p { font-size:14px; line-height:1.8; color:#666d77; max-width:410px; margin-bottom:25px; }
.ma-home-plans { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.ma-home-plans article { padding:32px; border:1px solid #dedfe3; background:#fff; }
.ma-home-plans article>span { color:#967668; font-size:9px; letter-spacing:1px; }
.ma-home-plans h3 { font-size:27px; margin:18px 0; }
.ma-home-plans p { font-size:30px; color:var(--ma-navy); }
.ma-home-plans small { font-size:11px; color:var(--ma-muted); }
.ma-home-plans a { display:block; border-top:1px solid var(--ma-line); margin-top:24px; padding-top:19px; color:var(--ma-navy); font-size:12px; }
.ma-plan-note { text-align:center; margin:22px 0 0; font-size:12px; color:var(--ma-muted); }
.ma-plan-note a { color:#9a6354; }
.ma-assistance { background:#f4ece6; text-align:center; padding:63px 20px; }
.ma-assistance h2 { font-size:36px; margin:14px 0; }
.ma-assistance p { color:var(--ma-muted); font-size:14px; margin-bottom:25px; }
.ma-assistance>div { display:flex; gap:15px; justify-content:center; }
.ma-button-outline { color:var(--ma-navy)!important; background:transparent; }
.ma-button-outline:hover { background:#e7ded4; }
footer.ma-site-footer { background:var(--ma-navy); color:#c9ced7; padding:58px 0 0; font:13px/1.9 Arial,sans-serif; }
.ma-footer-grid { display:grid; grid-template-columns:1.4fr .8fr 1fr 1.2fr; gap:50px; }
.ma-site-footer a { color:#d7dce4; text-decoration:none; }
.ma-site-footer a:hover { color:#f3cfbb; }
.ma-site-footer h2 { font:13px Arial,sans-serif; color:#fff; text-transform:uppercase; letter-spacing:1.2px; margin:0 0 24px; }
.ma-footer-grid>div:not(:first-child)>a { display:block; margin:0 0 9px; }
.ma-site-footer .ma-footer-brand { font-weight:bold; letter-spacing:1.4px; font-size:17px; color:#fff; }
.ma-site-footer p { color:#b4bdc9; font-size:12px; line-height:1.9; margin:17px 0; }
.ma-footer-bottom { display:flex; justify-content:space-between; border-top:1px solid #ffffff20; padding:23px 0; margin-top:40px; font-size:10px; }
.ma-site-header a:focus-visible,.ma-site-header button:focus-visible,.ma-storefront a:focus-visible,.ma-storefront button:focus-visible,.ma-site-footer a:focus-visible { outline:3px solid #b77362; outline-offset:4px; }
.ma-checkout { max-width:960px; margin:45px auto; padding:0 20px; color:var(--ma-ink); }
.ma-checkout h1 { font:36px Georgia,serif; color:var(--ma-navy); }
.ma-checkout-grid { display:grid; grid-template-columns:1fr 1fr; gap:35px; }
.ma-checkout-panel { border:1px solid var(--ma-line); background:#faf9f7; padding:28px; }
.ma-checkout-panel h2 { font-size:22px; }
.ma-checkout-panel img { display:block; max-width:220px; width:100%; height:auto; margin:20px auto; }
.ma-checkout-panel dl { display:grid; grid-template-columns:1fr auto; gap:15px; }
.ma-checkout-panel dd { margin:0; }
.ma-checkout-panel label { display:block; font-size:13px; margin-top:15px; }
.ma-checkout-panel input { width:100%; padding:10px; border:1px solid #cdd1d8; margin-top:5px; }
.ma-checkout-panel button { width:100%; margin-top:20px; }
@media(min-width:1600px) { .ma-hero-copy { padding-left:calc((100vw - 1360px)/2); } }
@media(max-width:1100px) { .ma-header-main { gap:20px; }.ma-brand>span { font-size:16px; }.ma-header-actions { gap:16px; }.ma-main-nav>.ma-shell { gap:12px; }.ma-main-nav a { font-size:11px; }.ma-hero-copy { padding:45px 5vw; }.ma-hero,.ma-hero-visual { min-height:480px; }.ma-promise-strip span { padding:0 20px; }.ma-industry-edit { flex-basis:calc((100% - 44px)/3); }.ma-service-categories { gap:20px; }.ma-collection-card h3 { font-size:23px; }.ma-footer-grid { gap:25px; } }
@media(max-width:767px) {
 .ma-announcement { font-size:10px; }.ma-announcement a { display:none; }.ma-header-main { flex-wrap:wrap; padding:12px 0; gap:14px; }.ma-brand { gap:8px; }.ma-brand img { width:58px; height:38px; }.ma-brand>span { font-size:14px; letter-spacing:1px; }.ma-brand>span>span { font-size:8px; letter-spacing:2px; }.ma-header-actions { margin-left:auto; gap:15px; }.ma-header-actions a:first-child { display:none; }.ma-header-actions small { font-size:9px; }.ma-search-wrap { order:4; flex-basis:100%; max-width:none; }.ma-menu-toggle { display:block; font-size:11px; border:0; color:var(--ma-navy); background:#fff; padding:5px; }.ma-menu-toggle span { display:block; font-size:20px; }.ma-main-nav { display:none; }.ma-main-nav.is-open { display:block; }.ma-main-nav>.ma-shell { display:grid; grid-template-columns:1fr 1fr; gap:0 20px; }.ma-main-nav a { font-size:13px; padding:13px 0; border-bottom:1px solid #eee; }
 .ma-hero { grid-template-columns:1fr; }.ma-hero-copy { padding:38px 7vw; }.ma-storefront .ma-hero h1 { font-size:43px; letter-spacing:-1px; margin:18px 0; }.ma-hero-copy>p { font-size:14px; }.ma-hero-footnote { margin-top:25px; }.ma-hero-visual { min-height:290px; }.ma-hero-note { bottom:25px; left:7vw; }.ma-hero-note strong { font-size:28px; }.ma-promise-strip { display:grid; grid-template-columns:1fr 1fr; gap:15px 0; padding:19px 2%; }.ma-promise-strip span { font-size:10px; padding:0 8px; }.ma-promise-strip span:nth-child(2) { border:0; }
 .ma-section { padding-top:42px; padding-bottom:42px; }.ma-section-heading { margin-bottom:25px; }.ma-section-heading h2 { font-size:30px; }.ma-section-heading p { font-size:12px; }.ma-eyebrow { font-size:9px; letter-spacing:1.5px; }.ma-service-categories { grid-template-columns:repeat(3,minmax(0,1fr)); gap:23px 18px; }.ma-service-categories a { font-size:11px; }.ma-service-categories img { border-width:4px; margin-bottom:10px; }.ma-collection-grid { grid-template-columns:1fr; gap:23px; }.ma-collection-card>img { height:240px; }.ma-collection-card>div { padding:22px; }.ma-collection-card h3 { font-size:27px; }.ma-heading-with-controls { gap:10px; }.ma-rail-controls { gap:5px; }.ma-rail-controls button { width:34px; height:34px; font-size:18px; }.ma-industry-rail { gap:15px; }.ma-industry-edit { flex-basis:78%; min-height:370px; }.ma-scroll-hint span { float:none; display:block; margin-top:7px; }.ma-feature-band { grid-template-columns:1fr; }.ma-feature-image img { height:270px; }.ma-feature-copy { padding:38px 7%; }.ma-feature-copy h2 { font-size:35px; }.ma-home-plans { grid-template-columns:1fr; gap:15px; }.ma-home-plans article { padding:25px; }.ma-assistance { padding:42px 20px; }.ma-assistance h2 { font-size:30px; }.ma-assistance>div { flex-direction:column; align-items:center; }.ma-assistance .ma-button { width:100%; max-width:330px; }.ma-footer-grid { grid-template-columns:1fr 1fr; gap:30px 20px; }.ma-footer-grid>div:first-child { grid-column:1/-1; }.ma-footer-grid>div:last-child { grid-column:1/-1; }.ma-footer-bottom { flex-direction:column; gap:8px; }.ma-checkout-grid { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .ma-storefront * { transition:none!important; scroll-behavior:auto!important; } }

/* BlueStone reference palette: deep blue, blush pink, muted mauve. */
:root { --ma-navy:#032c5e; --ma-ink:#3e3e3e; --ma-muted:#77717a; --ma-cream:#fff8f9; --ma-rose:#9d7792; --ma-line:#f0e2e7; }
.ma-storefront { margin:0; line-height:1.5; -webkit-font-smoothing:antialiased; }
.ma-storefront *, .ma-storefront *::before, .ma-storefront *::after { box-sizing:border-box; }
.ma-storefront button, .ma-storefront input { font:inherit; }
.ma-storefront button { cursor:pointer; }
.ma-storefront .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.ma-storefront .ma-announcement { background:#fbe9ed; color:#032c5e; }
.ma-storefront .ma-announcement a { color:#032c5e; text-decoration:underline; text-underline-offset:3px; }
.ma-storefront .ma-header-main { padding-top:20px; padding-bottom:20px; }
.ma-storefront .ma-search-wrap input { background:#fff8f9; border-color:#e8cfd8; border-radius:4px; }
.ma-storefront .ma-main-nav { background:#032c5e; border:0; }
.ma-storefront .ma-main-nav a { color:#fff; font-size:12px; padding:15px 0; }
.ma-storefront .ma-main-nav a:hover, .ma-storefront .ma-main-nav a[aria-current] { color:#fbe9ed; }
.ma-storefront .ma-main-nav a[aria-current]::after { background:#fbe9ed; }
.ma-storefront .ma-hero { background:#fbe9ed; min-height:510px; }
.ma-storefront .ma-hero-visual { min-height:510px; }
.ma-storefront .ma-hero-copy { padding-top:52px; padding-bottom:52px; }
.ma-storefront .ma-hero h1 { color:#032c5e; }
.ma-storefront .ma-eyebrow { color:#9d7792; }
.ma-storefront .ma-button { border-radius:3px; }
.ma-storefront .ma-button:hover { background:#164778; }
.ma-storefront .ma-promise-strip { background:#fff8f9; border-color:#fbe9ed; }
.ma-storefront .ma-service-categories img { border-color:#fbe9ed; }
.ma-storefront .ma-collections { background:#fff8f9; }
.ma-storefront .ma-collection-card { border:1px solid #f0e2e7; border-radius:4px; overflow:hidden; transition:box-shadow .2s,transform .2s; }
.ma-storefront .ma-collection-card:hover { transform:translateY(-4px); box-shadow:0 10px 24px #032c5e12; }
.ma-storefront .ma-collection-card>div>span:first-child, .ma-storefront .ma-home-plans article>span { color:#9d7792; }
.ma-storefront .ma-feature-band { background:#feeef1; }
.ma-storefront .ma-assistance { background:#fbe9ed; }
.ma-storefront .ma-button-outline { background:transparent; }
.ma-storefront .ma-button-outline:hover { background:#feeef1; }
.ma-storefront .ma-home-plans article { border-color:#eddce3; border-radius:4px; }
.ma-storefront .ma-plan-note a { color:#032c5e; text-decoration:underline; }
.ma-storefront footer.ma-site-footer { background:#032c5e; }
@media(max-width:767px) {
 .ma-storefront .ma-header-main { padding-top:12px; padding-bottom:12px; }
 .ma-storefront .ma-main-nav a { border-color:#ffffff25; }
 .ma-storefront .ma-hero { min-height:0; }
 .ma-storefront .ma-hero-copy { padding:36px 7vw; }
 .ma-storefront .ma-hero-visual { min-height:270px; }
 .ma-storefront .ma-hero h1 { font-size:clamp(32px,9vw,43px); }
}
/* A storefront layout adapted to MA's services. */
.ma-skip-link{position:fixed;top:-80px;left:16px;z-index:100;background:#fff;padding:12px;color:#032c5e}.ma-skip-link:focus{top:12px}
.ma-storefront .ma-hero{position:relative;background:#f8e8e8;grid-template-columns:46% 54%}
.ma-storefront .ma-hero-copy{padding:48px 4vw 70px 6vw}
.ma-storefront .ma-hero h1{font-size:clamp(36px,3.8vw,61px)}
.ma-storefront .ma-hero-visual:after{background:linear-gradient(90deg,#f8e8e8 0%,transparent 22%),linear-gradient(0deg,#032c5e66,transparent 50%)}
.ma-campaign-controls{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:2;background:#ffffffb8;border-radius:24px;padding:8px 12px}
.ma-campaign-controls button{width:10px;height:10px;border-radius:50%;border:1px solid #032c5e;background:transparent;padding:0;position:relative}.ma-campaign-controls button:before{content:'';position:absolute;inset:-7px}
.ma-campaign-controls button[aria-pressed=true]{background:#032c5e;width:25px;border-radius:8px}
.ma-storefront .ma-section-heading h2{font-family:Arial,sans-serif;font-size:28px;font-weight:400;letter-spacing:.2px}
.ma-storefront .ma-service-categories{grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 24px}
.ma-storefront .ma-service-categories img{width:100%;height:auto;aspect-ratio:1.15;object-fit:cover;border:0;border-radius:8px;background:#fbe9ed;transition:transform .2s}
.ma-service-categories a:hover img{transform:translateY(-4px)}
.ma-storefront .ma-service-categories a{font-size:13px;color:#032c5e}
.ma-storefront .ma-main-nav>.ma-shell{max-width:1400px}
.ma-storefront .ma-collections{padding-top:55px;padding-bottom:55px}
.ma-storefront .ma-home-plans article{background:linear-gradient(135deg,#fff,#fff4f6)}
@media(max-width:767px){.ma-storefront .ma-hero{grid-template-columns:1fr}.ma-storefront .ma-hero-copy{padding:30px 7vw}.ma-storefront .ma-hero-visual{min-height:270px}.ma-storefront .ma-hero-visual:after{background:linear-gradient(0deg,#032c5e77,transparent 70%)}.ma-campaign-controls{bottom:12px}.ma-storefront .ma-service-categories{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 12px}.ma-storefront .ma-section-heading h2{font-size:25px}.ma-storefront .ma-service-categories a{font-size:11px}}

/* Preserve the complete original artwork, including text inside banners. */
.ma-storefront .ma-original-banners{display:block;min-height:0;background:#fff;padding-bottom:34px}
.ma-original-banner-link{display:block}.ma-original-banner-link img{display:block;width:100%;height:auto;aspect-ratio:982/345;object-fit:contain}
.ma-original-banners .ma-campaign-controls{bottom:4px;background:#fff}
.ma-storefront .ma-service-categories img,.ma-storefront .ma-collection-card>img,.ma-storefront .ma-feature-image img{object-fit:contain;background:#fff}
