/* Finch Employment, site styles (concept 1 "Goldfinch") */
:root{--navy:#0F1B2A;--navy2:#18283B;--gold:#F2C230;--gold-d:#8A6A00;--ink:#0F1B2A;--muted:#4A5563;--line:#E2E6EB;--bg:#F7F8FA;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.6;font-size:16px}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:"Bricolage Grotesque",Manrope,sans-serif;line-height:1.08;margin:0;overflow-wrap:break-word}
p{margin:0 0 1em}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip:focus{position:fixed;left:12px;top:12px;width:auto;height:auto;clip:auto;background:#fff;color:var(--navy);padding:10px 14px;border-radius:8px;z-index:100}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:999px;text-decoration:none;border:0;font:inherit;font-weight:700;cursor:pointer;transition:transform .2s;text-align:center}
.btn:hover{transform:translateY(-1px)}
.btn-gold{background:var(--gold);color:var(--navy)}.btn-navy{background:var(--navy);color:#fff}.btn-line{border:2px solid currentColor;background:transparent}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

/* header */
.top{background:var(--navy);color:#fff;position:relative;z-index:20}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 24px;max-width:1240px;margin:0 auto}
.nav{display:flex;align-items:center;gap:22px;font-weight:600;font-size:15px}
.nav a{color:#E4E8ED;text-decoration:none}.nav a:hover{color:var(--gold)}.nav .muted{color:#9AA6B2}
.nav .btn-gold{color:var(--navy)}
.dd{position:relative}
.dd>a::after{content:"";display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:0 0 3px 8px}
.dd-panel{display:none;position:absolute;left:-20px;top:100%;padding-top:14px}
.dd-in{background:#fff;color:var(--ink);border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.25);padding:22px;display:grid;gap:18px}
.dd-in.mega{grid-template-columns:repeat(5,minmax(160px,1fr));width:min(1080px,92vw)}
.dd-in.locs{grid-template-columns:repeat(2,minmax(190px,1fr));width:min(460px,90vw)}
.dd-in .all{grid-column:1/-1;border-top:1px solid var(--line);padding-top:10px}
.dd-in.list{width:280px}
.dd-in h3{font-family:Manrope;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-d);margin-bottom:8px}
.dd-in ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.dd-in a{color:var(--ink);font-weight:600;font-size:14.5px;display:block;padding:4px 0}.dd-in a:hover{color:var(--gold-d)}
.dd:hover .dd-panel,.dd:focus-within .dd-panel{display:block}
.menu-btn{display:none;background:none;border:2px solid #fff;color:#fff;border-radius:10px;min-height:44px;padding:0 14px;font:inherit;font-weight:700}
@media (max-width:1100px){
 .menu-btn{display:inline-flex;align-items:center}
 .nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--navy);flex-direction:column;align-items:flex-start;padding:12px 24px 28px;max-height:calc(100vh - 90px);overflow:auto}
 .nav.open{display:flex}
 .dd-panel{display:none!important}
 .dd>a::after{display:none}
}

/* breadcrumb */
.crumbs{background:var(--navy);color:#AEB8C4;font-size:14px}
.crumbs ol{list-style:none;margin:0 auto;padding:6px 24px 0;max-width:1240px;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"›";margin-right:6px;color:#6B7785}
.crumbs a{color:#C9D1DB}.crumbs [aria-current]{color:#fff}

/* hero */
.hero{background:var(--navy);color:#fff;padding:48px 0 88px}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.hero .wrap>*{min-width:0}
.eyebrow{display:block;font-family:Manrope,sans-serif;font-size:14px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;line-height:1.5}
.hero h1{font-size:clamp(40px,5.6vw,72px);font-weight:800;letter-spacing:-1.5px}
.hero.home h1{font-size:clamp(44px,6.2vw,80px);letter-spacing:-2px}
.hero .lead{font-size:20px;color:#C9D1DB;margin:22px 0 0;max-width:600px}
.hero figure{margin:0;position:relative}.hero figure img{border-radius:24px;aspect-ratio:16/10;object-fit:cover;width:100%}
.badge{position:absolute;left:-18px;bottom:-34px;max-width:360px;background:#fff;color:var(--navy);border-radius:16px;padding:16px 18px;box-shadow:0 14px 34px rgba(0,0,0,.25);font-size:14.5px}
.badge .stars{color:#B7791F;letter-spacing:2px}.badge small{display:block;color:var(--muted);margin-top:6px}
.hero.slim{padding:40px 0 64px}.hero.slim .wrap{grid-template-columns:1fr}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr}.badge{position:static;margin-top:14px;max-width:none}}

/* sections */
section.s{padding:88px 0}
.s h2{font-size:clamp(32px,4.2vw,50px);font-weight:800;letter-spacing:-1.2px}
.kicker{font-weight:700;letter-spacing:2px;text-transform:uppercase;font-size:13px;color:var(--gold-d);margin:0 0 12px}
.sub{font-size:18px;color:var(--muted);max-width:700px;margin:14px 0 0}
.white{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.center{text-align:center}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
.pillar{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px}
.pillar .n{width:44px;height:44px;border-radius:12px;background:var(--gold);display:grid;place-items:center;font-weight:800}
.pillar h3{font-size:24px;margin:18px 0 8px}.pillar p{margin:0;color:var(--muted)}
@media (max-width:980px){.pillars{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.pillars{grid-template-columns:1fr}}

/* industry cards */
.group{margin-top:44px}.gt{font-size:22px;margin-bottom:16px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card{background:var(--bg);border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column}
.white .card{background:var(--bg)}.card.on-bg{background:#fff}
.card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.card .body{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}
.card h3,.card h4{font-size:20px;margin:0 0 6px}
.card h3 a,.card h4 a{text-decoration:none}.card h3 a:hover,.card h4 a:hover{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:3px}
.card p{margin:0;color:var(--muted);font-size:15px}
.roles{font-size:13.5px;line-height:1.7;margin-top:10px!important;padding-top:10px;border-top:1px solid rgba(127,127,127,.28);color:var(--ink)!important}
.roles a{text-decoration:none;border-bottom:1px solid rgba(15,27,42,.25)}.roles a:hover{border-color:var(--gold-d);color:var(--gold-d)}
.more{margin-top:auto;padding-top:14px;font-weight:700;font-size:15px}
.more a{text-decoration:none;color:var(--gold-d)}.more a:hover{text-decoration:underline}
@media (max-width:1060px){.cards{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.cards{grid-template-columns:1fr 1fr}}@media (max-width:480px){.cards{grid-template-columns:1fr}}
.cards.three{grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.cards.three{grid-template-columns:1fr 1fr}}@media (max-width:560px){.cards.three{grid-template-columns:1fr}}

/* steps */
.steps{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;counter-reset:s}
.steps li{border-top:4px solid var(--gold);padding-top:22px;counter-increment:s}
.steps h3{font-size:21px}.steps h3::before{content:counter(s) ". "}.steps p{color:var(--muted);margin:10px 0 0}
@media (max-width:900px){.steps{grid-template-columns:1fr 1fr}}@media (max-width:520px){.steps{grid-template-columns:1fr}}
.fee{margin-top:36px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px 24px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center}
.white .fee{background:var(--bg)}

/* services */
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.svc{background:var(--navy);color:#fff;border-radius:22px;overflow:hidden;display:flex;flex-direction:column}
.svc img{aspect-ratio:16/10;object-fit:cover;width:100%}.svc .body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:10px;flex:1}
.svc h3{font-size:26px}.svc h3 a{text-decoration:none}.svc p{margin:0;color:#C9D1DB;flex:1}.svc .go{color:var(--gold);font-weight:700}
@media (max-width:900px){.services{grid-template-columns:1fr 1fr}}@media (max-width:600px){.services{grid-template-columns:1fr}}
.ref{margin-top:24px;background:var(--gold);border-radius:22px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;align-items:center}
.ref img{height:100%;object-fit:cover}.ref .body{padding:40px}.ref h3{font-size:34px}.ref p{font-size:18px;margin:12px 0 22px}
@media (max-width:800px){.ref{grid-template-columns:1fr}.ref .body{padding:28px}}

/* reviews */
.rv{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.rv figure{margin:0;background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:14px}
.white .rv figure{background:var(--bg)}
.rv .stars{color:#B7791F;letter-spacing:2px}.rv blockquote{margin:0;font-size:17px;flex:1}.rv figcaption{font-size:14px;color:var(--muted);font-weight:600}
@media (max-width:900px){.rv{grid-template-columns:1fr}}

/* faq */
.faq{max-width:880px}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-of-type{border-bottom:1px solid var(--line)}
.faq summary{font-size:19px;font-weight:700;cursor:pointer}.faq details p{margin:10px 0 0;color:var(--muted)}

/* article layout (category/role/service pages) */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
@media (max-width:980px){.layout{grid-template-columns:1fr}}
.prose{font-size:17.5px}.prose p{color:#2B3644}
.prose h2{font-size:clamp(26px,3vw,34px);font-weight:800;letter-spacing:-.6px;margin:48px 0 16px}
.prose h2:first-child{margin-top:0}
.prose ul{padding-left:0;list-style:none;margin:0 0 1em;display:grid;gap:10px}
.prose ul li{position:relative;padding-left:30px}
.prose ul li::before{content:"";position:absolute;left:0;top:.45em;width:16px;height:16px;border-radius:5px;background:var(--gold)}
.prose ol.q{padding-left:22px;display:grid;gap:10px}
.box{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px 28px;margin:28px 0}
.box h2{margin-top:0!important}
.aside{position:sticky;top:20px;display:grid;gap:16px}
.aside .card-cta{background:var(--navy);color:#fff;border-radius:20px;padding:26px}
.aside .card-cta h2{font-size:24px;margin-bottom:10px}.aside .card-cta p{color:#C9D1DB}
.aside .card-cta .btn{width:100%;margin-top:8px}
.aside .card-list{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px 24px}
.aside .card-list h2{font-size:18px;margin-bottom:10px}
.aside ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.aside li a{text-decoration:none;font-weight:600}.aside li a:hover{color:var(--gold-d)}.aside li [aria-current]{color:var(--gold-d)}
@media (max-width:980px){.aside{position:static}}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:16px 0 0}
.chips a{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;text-decoration:none;font-weight:600;font-size:14.5px}
.chips a:hover{border-color:var(--gold-d);color:var(--gold-d)}
.points{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px}
.points div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}
.points b{display:block;font-family:"Bricolage Grotesque";font-size:30px;color:var(--gold-d);line-height:1}
.points p{margin:10px 0 0;color:#2B3644}
@media (max-width:640px){.points{grid-template-columns:1fr}}
.az{columns:4 220px;column-gap:32px;margin-top:32px}
.az section{break-inside:avoid;margin-bottom:28px}
.az h3{font-size:20px;margin-bottom:8px}.az h3 a{text-decoration:none}
.az ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.az li a{text-decoration:none}.az li a:hover{color:var(--gold-d);text-decoration:underline}

/* contact band + forms */
.cta{background:var(--gold);padding:88px 0}.cta .wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}
.cta .wrap>*{min-width:0}
.cta h2{font-size:clamp(32px,4vw,48px);font-weight:800;letter-spacing:-1px}
.appt{display:inline-flex;align-items:center;gap:8px;background:rgba(15,27,42,.08);border-radius:999px;padding:8px 14px;font-weight:700;font-size:14px;margin-top:18px}
form.enq{background:#fff;border-radius:22px;padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:0}
form.enq>*{min-width:0}
form.enq label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700}
form.enq input,form.enq select,form.enq textarea{width:100%;min-width:0;height:48px;border:1px solid #C9CFD6;border-radius:10px;padding:0 12px;font:inherit;font-weight:400;background:#fff;color:var(--ink)}
form.enq textarea{height:100px;padding:10px 12px}
form.enq input[type=file]{height:auto;padding:10px 0;border:0}
form.enq .full{grid-column:1/-1}
form.enq .check{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400}
form.enq .check input{height:auto;width:18px;margin-top:3px;flex:0 0 18px}
form.enq .note{font-size:13px;color:var(--muted);font-weight:400}
.on-bg form.enq,.seek form.enq{background:var(--bg);border:1px solid var(--line)}
@media (max-width:860px){.cta .wrap{grid-template-columns:1fr}form.enq{grid-template-columns:1fr}}
.seek{padding:72px 0;background:#fff}.seek .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;align-items:start}.seek .wrap>*{min-width:0}
@media (max-width:860px){.seek .wrap{grid-template-columns:1fr}}
.strip{background:#fff;border-top:1px solid var(--line);padding:40px 0}.strip .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px}
.map{border:0;width:100%;height:340px;border-radius:20px}

/* footer */
footer{background:var(--navy);color:#C9D1DB;padding:64px 0 36px;font-size:15px}
footer a{color:#E4E8ED}
footer .cols{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:32px}
footer h2{font-family:Manrope;color:#fff;margin:0 0 12px;font-size:15px;letter-spacing:.5px}
footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
footer .inds{margin-top:44px;padding-top:32px;border-top:1px solid #22344A}
footer .inds ul{display:grid;grid-template-columns:repeat(4,1fr);gap:8px 24px}
footer .inds a{text-decoration:none}footer .inds a:hover{text-decoration:underline}
footer .legal{margin-top:36px;padding-top:22px;border-top:1px solid #22344A;font-size:13px;color:#8E9AA8;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}
@media (max-width:900px){footer .cols{grid-template-columns:1fr 1fr}footer .inds ul{grid-template-columns:1fr 1fr}}
@media (max-width:480px){footer .cols,footer .inds ul{grid-template-columns:1fr}}

/* Oct 29 additions */
.cards.two{grid-template-columns:repeat(2,1fr)}@media (max-width:760px){.cards.two{grid-template-columns:1fr}}
.cards.loc{grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.cards.loc{grid-template-columns:1fr 1fr}}@media (max-width:560px){.cards.loc{grid-template-columns:1fr}}
.cards .more a{font-weight:700}
.chips.static span{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-weight:600;font-size:14.5px}
.tbl{overflow-x:auto;margin-top:28px;border:1px solid var(--line);border-radius:18px;background:#fff}
.tbl table{width:100%;border-collapse:collapse;min-width:480px}
.tbl th,.tbl td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top;font-size:15.5px}
.tbl th{font-family:Manrope;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-d);background:var(--bg)}
.tbl tr:last-child td{border-bottom:0}.tbl td:first-child{font-weight:700;width:38%}
.where{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}
.where .col{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px 26px}
.where h3{font-size:22px;margin:0 0 12px}
.where ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}
.where a{font-weight:600;text-decoration:none}.where a:hover{color:var(--gold-d);text-decoration:underline}
@media (max-width:760px){.where{grid-template-columns:1fr}}
footer .locs{margin-top:28px}footer .locs ul{display:flex;flex-wrap:wrap;gap:6px 22px;list-style:none;padding:0;margin:0}footer .locs a{text-decoration:none}footer .locs a:hover{text-decoration:underline}
.prose ul.chips{display:flex;flex-wrap:wrap;gap:8px}.prose ul.chips li{padding-left:0}.prose ul.chips li::before{display:none}
@media (min-width:1101px){.top .bar{position:relative}.dd.megadd{position:static}.dd.megadd .dd-panel{left:50%;transform:translateX(-50%);top:calc(100% - 38px);padding-top:16px}.dd.megadd>a{position:relative}.dd.megadd>a::before{content:"";position:absolute;left:-16px;right:-16px;top:100%;height:30px}}
.rolelinks{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rolelinks a{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;text-decoration:none;color:inherit;height:100%}
.rolelinks a:hover{border-color:var(--gold-d)}.rolelinks strong{font-size:17px}.rolelinks span{font-size:14px;color:var(--gold-d);font-weight:600}
@media (max-width:900px){.rolelinks{grid-template-columns:1fr 1fr}}@media (max-width:560px){.rolelinks{grid-template-columns:1fr}}
