/* Navy identity layer, based on the supplied Aranya wordmark.
 * Kept separate from structural styles so every branded surface shares one palette.
 * Original green variable names remain aliases for backwards-compatible templates. */
:root{--brand:#202863;--brand-dark:#141b46;--accent:#465bc4;--ink:#202647;--muted:#566079;--paper:#fff;--cream:#f2f4fb;--line:#dce1ef;--forest:var(--brand);--forest-deep:var(--brand-dark);--lime:#e0e6ff;--radius:12px}
body{background:#fff;color:var(--ink)}
h1,h2,h3,h4{letter-spacing:-.04em;font-weight:600}
:focus-visible{outline-color:#5064ce}
.eyebrow{color:#4657a2;font-size:.7rem;letter-spacing:.15em}
.eyebrow-dot{background:var(--accent)}
.site-header{background:rgba(255,255,255,.98)}
.header-inner{min-height:94px;gap:30px}
.brand{max-width:315px}
.brand-word{font-family:"Segoe UI",Arial,sans-serif;letter-spacing:-.025em;font-size:1.75rem;font-weight:700;color:var(--brand);max-width:315px;line-height:1.2}
.custom-logo-link{display:block;background:#fff;border-radius:4px}
.custom-logo-link img{max-width:300px;max-height:75px;object-fit:contain}
.nav-menu{gap:25px}
.nav-menu a{color:#4f5872}
.nav-menu a:hover,.nav-menu a[aria-current=page],.nav-menu .current-menu-item>a{text-decoration-color:var(--accent)}
.sub-menu{box-shadow:0 15px 25px #20286310}
.button,button[type=submit],input[type=submit]{border-radius:6px}
.button:hover,button[type=submit]:hover,input[type=submit]:hover{background:#34418c}
.button-lime:hover{background:#f0f3ff}
.text-link:hover{color:#3c4ea2}
.hero{background:linear-gradient(115deg,#f3f5fd 0%,#fafbff 48%,#edf0ff 100%);border-bottom:1px solid var(--line)}
.hero-grid{grid-template-columns:1.12fr 1fr;gap:65px;min-height:650px;padding-block:76px}
.hero h1{font-size:clamp(2.75rem,4.2vw,4.25rem);line-height:1.1;letter-spacing:-.055em;font-weight:600}
.hero h1 span{font:inherit;color:var(--accent);letter-spacing:inherit;margin-top:8px}
.hero-description{max-width:550px;line-height:1.9;font-size:1.03rem}
.hero-note{color:#5a6581;font-size:.74rem;max-width:480px;margin-top:28px}
.hero-note>span{color:var(--accent)}
.hero-visual{height:auto;min-width:0;margin:0}
.hero-photo{border-radius:16px;max-height:480px;aspect-ratio:1.05;object-fit:cover}
.solution-board{background:linear-gradient(135deg,#232d6a,#111941);padding:28px;border:1px solid #3b4889;border-radius:20px;box-shadow:0 25px 60px #26327920;position:relative;overflow:hidden}
.board-heading{display:flex;align-items:center;gap:10px;color:#e3e9ff;font-size:.68rem;letter-spacing:.06em;margin-bottom:25px}
.board-dot{width:6px;height:6px;background:#a1b4ff;border-radius:50%;flex-shrink:0}
.board-decoration{margin-left:auto;font-size:20px;line-height:1}
.capability-card{display:flex;align-items:flex-start;gap:16px;background:#ffffff0d;border:1px solid #a6b8ff35;border-radius:10px;padding:21px 19px;margin-bottom:15px;color:#fff}
.capability-card .icon-tile{background:#c4d1ff17;color:#b8c9ff;border-color:#9eaeee45;border-radius:9px;width:41px;height:41px}
.capability-card h2{font-size:1.1rem;color:#fff;letter-spacing:-.02em;margin-bottom:8px}
.capability-card p{color:#d2daf3;font-size:.79rem;line-height:1.85;margin:0}
.board-pattern{display:flex;align-items:flex-end;justify-content:space-between;gap:9px;height:40px;margin-top:25px;opacity:.65}
.board-pattern span{background:linear-gradient(#849bea66,#677fd422);width:100%;height:40%;border-radius:3px 3px 0 0}
.board-pattern span:nth-child(3n){height:75%}.board-pattern span:nth-child(2n){height:58%}.board-pattern span:nth-child(7){height:100%}
.section-heading>div{max-width:630px}.section-heading>p{max-width:350px}
/* Descriptive introductions stay below their title; the Insights action link
 * intentionally keeps its separate alignment. All copy remains admin-editable. */
.section-heading.section-heading--stacked{display:block;max-width:780px;margin:0 auto 36px;text-align:center}
.section-heading.section-heading--stacked>div{max-width:none}
.section-heading--stacked .eyebrow{justify-content:center;margin-bottom:16px}
.section-heading.section-heading--stacked h2{font-size:clamp(2rem,3.2vw,3rem);line-height:1.2}
.section-heading.section-heading--stacked>p{max-width:680px;margin:16px auto 0;font-size:.94rem;line-height:1.85;text-wrap:balance}
.outcomes-section{padding-block:76px;background:white;border-bottom:1px solid var(--line)}
.outcomes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:50px}
.outcome{min-width:0}.outcome>.icon-tile{margin-bottom:23px}.outcome h3{font-size:1.35rem;line-height:1.35;max-width:330px}.outcome p{font-size:.9rem;line-height:1.9;margin-bottom:0}
/* Share heading tracks so a wrapped title never pushes only one description down. */
.outcomes-section .outcomes-grid{grid-template-rows:auto auto 1fr;gap:18px 40px}
.outcomes-section .outcome{display:grid;grid-row:span 3;grid-template-rows:subgrid;min-width:0;overflow-wrap:anywhere}
.outcomes-section .outcome>.icon-tile{margin:0}
.outcomes-section .outcome h3,.outcomes-section .outcome p{margin:0;max-width:none}
@media(max-width:900px){
	.section-heading.section-heading--stacked{text-align:left;margin:0 0 28px}
	.section-heading--stacked .eyebrow{justify-content:flex-start}
	.section-heading.section-heading--stacked>p{margin:16px 0 0;text-wrap:pretty}
	.outcomes-section .outcomes-grid{grid-template-columns:1fr;grid-template-rows:none;gap:28px}
	.outcomes-section .outcome{grid-row:auto;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;gap:10px 18px}
	.outcomes-section .outcome>.icon-tile{grid-row:1 / span 2}
	.outcomes-section .outcome h3,.outcomes-section .outcome p{grid-column:2}
}
.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.services-section{background:#f8f9fe}
.expertise-card{border-color:#dfe4f1;padding:30px;background:#fff}
.expertise-card:hover{border-color:#a9b4e0;box-shadow:0 12px 30px #2028630a}
.expertise-card h3{font-size:1.4rem}.expertise-card p{font-size:.88rem}.expertise-card .text-link{font-size:.8rem}
.icon-tile{background:#eef1ff;border-color:#dce2fb;color:#3c4d9b}
.card-number{color:#616b89}
.about-section{background:#fff}
.about-visual{background:#e4e9fa}
.growth-art{background:linear-gradient(145deg,#f1f3fc,#d5def8)}
.growth-art::after{border-color:#7183bc40;border-radius:24px}
.growth-art>span{background:linear-gradient(90deg,#6377b8,#7d91d3);border-radius:6px 6px 0 0;box-shadow:7px 6px 18px #20286320}
.growth-art>span:nth-child(1){background:#bdc9ed}.growth-art>span:nth-child(2){background:#9cabdd}.growth-art>span:nth-child(4){background:linear-gradient(90deg,#455aa3,#647abd)}.growth-art>span:nth-child(5){background:linear-gradient(90deg,#202863,#3e4c8f)}
.growth-sun{background:#fff;width:95px;height:95px;box-shadow:0 0 70px #ffffff55}
.about-copy .text-link{border-color:#b2bce1}
.industries-section{background:#f6f8fe;border-block:1px solid var(--line)}
.industry-link:hover{background:#edf1ff;border-color:#a3b1df}
.industry-link>.icon{color:#5668ac}
/* Keep the process introduction and steps together rather than stretching them
 * across the page. Shared tracks align editable headings and descriptions. */
.approach-section{background:#f7f9ff;border-block:1px solid var(--line);padding-block:72px}
.approach-section .section-heading{display:block;max-width:760px;margin:0 auto 36px;text-align:center}
.approach-section .section-heading>div{max-width:none}
.approach-section .eyebrow{justify-content:center;margin-bottom:16px}
.approach-section .section-heading h2{font-size:clamp(2rem,3.2vw,3rem);line-height:1.2}
.approach-section .section-heading>p{max-width:640px;margin:16px auto 0;font-size:.94rem;line-height:1.85}
.approach-section .steps{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto auto 1fr;gap:18px 24px;margin:0;align-items:stretch}
.approach-section .steps>li{display:grid;grid-row:span 3;grid-template-rows:subgrid;min-width:0;padding:28px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow-wrap:anywhere}
.approach-section .steps>li::after{content:none}
.approach-section .step-number{position:static;display:flex;width:44px;height:44px;margin:0;background:#edf1ff;border:1px solid #cdd6f6;color:var(--brand);font-weight:600}
.approach-section .steps h3{margin:0;font-size:1.15rem;line-height:1.4;letter-spacing:-.02em}
.approach-section .steps p{margin:0;font-size:.9rem;line-height:1.85}
@media(max-width:900px){
	.approach-section{padding-block:56px}
	.approach-section .section-heading{text-align:left;margin:0 0 28px}
	.approach-section .eyebrow{justify-content:flex-start}
	.approach-section .section-heading>p{margin:16px 0 0}
	.approach-section .steps{grid-template-columns:1fr;grid-template-rows:none;gap:16px}
	.approach-section .steps>li{grid-row:auto;grid-template-columns:44px minmax(0,1fr);grid-template-rows:auto auto;gap:10px 20px;padding:24px}
	.approach-section .step-number{grid-row:1 / span 2}
	.approach-section .steps h3,.approach-section .steps p{grid-column:2}
}
@media(max-width:480px){
	.approach-section .steps>li{grid-template-columns:36px minmax(0,1fr);gap:10px 14px;padding:20px}
	.approach-section .step-number{width:36px;height:36px;font-size:.72rem}
	.approach-section .steps h3{font-size:1.05rem}
	.approach-section .steps p{font-size:.86rem}
}
.quote-mark{color:var(--accent)}.testimonial blockquote p{color:#354268}
.article-card{display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}
.article-card:hover{box-shadow:0 16px 35px #20286310;transform:translateY(-3px)}
.article-body{display:flex;flex-direction:column;flex:1;padding:28px}.article-body h2{font-size:1.4rem;line-height:1.3}.article-body .text-link{margin-top:auto}.article-body time{font-size:.7rem;margin-bottom:15px}
.article-meta{display:flex;justify-content:space-between;gap:12px;color:#46599d;font-weight:600;font-size:.65rem;margin-bottom:12px;line-height:1.5}
.article-art{height:175px;background:linear-gradient(125deg,#e4eafc,#f3f5fc);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.article-art>.icon{height:54px;width:54px;color:#3b4d98;position:relative;z-index:1}
.article-art::after{content:"";width:150px;height:150px;border:1px solid #9aaadb60;border-radius:50%;position:absolute;right:-30px;top:-55px;box-shadow:0 0 0 22px #9aaadb15,0 0 0 45px #9aaadb09}
.article-art-grid{position:absolute;inset:0;background-image:radial-gradient(#647ac64a 1px,transparent 1px);background-size:19px 19px;mask-image:linear-gradient(110deg,black,transparent 65%)}
.topic-nav{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}
.topic-nav a{padding:8px 17px;border:1px solid var(--line);border-radius:50px;font-size:.78rem;background:#fff;color:#47567f}
.topic-nav a:hover,.topic-nav a[aria-current=page]{background:var(--brand);color:#fff;border-color:var(--brand)}
.cta-section{background:linear-gradient(115deg,#202863,#141b46)}
.cta-section::after{border-color:#b3c5ff22;box-shadow:0 0 0 60px #b3c5ff0a,0 0 0 120px #b3c5ff06}
.cta-inner p:not(.eyebrow){color:#d4dcf3}
.site-footer{background:#f4f6fc}
.footer-name{font-family:"Segoe UI",Arial,sans-serif;font-weight:700;color:var(--brand);letter-spacing:-.025em;max-width:280px;font-size:1.7rem}
.footer-name span{color:var(--accent)}
.footer-menu a,.footer-grid .nav-menu a{color:#515e7c}
.footer-bottom{border-color:var(--line)}
.page-hero{background:linear-gradient(110deg,#f1f4fc,#f8f9fe)}
.breadcrumbs{color:#546187}
.prose,.prose p{color:#45516d}
.prose blockquote{border-left-color:#5369b6}
.sticky{border-color:#a4b3e5}
.sidebar-nav a[aria-current=page]{color:#4054aa}
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=hidden]),select,textarea{border-color:#ccd4e9;background:#fafbff}
.aranya-contact-form form>p:first-child{color:#5d6883}
.aranya-form-notice{background:#eff3ff;border-color:#a2b2e3}.aranya-form-notice p{color:#2e417d}
.aranya-form-notice--error{background:#fff3ea;border-color:#b97743}.aranya-form-notice--error p{color:#79401f}
@media(max-width:1150px){.header-inner{gap:20px}.brand-word{font-size:1.5rem;max-width:255px}.custom-logo-link img{max-width:245px}.nav-menu{gap:19px}.hero-grid{gap:30px}.hero h1{font-size:3.3rem}.hero-actions{gap:14px}.solution-board{padding:22px}.capability-card{padding:18px 14px;gap:13px}.capability-card p{font-size:.76rem}.outcomes-grid{gap:30px}}
@media(max-width:920px){.brand{max-width:300px}.brand-word{font-size:1.6rem;max-width:300px}.custom-logo-link img{max-width:280px;max-height:60px}.hero-grid{gap:28px;grid-template-columns:1.05fr 1fr;padding-block:55px;min-height:0}.hero h1{font-size:2.8rem}.hero-description{font-size:.93rem}.hero-visual{margin:0}.solution-board{padding:20px}.capability-card{gap:11px}.capability-card .icon-tile{width:32px;height:32px}.capability-card .icon-tile svg{width:20px}.capability-card h2{font-size:.99rem}.capability-card p{font-size:.74rem}.board-heading{font-size:.61rem;gap:7px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.outcomes-grid{gap:25px}.outcome h3{font-size:1.15rem}.outcome p{font-size:.85rem}.section-heading>div{max-width:480px}.section-heading>p{max-width:290px}}
@media(max-width:650px){.header-inner{min-height:78px;gap:12px}.brand{max-width:calc(100% - 90px)}.brand-word{font-size:1.45rem;max-width:100%}.custom-logo-link img{max-width:100%;max-height:56px}.hero-grid{grid-template-columns:1fr;gap:35px;padding-block:44px}.hero h1{font-size:clamp(2.5rem,9.5vw,3.6rem);max-width:570px;line-height:1.12}.hero-description{max-width:520px}.hero-note{font-size:.72rem}.hero-visual{height:auto;min-height:0;max-width:none;width:100%}.solution-board{padding:22px;border-radius:14px}.board-heading{font-size:.65rem}.capability-card{padding:19px 16px;gap:15px}.capability-card h2{font-size:1.04rem}.capability-card p{font-size:.78rem}.capability-card .icon-tile{width:38px;height:38px}.board-pattern{height:25px;margin-top:16px}.outcomes-section{padding-block:55px}.outcomes-grid{grid-template-columns:1fr;gap:29px}.outcome{display:grid;grid-template-columns:45px 1fr;gap:0 17px}.outcome>.icon-tile{grid-row:1/3;margin:0}.outcome h3{font-size:1.17rem;max-width:none}.outcome p{font-size:.88rem}.section-heading>p{max-width:100%}.service-grid{grid-template-columns:1fr}.expertise-card{padding:27px}.expertise-card h3{font-size:1.4rem}.expertise-card p{font-size:.88rem}.card-top{margin-bottom:20px}.article-art{height:165px}.article-body h2{font-size:1.45rem}.topic-nav{gap:8px}.topic-nav a{font-size:.7rem;padding:8px 13px}.footer-name{max-width:100%;font-size:1.7rem}.hero-photo{margin:0;height:320px}}
@media(max-width:650px){.brand-word{font-size:clamp(1.15rem,5vw,1.45rem)}}
@media print{body{background:#fff;color:#000}.hero,.page-hero,.services-section,.industries-section{background:#fff}.article-art{display:none}.button{background:white;color:black;border:1px solid black}}