/* Capability-led content, with the existing Angels Armory identity. */
/* Homepage slogan enlarged by 25 percent across responsive sizes. */
.hero h1{font-size:clamp(60px,5.625vw,85px)}
.hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(300px,.8fr);gap:48px;align-items:center}
.hero-description{max-width:570px;font-size:14px;line-height:1.75}
.hero-actions .text-link{display:inline-flex}
.capability-index{padding:22px 24px;background:rgba(21,23,19,.7);border:1px solid var(--line)}
.capability-index>.eyebrow{margin-bottom:16px}
.capability-index>a{display:grid;grid-template-columns:24px 1fr 16px;align-items:center;gap:12px;padding:16px 0;border-top:1px solid var(--line)}
.capability-index>a:last-child{padding-bottom:0}
.route-number{font:500 12px/1.5 var(--serif);color:var(--gold)}
.route-copy strong{display:block;font:500 15px/1.4 var(--sans);color:var(--ivory)}
.route-copy small{display:block;font:400 11px/1.5 var(--sans);color:var(--muted);margin-top:5px}
.route-arrow{color:var(--gold);transition:transform .2s}
.capability-index>a:hover .route-arrow{transform:translate(2px,-2px)}
.capability-index>a:hover strong{color:var(--gold)}
.services-overview{padding:36px 0 40px;scroll-margin-top:0}
.service-section-intro{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:36px;margin-bottom:26px}
.service-section-intro h2{font-size:46px;margin-top:15px}
.service-section-intro>div:last-child{max-width:520px}
.service-section-intro p:not(.eyebrow){font-size:14px;line-height:1.75;color:#53594f}
.service-section-intro p+p{margin-top:12px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.service-card{display:flex;flex-direction:column;background:#f7f3ea;border:1px solid #d4cdbe;min-width:0;transition:border-color .2s,transform .2s}
.service-card:hover{border-color:#9b8051;transform:translateY(-3px)}
.service-card-image{height:172px;position:relative;overflow:hidden;background:#171a17}
.service-card-image img{width:100%;height:100%;object-fit:cover;filter:saturate(.45) brightness(.8)}
.service-card-image>span{position:absolute;bottom:0;left:0;right:0;padding:10px 17px;background:linear-gradient(transparent,rgba(8,10,8,.95));color:#f4eedf;font:600 9px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.12em}
.service-card-body{display:flex;flex:1;flex-direction:column;padding:22px}
.service-card h3{font-size:32px;letter-spacing:-.025em;line-height:1.05;color:#20251f}
.service-card p{font-size:14px;line-height:1.65;color:#596052;margin-top:13px}
.service-card ul{list-style:none;padding:0;margin:17px 0 0}
.service-card li{padding:9px 0 9px 13px;border-top:1px solid #ded7c9;font-size:12px;line-height:1.6;color:#4f5749;position:relative}
.service-card li:before{content:'·';position:absolute;left:0;font-weight:700;color:#8c6d39}
.service-card .text-link{padding-top:20px;margin-top:auto;justify-content:space-between;font-size:11px;color:#222720}
.service-card .text-link>span{color:#8a6b3d}
.engagement-section{padding:36px 0 40px;border-block:1px solid var(--line);background:#111310}
.engagement-heading{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:end;margin-bottom:24px}
.engagement-heading h2{font-size:44px;margin-top:15px}
.engagement-heading>p{font-size:14px;line-height:1.75;color:#b4b9b0;max-width:500px}
.engagement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.engagement-grid article{padding:22px;border:1px solid var(--line)}
.engagement-grid .eyebrow{font-size:9px;letter-spacing:.1em}
.engagement-grid h3{font-size:28px;line-height:1.1;letter-spacing:-.02em;margin-top:15px}
.engagement-grid p{font-size:13px;line-height:1.75;color:#b4b9b0;margin-top:12px}
.requirements-note{padding:12px 15px;margin:20px 0;border-left:2px solid var(--gold);background:rgba(189,162,115,.06)}
.requirements-note .eyebrow{font-size:9px;margin-bottom:5px}
.requirements-note p{font-size:13px;line-height:1.7;color:#c2c6bc}
.detail-copy>p:not(.eyebrow){font-size:14px;line-height:1.75}
.detail-copy h2{font-size:42px}
.service-list li{font-size:13px}
.company-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:44px;align-items:center}
.company-copy h2{font-size:44px;margin:18px 0}
.company-copy>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#b9bdb5}
.company-copy .text-link{margin-top:22px}
.company-facts{padding:26px;background:#151813;border:1px solid var(--line)}
.company-facts dl{margin:17px 0 22px}
.company-facts dl>div{display:grid;grid-template-columns:90px 1fr;gap:14px;border-top:1px solid var(--line);padding:12px 0}
.company-facts dt{font:600 9px/1.7 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);padding-top:2px}
.company-facts dd{margin:0;font-size:13px;line-height:1.6;color:var(--ivory)}
.company-facts .button{width:100%;font-size:11px}
.contact-intro>p:not(.eyebrow){font-size:14px}
.contact-guidance{margin:20px 0}
.contact-guidance article{padding:13px 0;border-top:1px solid var(--line)}
.contact-guidance h3{font-size:25px;letter-spacing:-.015em}
.contact-guidance p{font-size:13px;line-height:1.7;color:#b9bdb5;margin-top:7px}
.contact-base{display:block;font-size:10px;letter-spacing:.05em;color:var(--gold);margin-top:17px}

@media(max-width:1000px){
  .hero-grid{gap:28px;grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr)}
  .hero h1{font-size:65px}
  .capability-index{padding:20px}
  .service-card-body{padding:19px}
  .service-card h3{font-size:29px}
  .service-card-image{height:155px}
  .engagement-grid article{padding:19px}
  .engagement-grid h3{font-size:26px}
  .company-layout{gap:30px}
}
@media(max-width:850px){
  .hero-grid{grid-template-columns:1fr;gap:24px}
  .hero h1{font-size:63.75px}
  .hero-description{max-width:660px}
  .capability-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:20px;padding:20px}
  .capability-index>.eyebrow{grid-column:1/-1;margin-bottom:12px}
  .capability-index>a{grid-template-columns:1fr 12px;gap:8px;padding:12px 0 0;align-items:start}
  .route-number{display:none}
  .route-copy strong{font-size:13px}
  .route-copy small{font-size:10px}
  .route-arrow{font-size:13px}
  .service-section-intro{gap:26px}
  .service-section-intro h2{font-size:40px}
  .service-grid{gap:14px}
  .service-card-body{padding:17px}
  .service-card h3{font-size:27px}
  .service-card p{font-size:13px}
  .service-card li{font-size:11px}
  .service-card .text-link{font-size:10px}
  .engagement-heading{gap:26px}
  .engagement-heading h2{font-size:40px}
  .engagement-grid{gap:14px}
  .engagement-grid article{padding:17px}
  .engagement-grid h3{font-size:24px}
  .engagement-grid p{font-size:12px}
  .company-layout{grid-template-columns:1.2fr 1fr;gap:26px}
  .company-copy h2{font-size:39px}
  .company-facts{padding:20px}
  .company-facts dl>div{grid-template-columns:75px 1fr;gap:10px}
  .detail-copy h2{font-size:37px}
}
@media(max-width:620px){
  .hero h1{font-size:clamp(52.5px,12.75vw,70px)}
  .hero-description{font-size:13px;line-height:1.7}
  .hero-actions .text-link{font-size:10px}
  .capability-index{padding:15px;column-gap:12px}
  .capability-index>.eyebrow{font-size:8px;letter-spacing:.12em;margin-bottom:9px}
  .capability-index>a{display:block;padding-top:10px}
  .route-copy strong{font-size:11px;line-height:1.4}
  .route-copy small,.route-arrow{display:none}
  .services-overview{padding:26px 0 28px}
  .service-section-intro{grid-template-columns:1fr;gap:18px;margin-bottom:22px}
  .service-section-intro h2{font-size:40px;margin-top:14px}
  .service-section-intro p:not(.eyebrow){font-size:13px}
  .service-grid{grid-template-columns:1fr;gap:18px}
  .service-card-image{height:155px}
  .service-card-body{padding:21px}
  .service-card h3{font-size:34px}
  .service-card p{font-size:14px}
  .service-card li{font-size:12px}
  .service-card .text-link{font-size:11px;padding-top:16px}
  .engagement-section{padding:26px 0 28px}
  .engagement-heading{grid-template-columns:1fr;gap:18px;margin-bottom:20px}
  .engagement-heading h2{font-size:38px}
  .engagement-heading>p{font-size:13px}
  .engagement-grid{grid-template-columns:1fr;gap:14px}
  .engagement-grid article{padding:19px}
  .engagement-grid h3{font-size:28px;margin-top:12px}
  .engagement-grid p{font-size:13px;margin-top:10px}
  .company-layout{grid-template-columns:1fr;gap:24px}
  .company-copy h2{font-size:40px}
  .company-copy>p:not(.eyebrow){font-size:13px}
  .company-facts{padding:22px}
  .company-facts dl>div{grid-template-columns:90px 1fr}
  .detail-copy h2{font-size:38px}
  .detail-copy>p:not(.eyebrow){font-size:13px}
  .service-list li{font-size:12px}
  .requirements-note{padding:11px 13px}
  .requirements-note p{font-size:12px}
  .contact-guidance h3{font-size:26px}
}