:root { --cream:#f8f5ed; --ink:#2d221e; --ink-soft:#5d5049; --blue-mist:#c4d5d3; --blue-deep:#79999a; --brick:#ac4935; --brick-dark:#8b3527; --forest:#243435; --line:#c8c5ba; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; background:var(--cream); }
body { margin:0; background:radial-gradient(circle at 18% 11%,rgba(255,255,255,.9),transparent 23%),linear-gradient(125deg,rgba(51,40,32,.022) 25%,transparent 25%) 0 0/7px 7px,var(--cream); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
body::before { position:fixed; inset:0; z-index:30; pointer-events:none; content:""; opacity:.07; background-image:repeating-radial-gradient(circle at 50% 50%,rgba(45,34,30,.3) 0 .55px,transparent .65px 4px); background-size:5px 5px; mix-blend-mode:multiply; }
a { color:inherit; text-decoration:none; }
button,input,select { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }
.signal-site { min-width:320px; overflow:hidden; }
.page-width { width:min(100% - 40px,1480px); margin-inline:auto; }

/* Mobile-first layout */
.hero-shell { background:var(--cream); }
.site-header { display:flex; min-height:74px; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(45,34,30,.12); }
.wordmark { width:max-content; font-size:1.82rem; font-weight:850; letter-spacing:-.075em; line-height:1; }
.wordmark span { color:var(--brick); }
.site-header nav { display:none; }
.header-apply { display:inline-flex; align-items:center; gap:8px; font-size:.74rem; font-weight:750; }
.header-apply b,.button b,.role-card b { font-size:1.45em; font-weight:400; line-height:0; transition:transform .18s ease; }
.hero-grid { display:grid; grid-template-columns:1fr; }
.hero-copy { padding:47px 0 0; }
.hero-copy h1,.intro-statement h2,.section-heading h2,.approach-copy h2,.apply-copy h2 { margin:0; font-family:"Arial Black","Helvetica Neue",Arial,sans-serif; font-weight:900; letter-spacing:-.075em; }
.hero-copy h1 { max-width:650px; font-size:clamp(3.25rem,15.2vw,4.7rem); line-height:.89; }
.title-mark { display:block; width:35px; height:1px; margin:30px 0 24px; background:var(--blue-deep); }
.hero-lead { max-width:500px; margin:0; color:var(--ink-soft); font-size:1rem; line-height:1.5; }
.fact-rail { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:28px 0 0; padding:14px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); list-style:none; }
.fact-rail li { min-width:0; padding:0 9px; color:var(--ink-soft); font-size:.69rem; line-height:1.32; }
.fact-rail li:first-child { padding-left:0; }.fact-rail li+li { border-left:1px solid var(--line); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:60px; padding:0 23px; border:0; border-radius:13px; cursor:pointer; font-size:.95rem; font-weight:700; transition:transform .18s ease,background .18s ease; }
.hero-button { width:100%; margin-top:26px; background:var(--brick); color:#fff; }
.hero-button:hover,.submit-button:hover { background:var(--brick-dark); transform:translateY(-2px); }.hero-button:hover b,.submit-button:hover b,.role-card a:hover b { transform:translateX(5px); }
.hero-reassurance { margin:13px 0 34px; color:var(--ink-soft); font-size:.72rem; }
.hero-visual { min-height:430px; margin:0 -20px; overflow:hidden; background:var(--blue-mist); }.hero-visual img { display:block; width:100%; height:100%; object-fit:cover; object-position:center 48%; }
.section-label { margin:0 0 17px; color:var(--brick); font-size:.63rem; font-weight:800; letter-spacing:.14em; line-height:1.45; }
.intro-section { display:grid; gap:31px; padding:82px 0; }.intro-statement h2,.section-heading h2,.approach-copy h2,.apply-copy h2 { font-size:clamp(2.75rem,12.8vw,4rem); line-height:.92; }.intro-copy { max-width:510px; margin:0; color:var(--ink-soft); font-size:1rem; line-height:1.62; }
.roles-section { padding:78px 0 84px; background:var(--forest); color:var(--cream); }.roles-section .section-label,.approach-section .section-label { color:#e3a39b; }.section-heading { display:grid; gap:25px; margin-bottom:34px; }.section-heading>p { max-width:450px; margin:0; color:rgba(248,245,237,.69); font-size:.95rem; line-height:1.58; }
.role-grid { display:grid; gap:12px; }.role-card { display:flex; min-height:315px; flex-direction:column; padding:20px; border:1px solid rgba(248,245,237,.28); background:rgba(248,245,237,.028); transition:transform .18s ease,background .18s ease,color .18s ease; }.role-card:hover { background:var(--cream); color:var(--ink); transform:translateY(-4px); }.role-top { display:flex; align-items:center; justify-content:space-between; color:#e3a39b; font-size:.65rem; font-weight:800; letter-spacing:.12em; }.role-card h3 { margin:38px 0 15px; font-family:Georgia,"Times New Roman",serif; font-size:2.65rem; font-weight:400; letter-spacing:-.07em; line-height:.92; }.role-card>p { margin:0; font-size:.9rem; line-height:1.52; opacity:.74; }.role-card ul { display:flex; flex-wrap:wrap; gap:7px; margin:24px 0; padding:0; list-style:none; }.role-card li { padding:6px 9px; border:1px solid currentColor; border-radius:999px; font-size:.65rem; opacity:.82; }.role-card a { display:flex; width:100%; align-items:center; justify-content:space-between; margin-top:auto; padding:14px 0 0; border-top:1px solid currentColor; font-size:.8rem; font-weight:700; }
.approach-section { padding:78px 0; background:var(--blue-mist); }.approach-grid { display:grid; gap:45px; }.approach-list { border-top:1px solid rgba(45,34,30,.35); }.approach-list article { display:grid; grid-template-columns:38px 1fr; gap:13px; padding:22px 0; border-bottom:1px solid rgba(45,34,30,.35); }.approach-list article>span { color:var(--brick); font-size:.65rem; font-weight:800; letter-spacing:.1em; }.approach-list h3 { margin:0 0 8px; font-family:Georgia,"Times New Roman",serif; font-size:1.45rem; font-weight:400; letter-spacing:-.04em; }.approach-list p { margin:0; color:var(--ink-soft); font-size:.88rem; line-height:1.55; }
.apply-section { display:grid; gap:40px; padding:82px 0 90px; }.apply-copy>p:not(.section-label) { max-width:500px; margin:24px 0 0; color:var(--ink-soft); font-size:1rem; line-height:1.6; }.apply-copy ul { display:grid; gap:10px; margin:25px 0 0; padding:0; list-style:none; color:var(--ink-soft); font-size:.78rem; }.apply-copy li::first-letter { color:var(--blue-deep); }.apply-form { display:grid; gap:17px; padding:19px; border:1px solid var(--line); background:rgba(255,255,255,.34); box-shadow:7px 7px 0 rgba(172,73,53,.12); }.apply-form label { display:grid; gap:8px; }.apply-form label>span { color:var(--ink-soft); font-size:.64rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.apply-form input,.apply-form select { width:100%; min-height:54px; padding:0 14px; border:1px solid var(--line); border-radius:8px; outline:0; background:var(--cream); color:var(--ink); }.apply-form input:focus,.apply-form select:focus { border-color:var(--blue-deep); box-shadow:0 0 0 3px rgba(121,153,154,.2); }.submit-button { width:100%; margin-top:3px; border-radius:9px; background:var(--forest); color:var(--cream); }.form-note { margin:0; color:var(--ink-soft); font-size:.72rem; line-height:1.45; }
.site-footer { display:grid; grid-template-columns:1fr auto; align-items:center; min-height:84px; border-top:1px solid var(--line); }.site-footer p { display:none; }.site-footer>a:last-child { justify-self:end; font-size:.73rem; font-weight:700; }

@media (min-width:761px) {
  .page-width { width:min(100% - 100px,1480px); }
  .hero-shell { min-height:885px; background:linear-gradient(90deg,var(--cream) 0 51.7%,var(--blue-mist) 51.7% 100%); }
  .site-header { display:grid; grid-template-columns:1fr auto 1fr; min-height:108px; border:0; }.site-header nav { display:flex; gap:clamp(25px,3.6vw,61px); align-items:center; font-size:.73rem; font-weight:700; letter-spacing:.02em; text-transform:uppercase; }.site-header nav a { transition:color .18s ease; }.site-header nav a:hover { color:var(--brick); }.header-apply { display:none; }
  .hero-grid { grid-template-columns:51.7% 48.3%; min-height:735px; }.hero-copy { display:flex; flex-direction:column; justify-content:center; padding:69px 60px 98px 0; }.hero-copy h1 { font-size:clamp(4rem,5.55vw,6.3rem); line-height:.91; }.title-mark { margin:31px 0 27px; }.hero-lead { font-size:clamp(1rem,1.2vw,1.18rem); }.fact-rail { margin-top:46px; padding:17px 0; }.fact-rail li { padding:0 24px; font-size:clamp(.76rem,.94vw,.95rem); white-space:nowrap; }.hero-button { width:max-content; min-width:306px; margin-top:46px; padding:0 29px; }.hero-reassurance { margin-bottom:0; }.hero-visual { min-height:100%; margin:0; }.hero-visual img { object-position:center; }
  .intro-section { grid-template-columns:1.25fr .75fr; gap:clamp(60px,10vw,170px); align-items:end; padding:118px 0; }.intro-statement h2,.section-heading h2,.approach-copy h2,.apply-copy h2 { font-size:clamp(3.2rem,4.6vw,5.7rem); }.intro-copy { margin:0 0 8px; }.roles-section { padding:116px 0 126px; }.section-heading { grid-template-columns:1.12fr .58fr; gap:clamp(55px,10vw,165px); align-items:end; margin-bottom:51px; }.role-grid { grid-template-columns:repeat(3,1fr); gap:16px; }.role-card { min-height:386px; padding:24px; }.role-card h3 { margin-top:53px; font-size:clamp(2.65rem,3.5vw,3.5rem); }
  .approach-section { padding:118px 0; }.approach-grid { grid-template-columns:.78fr 1.22fr; gap:clamp(60px,10vw,170px); }.approach-list article { grid-template-columns:55px 1fr; gap:22px; padding:27px 0; }.approach-list h3 { font-size:1.62rem; }.apply-section { grid-template-columns:.82fr 1.18fr; gap:clamp(65px,11vw,180px); padding:124px 0 132px; }.apply-form { grid-template-columns:1fr 1fr; padding:30px; box-shadow:11px 11px 0 rgba(172,73,53,.12); }.apply-form .field-wide,.apply-form .submit-button,.form-note { grid-column:1/-1; }.site-footer { grid-template-columns:1fr auto 1fr; min-height:100px; }.site-footer p { display:block; margin:0; color:var(--ink-soft); font-size:.75rem; }
}
@media (min-width:1160px) { .hero-copy { padding-right:83px; }.hero-visual { margin-right:-15px; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms!important; transition-duration:.01ms!important; } }
:focus-visible { outline:2px solid var(--brick); outline-offset:4px; }
