/*
Theme Name: Niles HR Consultancy v1.0.4
Theme URI: https://niles.co.ke
Author: Niles Human Resource Management and Consultancy Limited
Author URI: https://niles.co.ke
Description: A polished, accessible, Elementor-compatible classic WordPress theme for human resource management and consultancy firms.
Version: 1.0.4
Requires at least: 5.8
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: niles-hr-v104
Tags: one-column, two-columns, custom-logo, custom-menu, featured-images, full-width-template, translation-ready
*/

:root { --niles-navy:#09243A; --niles-blue:#1261C9; --niles-green:#0B8F4D; --niles-gold:#F4B400; --niles-red:#E83E3E; --niles-paper:#F6F8F7; --niles-ink:#14212B; --niles-muted:#5C6972; --niles-line:#DCE5E2; --niles-radius:18px; --niles-shadow:0 22px 70px rgba(9,36,58,.12); }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:#fff;color:var(--niles-ink);font-family:'Manrope',system-ui,sans-serif;line-height:1.65} a{color:var(--niles-blue);text-decoration:none} a:hover{text-decoration:underline} img{max-width:100%;height:auto} .screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important} .screen-reader-text:focus{background:#fff;clip:auto!important;clip-path:none;color:#000;display:block;font-size:1rem;height:auto;left:5px;padding:15px 20px;top:5px;width:auto;z-index:100000}
.site-shell{overflow:hidden}.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.eyebrow{color:var(--niles-green);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.display-title{font-family:'Space Grotesk',sans-serif;font-size:clamp(2.9rem,6vw,6.4rem);letter-spacing:-.07em;line-height:.96;margin:.7rem 0 1.5rem;color:var(--niles-navy)}.section-title{font-family:'Space Grotesk',sans-serif;font-size:clamp(2.1rem,4vw,4.2rem);letter-spacing:-.055em;line-height:1.02;color:var(--niles-navy);margin:.45rem 0 1.25rem}.lead{font-size:1.12rem;color:var(--niles-muted);max-width:650px}.topbar{background:var(--niles-navy);color:#dfeaf0;font-size:.78rem}.topbar-inner{min-height:37px;display:flex;justify-content:space-between;align-items:center;gap:18px}.topbar a{color:#fff}.topbar-items{display:flex;gap:20px;flex-wrap:wrap}.site-header{background:#fff;border-bottom:1px solid rgba(220,229,226,.8);position:relative;z-index:10}.header-inner{min-height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.custom-logo-link{display:block;max-width:300px}.custom-logo{display:block;max-height:74px;width:auto}.main-navigation ul{display:flex;gap:28px;align-items:center;list-style:none;margin:0;padding:0}.main-navigation a{color:var(--niles-navy);font-size:.82rem;font-weight:800}.main-navigation a:hover{color:var(--niles-green);text-decoration:none}.menu-toggle{display:none;background:transparent;border:1px solid var(--niles-line);padding:10px 12px;border-radius:8px;font-weight:700}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 22px;border-radius:999px;background:var(--niles-green);color:#fff;font-weight:800;font-size:.84rem;border:0;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.button:hover{background:#08723c;color:#fff;text-decoration:none;transform:translateY(-2px);box-shadow:0 10px 26px rgba(11,143,77,.22)}.button:active{transform:scale(.97)}.button-blue{background:var(--niles-blue)}.button-ghost{background:transparent;color:var(--niles-navy);border:1px solid var(--niles-line)}.button-ghost:hover{background:var(--niles-paper);color:var(--niles-navy)}.hero{background:var(--niles-paper);padding:clamp(72px,10vw,140px) 0 110px;position:relative}.hero:after{content:'';position:absolute;inset:auto -10% -90px 48%;height:190px;background:var(--niles-gold);transform:rotate(-5deg);opacity:.92}.hero-grid{display:grid;grid-template-columns:1fr .93fr;gap:7vw;align-items:center;position:relative;z-index:1}.hero-copy{max-width:650px}.hero-copy .accent{color:var(--niles-blue);font-style:italic}.hero-art{position:relative}.hero-card{background:#fff;padding:12px;border-radius:var(--niles-radius);box-shadow:var(--niles-shadow);transform:rotate(2deg)}.hero-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}.stripe{display:flex;height:8px;width:104px;margin:22px 0 25px}.stripe span{flex:1}.stripe span:nth-child(1){background:var(--niles-red)}.stripe span:nth-child(2){background:var(--niles-navy)}.stripe span:nth-child(3){background:var(--niles-gold)}.stripe span:nth-child(4){background:var(--niles-green)}.section{padding:110px 0}.section-paper{background:var(--niles-paper)}.intro-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:9vw;align-items:start}.number{color:var(--niles-blue);font:700 1rem 'Space Grotesk',sans-serif;letter-spacing:.1em}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}.service-card{padding:32px 28px 34px;border-top:4px solid var(--niles-blue);background:#fff;min-height:260px;transition:transform .2s ease,box-shadow .2s ease}.service-card:nth-child(2){border-color:var(--niles-green)}.service-card:nth-child(3){border-color:var(--niles-gold)}.service-card:hover{transform:translateY(-6px);box-shadow:var(--niles-shadow)}.service-card h3{font:700 1.3rem 'Space Grotesk',sans-serif;color:var(--niles-navy);margin:40px 0 12px}.service-card p{color:var(--niles-muted);font-size:.94rem}.service-index{font:700 2.1rem 'Space Grotesk',sans-serif;color:var(--niles-navy);opacity:.18}.split-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center}.image-frame{position:relative;padding:13px;background:#fff;box-shadow:var(--niles-shadow)}.image-frame img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.image-frame:before{content:'';position:absolute;width:90px;height:90px;background:var(--niles-green);left:-30px;bottom:-30px;z-index:-1}.approach-list{list-style:none;margin:38px 0 0;padding:0;border-top:1px solid var(--niles-line)}.approach-list li{display:grid;grid-template-columns:50px 1fr;gap:15px;padding:20px 0;border-bottom:1px solid var(--niles-line)}.approach-list strong{font-family:'Space Grotesk',sans-serif;color:var(--niles-navy)}.approach-list p{margin:4px 0 0;color:var(--niles-muted);font-size:.92rem}.process{background:var(--niles-navy);color:#fff}.process .section-title{color:#fff}.process .eyebrow{color:var(--niles-gold)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:58px}.process-step{padding:0 25px;border-left:1px solid rgba(255,255,255,.25)}.process-step:first-child{padding-left:0;border:0}.process-step span{color:var(--niles-gold);font:700 2rem 'Space Grotesk',sans-serif}.process-step h3{color:#fff;font:700 1.1rem 'Space Grotesk',sans-serif;margin:18px 0 9px}.process-step p{color:#bdcbd2;font-size:.88rem}.cta{background:var(--niles-gold);padding:74px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta .section-title{margin:0;max-width:690px}.cta .button{background:var(--niles-navy)}.site-footer{background:#061b2b;color:#c6d1d5;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:7vw;padding-bottom:55px}.footer-brand img{background:#fff;padding:9px;border-radius:8px;max-width:290px}.footer-title{color:#fff;font:700 1rem 'Space Grotesk',sans-serif;margin:0 0 15px}.footer-list{list-style:none;margin:0;padding:0}.footer-list li{margin:8px 0;font-size:.88rem}.footer-list a{color:#c6d1d5}.footer-note{border-top:1px solid rgba(255,255,255,.14);padding-top:20px;font-size:.76rem;display:flex;justify-content:space-between;gap:20px}.elementor-page .site-content{max-width:none}.widget{margin-bottom:25px}.wp-block-button__link{background:var(--niles-green);border-radius:999px}
@media(max-width:900px){.main-navigation{display:none}.menu-toggle{display:block}.hero-grid,.split-grid,.intro-grid{grid-template-columns:1fr}.hero-art{max-width:720px;margin:30px auto 0}.services-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr;gap:35px}.process-step:nth-child(3){border-left:0;padding-left:0}.footer-grid{grid-template-columns:1fr 1fr}.cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.container{width:min(100% - 34px,1180px)}.topbar-inner{padding:9px 0;align-items:flex-start;flex-direction:column;gap:2px}.header-inner{min-height:78px}.custom-logo-link{max-width:220px}.custom-logo{max-height:62px}.hero{padding:70px 0 90px}.services-grid,.process-grid,.footer-grid{grid-template-columns:1fr}.process-step,.process-step:nth-child(3){border-left:0;padding:0;border-top:1px solid rgba(255,255,255,.25);padding-top:22px}.process-step:first-child{border:0;padding-top:0}.footer-note{flex-direction:column}.section{padding:76px 0}}

/* Civic Precision additions: detailed services catalogue and native WordPress inquiry form. */
.services-grid{align-items:start}.service-card:nth-child(4){margin-top:18px}.service-card:nth-child(5){margin-top:42px}.service-card:nth-child(6){margin-top:66px}.contact-section{background:var(--niles-gold);padding:110px 0}.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:9vw;align-items:start}.contact-grid>div:first-child .lead{color:rgba(9,36,58,.72);font-size:1rem}.contact-details{display:flex;flex-wrap:wrap;gap:18px;margin-top:27px}.contact-details a{color:var(--niles-navy);font-size:.8rem;font-weight:800;border-bottom:1px solid rgba(9,36,58,.35);padding-bottom:4px}.inquiry-form-wrap{min-width:0}.inquiry-form{background:#fff;padding:32px;box-shadow:var(--niles-shadow);display:flex;flex-direction:column;gap:17px}.inquiry-form label{display:flex;flex-direction:column;gap:7px;color:var(--niles-navy);font-size:.72rem;font-weight:800}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;border:1px solid var(--niles-line);background:#fbfcfb;color:var(--niles-ink);border-radius:4px;padding:12px 13px;font:500 .78rem 'Manrope',sans-serif;outline:none}.inquiry-form textarea{resize:vertical;min-height:120px}.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{border-color:var(--niles-green);box-shadow:0 0 0 3px rgba(11,143,77,.13)}.inquiry-form .button{align-self:flex-start}.inquiry-form>small{color:var(--niles-muted);font-size:.65rem}.niles-form-notice{margin-bottom:14px;padding:14px 16px;background:#fff;font-size:.78rem;font-weight:700}.niles-form-success{border-left:4px solid var(--niles-green)}.niles-form-error{border-left:4px solid var(--niles-red)}
@media(max-width:900px){.service-card:nth-child(4),.service-card:nth-child(5),.service-card:nth-child(6){margin-top:0}.contact-grid{grid-template-columns:1fr;gap:35px}}
@media(max-width:600px){.form-row{grid-template-columns:1fr}.inquiry-form{padding:22px}.service-card:nth-child(2),.service-card:nth-child(3){margin-top:0}}

/* Civic Precision compact navigation: reduced chrome height with preserved accessibility. */
.topbar{font-size:.68rem}.topbar-inner{min-height:30px}.header-inner{min-height:72px}.custom-logo-link{max-width:230px}.custom-logo{max-height:58px}.main-navigation ul{gap:20px}.main-navigation a{font-size:.74rem}.header-cta{padding:11px 16px}.site-footer{padding:44px 0 18px}.footer-grid{padding-bottom:30px}.footer-brand img{max-width:235px}.footer-note{padding-top:15px}
@media(max-width:900px){.main-navigation ul{gap:14px;flex-wrap:wrap}.custom-logo-link{max-width:220px}}
@media(max-width:600px){.header-inner{min-height:66px}.custom-logo-link{max-width:205px}.custom-logo{max-height:54px}.site-footer{padding:36px 0 16px}.footer-grid{padding-bottom:24px}}

/* Civic Precision sticky navigation: elevated on scroll with subtle underline motion. */
.site-header{position:sticky;top:0;z-index:50;transition:box-shadow .22s ease,background-color .22s ease}.site-header.scrolled{background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(9,36,58,.11);backdrop-filter:blur(12px)}.main-navigation a{position:relative;padding:7px 0;transition:color .18s ease,transform .18s ease}.main-navigation a:after{content:'';position:absolute;left:0;right:100%;bottom:1px;height:2px;background:var(--niles-green);transition:right .22s cubic-bezier(.23,1,.32,1)}.main-navigation a:hover:after,.main-navigation a:focus-visible:after{right:0}.main-navigation a:hover{transform:translateY(-1px)}.main-navigation a:focus-visible,.menu-toggle:focus-visible{outline:3px solid rgba(18,97,201,.35);outline-offset:4px}.site-header.scrolled .header-inner{min-height:64px}.site-header.scrolled .custom-logo{max-height:52px}.header-cta{transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.header-cta:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(18,97,201,.2)}
@media(max-width:600px){.site-header.scrolled .header-inner{min-height:60px}.site-header.scrolled .custom-logo{max-height:48px}}
@media(prefers-reduced-motion:reduce){.site-header,.main-navigation a,.main-navigation a:after,.header-cta{transition:none}}

/* Civic Precision fixed header: permanently pinned below the utility bar. */
.site-header{position:fixed;top:30px;left:0;right:0;z-index:60}.site-header + .site-content{padding-top:72px}.custom-logo-link{max-width:225px}.custom-logo{max-height:52px}.site-header.scrolled .header-inner{min-height:60px}.site-header.scrolled .custom-logo{max-height:46px}
@media(max-width:600px){.site-header{top:30px}.site-header + .site-content{padding-top:66px}.custom-logo-link{max-width:200px}.custom-logo{max-height:48px}.site-header.scrolled .header-inner{min-height:56px}.site-header.scrolled .custom-logo{max-height:42px}}

/* Civic Precision careers template: open-role discovery with filter controls and responsive cards. */
.careers-page{padding-top:0}.careers-hero{background:var(--niles-navy);color:#fff;padding:105px 0 88px}.careers-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:8vw;align-items:end}.careers-hero h1{color:#fff;max-width:720px;margin-bottom:22px}.careers-hero h1 em{color:var(--niles-gold)}.careers-hero p{max-width:580px;color:#c1d0d5;font-size:1rem;line-height:1.8}.careers-hero .eyebrow{color:var(--niles-gold)}.careers-hero-note{border-left:1px solid rgba(255,255,255,.3);padding-left:25px;display:flex;flex-direction:column;align-items:flex-start}.careers-hero-note span{color:#c1d0d5;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.careers-hero-note strong{font:700 5.7rem/.9 'Space Grotesk';color:var(--niles-gold);margin:14px 0}.careers-hero-note small{color:#c1d0d5;font-size:.7rem;line-height:1.6}.careers-listing{padding:95px 0 110px;background:var(--niles-paper)}.listing-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.listing-head h2{margin-bottom:0}.listing-head>p{max-width:310px;margin:0;color:var(--niles-muted);font-size:.82rem}.job-tools{display:flex;gap:12px;align-items:center;margin:42px 0 28px}.job-tools select,.search-field{height:44px;border:1px solid var(--niles-line);background:#fff;color:var(--niles-navy);padding:0 13px;font:700 .7rem 'Manrope',sans-serif}.search-field{display:flex;align-items:center;gap:9px;flex:1;max-width:410px}.search-field input{border:0;outline:0;width:100%;font:500 .75rem 'Manrope',sans-serif;color:var(--niles-ink)}.job-tools select{min-width:160px}.jobs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.job-card{background:#fff;border-top:3px solid var(--niles-green);padding:25px 26px 23px;min-height:270px;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.job-card:nth-child(2){border-color:var(--niles-blue);margin-top:23px}.job-card:nth-child(3){border-color:var(--niles-gold)}.job-card:nth-child(4){border-color:var(--niles-red);margin-top:23px}.job-card:hover{transform:translateY(-5px);box-shadow:var(--niles-shadow)}.job-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.job-team{color:var(--niles-green);font-size:.63rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.job-type{color:var(--niles-muted);font-size:.63rem}.job-card h3{font-size:1.7rem;letter-spacing:-.04em;margin:37px 0 10px}.job-card p{color:var(--niles-muted);font-size:.75rem;line-height:1.7;margin:0 0 22px}.job-meta{display:flex;gap:18px;color:var(--niles-muted);font-size:.63rem;margin-top:auto}.job-link{color:var(--niles-navy);font-size:.7rem;font-weight:800;margin-top:22px}.job-link:hover{color:var(--niles-green)}.empty-jobs{grid-column:1/-1;background:#fff;border-left:3px solid var(--niles-gold);padding:22px;color:var(--niles-muted);font-size:.82rem}.empty-jobs p{margin:0}.careers-note{background:var(--niles-gold);padding:72px 0}.careers-note-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.careers-note h2{max-width:650px;margin-bottom:0}.careers-note .button{background:var(--niles-navy)}
@media(max-width:900px){.careers-hero-grid{grid-template-columns:1fr}.careers-hero-note{border-left:0;border-top:1px solid rgba(255,255,255,.3);padding:25px 0 0}.job-tools{flex-wrap:wrap}.search-field{max-width:none;flex-basis:100%}.jobs-grid{grid-template-columns:1fr}.job-card:nth-child(2),.job-card:nth-child(4){margin-top:0}.careers-note-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.careers-hero{padding:76px 0 70px}.careers-hero-note strong{font-size:4.4rem}.careers-listing{padding:72px 0 80px}.listing-head{align-items:flex-start;flex-direction:column;gap:16px}.job-tools select{flex:1;min-width:0}.job-card{min-height:0}.careers-note{padding:58px 0}}

/* Navigation readability refinement: larger menu wording with preserved fixed-header balance. */
.main-navigation ul{gap:18px}.main-navigation a{font-size:.84rem;font-weight:800}.header-cta{font-size:.78rem}.main-navigation .menu-item a{font-size:.84rem}
@media(max-width:900px){.main-navigation a,.main-navigation .menu-item a{font-size:.82rem}}
@media(max-width:600px){.main-navigation a,.main-navigation .menu-item a{font-size:.95rem}}

/* Civic Precision About template: grounded narrative sections with editorial hierarchy. */
.about-hero{background:var(--niles-navy);color:#fff;padding:112px 0 96px}.about-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.about-hero h1{color:#fff;max-width:700px;margin-bottom:22px}.about-hero h1 em{color:var(--niles-gold)}.about-hero p{color:#c3d0d6;max-width:580px;font-size:1rem;line-height:1.8}.about-hero .eyebrow{color:var(--niles-gold)}.about-hero-aside{border-left:1px solid rgba(255,255,255,.3);padding-left:25px;display:flex;flex-direction:column;align-items:flex-start}.about-hero-aside span{color:#c3d0d6;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.about-hero-aside strong{font:700 2.7rem/.98 'Space Grotesk';letter-spacing:-.06em;margin:17px 0;color:#fff}.about-hero-aside small{color:#c3d0d6;font-size:.7rem;line-height:1.6}.about-story-grid{display:grid;grid-template-columns:.58fr 1.42fr;gap:10vw}.about-story h2,.about-approach h2{max-width:680px}.about-body{color:var(--niles-muted);font-size:.94rem;line-height:1.8;max-width:650px}.text-link{display:inline-flex;align-items:center;gap:7px;color:var(--niles-green);font-size:.75rem;font-weight:800;margin-top:14px}.about-values{background:var(--niles-paper)}.values-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.values-head>p{max-width:350px;color:var(--niles-muted);font-size:.8rem;line-height:1.8;margin:0}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:55px}.values-grid article{background:#fff;padding:28px;border-top:3px solid var(--niles-blue);min-height:190px}.values-grid article:nth-child(2){border-color:var(--niles-green);margin-top:22px}.values-grid article:nth-child(3){border-color:var(--niles-gold);margin-top:44px}.values-grid span{font:700 1.75rem 'Space Grotesk';color:var(--niles-navy);opacity:.18}.values-grid h3{font-size:1.5rem;margin:28px 0 9px}.values-grid p{color:var(--niles-muted);font-size:.75rem;line-height:1.7;margin:0}.about-checks{list-style:none;padding:0;margin:32px 0 28px;border-top:1px solid var(--niles-line);max-width:520px}.about-checks li{display:flex;align-items:center;gap:12px;padding:17px 0;border-bottom:1px solid var(--niles-line);color:var(--niles-navy);font:700 .88rem 'Space Grotesk'}.about-quote{background:var(--niles-gold);padding:82px 0}.about-quote blockquote{font:700 clamp(2rem,5vw,4.1rem)/1.03 'Space Grotesk';letter-spacing:-.07em;color:var(--niles-navy);max-width:820px;margin:18px 0}.about-quote p{font-size:.7rem;color:rgba(9,36,58,.7);font-weight:800}
@media(max-width:900px){.about-hero-grid,.about-story-grid{grid-template-columns:1fr}.about-hero-aside{border-left:0;border-top:1px solid rgba(255,255,255,.3);padding:25px 0 0}.values-head{align-items:flex-start;flex-direction:column;gap:15px}.values-grid{grid-template-columns:1fr 1fr}.values-grid article:nth-child(2),.values-grid article:nth-child(3){margin-top:0}}
@media(max-width:600px){.about-hero{padding:76px 0 70px}.values-grid{grid-template-columns:1fr}.about-quote{padding:60px 0}}

/* Civic Precision Services template: official eight-service catalogue with responsive editorial rhythm. */
.services-hero{background:var(--niles-navy);color:#fff;padding:112px 0 96px}.services-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.services-hero h1{color:#fff;max-width:700px}.services-hero h1 em{color:var(--niles-gold)}.services-hero p{color:#c3d0d6;max-width:570px;font-size:1rem;line-height:1.8}.services-hero .eyebrow{color:var(--niles-gold)}.services-hero-aside{border-left:1px solid rgba(255,255,255,.3);padding-left:25px}.services-hero-aside span{color:#c3d0d6;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.services-hero-aside strong{display:block;color:#fff;font:700 2.65rem/.98 'Space Grotesk';letter-spacing:-.06em;margin-top:17px}.services-hero-aside em{color:var(--niles-gold);font-style:italic}.services-catalogue{padding:110px 0;background:var(--niles-paper)}.catalogue-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.catalogue-head h2{margin-bottom:0}.catalogue-head>p{max-width:330px;color:var(--niles-muted);font-size:.8rem;line-height:1.8;margin:0}.services-catalogue-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:58px}.catalogue-card{background:#fff;border-top:3px solid var(--niles-blue);padding:27px 28px 28px;min-height:280px;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.catalogue-card:nth-child(2){border-color:var(--niles-green);margin-top:26px}.catalogue-card:nth-child(3){border-color:var(--niles-gold)}.catalogue-card:nth-child(4){border-color:var(--niles-red);margin-top:26px}.catalogue-card:nth-child(5){border-color:var(--niles-blue)}.catalogue-card:nth-child(6){border-color:var(--niles-green);margin-top:26px}.catalogue-card:nth-child(7){border-color:var(--niles-gold)}.catalogue-card:nth-child(8){border-color:var(--niles-red);margin-top:26px}.catalogue-card:hover{transform:translateY(-5px);box-shadow:var(--niles-shadow)}.catalogue-card-no{font:700 1.9rem 'Space Grotesk';color:var(--niles-navy);opacity:.17}.catalogue-card h3{font-size:1.55rem;letter-spacing:-.04em;margin:34px 0 10px}.catalogue-card p{font-size:.75rem;line-height:1.7}.catalogue-short{color:var(--niles-navy);font-weight:700;margin:0 0 8px}.catalogue-detail{color:var(--niles-muted);margin:0}.catalogue-card a{color:var(--niles-green);font-size:.7rem;font-weight:800;margin-top:auto;padding-top:20px}.services-cta{background:var(--niles-gold);padding:72px 0}.services-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.services-cta h2{margin:9px 0 12px}.services-cta p{color:rgba(9,36,58,.72);font-size:.88rem;margin:0}.services-cta .button{background:var(--niles-navy)}
@media(max-width:900px){.services-hero-grid{grid-template-columns:1fr}.services-hero-aside{border-left:0;border-top:1px solid rgba(255,255,255,.3);padding:25px 0 0}.catalogue-head{align-items:flex-start;flex-direction:column;gap:16px}.services-catalogue-grid{grid-template-columns:1fr}.catalogue-card:nth-child(2),.catalogue-card:nth-child(4),.catalogue-card:nth-child(6),.catalogue-card:nth-child(8){margin-top:0}.services-cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.services-hero{padding:76px 0 70px}.services-catalogue{padding:76px 0}.catalogue-card{min-height:0}.services-cta{padding:58px 0}}

/* Civic Precision content interactions: application modal, contact map, inquiry form, and Insights grid. */
.job-link{border:0;background:none;padding:0;cursor:pointer;font:700 .7rem 'Manrope',sans-serif;color:var(--niles-navy)}.application-backdrop{position:fixed;inset:0;z-index:100;background:rgba(5,24,40,.72);display:grid;place-items:center;padding:20px}.application-backdrop[hidden]{display:none}.application-modal{position:relative;background:#fff;color:var(--niles-navy);width:min(640px,100%);max-height:92vh;overflow:auto;padding:38px;box-shadow:0 24px 80px rgba(0,0,0,.28)}.application-modal h2{font-size:clamp(1.8rem,5vw,3rem);margin:18px 0 10px}.application-modal h2 em{color:var(--niles-blue)}.application-modal>p{color:var(--niles-muted);font-size:.8rem;margin-bottom:24px}.modal-close{position:absolute;right:18px;top:18px;border:0;background:transparent;color:var(--niles-navy);font-size:1.5rem;padding:8px;cursor:pointer}.application-modal form{display:grid;gap:15px}.application-modal label{display:grid;gap:7px;font-size:.65rem;font-weight:800;color:var(--niles-navy)}.application-modal input,.application-modal textarea{border:1px solid var(--niles-line);padding:12px;font:500 .75rem 'Manrope',sans-serif;outline:0}.application-modal input:focus,.application-modal textarea:focus{border-color:var(--niles-green);box-shadow:0 0 0 3px rgba(17,145,83,.12)}.application-modal small{color:var(--niles-muted);font-size:.65rem}.contact-hero,.insights-hero{background:var(--niles-navy);color:#fff;padding:112px 0 96px}.contact-hero-grid,.insights-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.contact-hero h1,.insights-hero h1{color:#fff;max-width:700px}.contact-hero h1 em,.insights-hero h1 em{color:var(--niles-gold)}.contact-hero p,.insights-hero p{color:#c3d0d6;max-width:570px;font-size:1rem;line-height:1.8}.contact-hero .eyebrow,.insights-hero .eyebrow{color:var(--niles-gold)}.contact-hero-note,.insights-hero-aside{border-left:1px solid rgba(255,255,255,.3);padding-left:25px}.contact-hero-note span,.insights-hero-aside span{color:#c3d0d6;font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.contact-hero-note strong,.insights-hero-aside strong{display:block;color:#fff;font:700 2.4rem/.98 'Space Grotesk';letter-spacing:-.06em;margin-top:17px}.contact-details-section{padding:105px 0;background:var(--niles-paper)}.contact-details-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:center}.contact-info h2{margin:18px 0 35px}.contact-info h2 em{color:var(--niles-blue)}.contact-info-list{display:grid;gap:18px}.contact-info-list a{display:flex;gap:13px;align-items:flex-start;color:var(--niles-navy);font-size:.8rem;font-weight:700}.contact-info-list a span:first-child{color:var(--niles-green);min-width:35px}.map-wrap{position:relative;background:#d9e1dd;border:8px solid #fff;box-shadow:var(--niles-shadow);overflow:hidden}.map-wrap iframe{width:100%;height:390px;border:0;display:block;filter:saturate(.72)}.map-label{position:absolute;left:18px;bottom:18px;background:var(--niles-navy);color:#fff;padding:10px 12px;font-size:.7rem;font-weight:800}.contact-inquiry{background:var(--niles-gold);padding:90px 0}.contact-inquiry-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start}.contact-inquiry h2{margin:15px 0}.contact-inquiry h2 em{color:var(--niles-blue)}.contact-inquiry p{max-width:350px;color:rgba(9,36,58,.72);font-size:.8rem;line-height:1.8}.contact-inquiry .inquiry-form,.contact-inquiry .form-success{background:#fff;padding:28px;box-shadow:var(--niles-shadow)}.insights-grid-section{padding:105px 0;background:var(--niles-paper)}.insights-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.insights-head h2{margin-bottom:0}.insights-head>p{max-width:340px;color:var(--niles-muted);font-size:.8rem;line-height:1.8;margin:0}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:56px}.post-card{background:#fff;border-top:3px solid var(--niles-blue);padding:25px 25px 27px;min-height:290px;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.post-card:nth-child(2){border-color:var(--niles-green);margin-top:25px}.post-card:nth-child(3){border-color:var(--niles-gold)}.post-card:nth-child(4){border-color:var(--niles-red);margin-top:25px}.post-card:nth-child(5){border-color:var(--niles-blue)}.post-card:nth-child(6){border-color:var(--niles-green);margin-top:25px}.post-card:hover{transform:translateY(-5px);box-shadow:var(--niles-shadow)}.post-card-top{display:flex;justify-content:space-between;gap:15px;align-items:center}.post-card-top span{color:var(--niles-green);font-size:.63rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.post-card-top small{color:var(--niles-muted);font-size:.63rem}.post-card h3{font-size:1.4rem;line-height:1.08;letter-spacing:-.04em;margin:42px 0 12px}.post-card p{color:var(--niles-muted);font-size:.75rem;line-height:1.7;margin:0}.post-card a{color:var(--niles-navy);font-size:.7rem;font-weight:800;margin-top:auto;padding-top:23px}.insights-cta{background:var(--niles-gold);padding:72px 0}.insights-cta-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.insights-cta h2{margin:10px 0 0}.insights-cta h2 em{color:var(--niles-blue)}.insights-cta .button{background:var(--niles-navy)}
@media(max-width:900px){.contact-hero-grid,.insights-hero-grid,.contact-details-grid,.contact-inquiry-grid{grid-template-columns:1fr}.contact-hero-note,.insights-hero-aside{border-left:0;border-top:1px solid rgba(255,255,255,.3);padding:25px 0 0}.map-wrap{order:-1}.post-grid{grid-template-columns:1fr 1fr}.post-card:nth-child(2),.post-card:nth-child(4),.post-card:nth-child(6){margin-top:0}.insights-head{align-items:flex-start;flex-direction:column;gap:16px}.insights-cta-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.application-modal{padding:28px 20px}.contact-hero,.insights-hero{padding:76px 0 70px}.contact-details-section,.insights-grid-section{padding:76px 0}.map-wrap iframe{height:300px}.post-grid{grid-template-columns:1fr}.contact-inquiry{padding:65px 0}}

/* Civic Precision pre-footer newsletter: a distinct navy transition between page content and the footer. */
.newsletter-section{background:var(--niles-navy);color:#fff;padding:64px 0;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.newsletter-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.newsletter-copy{max-width:460px}.newsletter-kicker{color:var(--niles-gold);font-size:.65rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px}.newsletter-copy h2{color:#fff;font:700 clamp(1.75rem,3vw,2.6rem)/1.02 'Space Grotesk',sans-serif;letter-spacing:-.05em;margin:0 0 10px}.newsletter-copy p:last-child{color:#b7c6cd;margin:0;font-size:.8rem;line-height:1.7}.newsletter-form{display:flex;gap:8px;align-items:center}.newsletter-form input{min-width:250px;background:#fff;border:0;padding:13px 14px;color:var(--niles-navy);font:500 .75rem 'Manrope',sans-serif;outline:0}.newsletter-form input:focus{box-shadow:0 0 0 3px rgba(244,180,0,.45)}.newsletter-form button{display:flex;align-items:center;gap:7px;border:0;background:var(--niles-green);color:#fff;padding:13px 16px;font:800 .7rem 'Manrope',sans-serif;cursor:pointer;transition:transform .18s ease,background .18s ease}.newsletter-form button:hover{background:var(--niles-gold);color:var(--niles-navy);transform:translateY(-2px)}@media(max-width:650px){.newsletter-inner{align-items:flex-start;flex-direction:column;gap:20px}.newsletter-form{width:100%}.newsletter-form input{min-width:0;flex:1;width:100%}}
/* Civic Precision newsletter feedback: progress and confirmation are clear, calm, and accessible. */
.newsletter-label{font-size:11px;color:#b7c6cd;white-space:nowrap}.newsletter-form button[aria-busy="true"]{cursor:wait;opacity:.84}.newsletter-form button:disabled{cursor:wait}.newsletter-spinner{width:1em;height:1em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;display:inline-block;vertical-align:-.16em;animation:niles-spin .7s linear infinite}@keyframes niles-spin{to{transform:rotate(360deg)}}.newsletter-success{display:flex;align-items:center;gap:12px;color:#fff}.newsletter-success .success-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--niles-green);color:#fff;font-weight:800}.newsletter-success strong{display:block;font:700 1rem/1.2 'Space Grotesk',sans-serif}.newsletter-success p{margin:3px 0 0;color:#b7c6cd;font-size:.72rem}.newsletter-reset{margin-left:12px;color:var(--niles-gold);font-size:.7rem;font-weight:800}.newsletter-error{margin-right:18px;max-width:240px;color:#ffd7d7;font-size:.72rem;line-height:1.5}.newsletter-form[aria-busy="true"]{opacity:.86}@media(max-width:650px){.newsletter-label{white-space:normal}.newsletter-success{align-items:flex-start;flex-wrap:wrap}.newsletter-reset{margin:0 0 0 42px}.newsletter-error{margin:0 0 8px;max-width:none}}
/* Civic Precision unified sticky chrome: the contact details and navigation stay together at the viewport top. */
.site-chrome{position:fixed;top:0;left:0;right:0;z-index:100;box-shadow:0 10px 28px rgba(9,36,58,.10)}
.site-chrome .topbar{font-size:.84rem}
.site-chrome .topbar-inner{min-height:38px}
.site-chrome .topbar-items{gap:24px}
.site-chrome .topbar a{font-weight:800}
.site-chrome .site-header{position:relative;top:auto;left:auto;right:auto;z-index:auto}
.site-chrome .header-inner{min-height:82px}
.site-chrome .custom-logo-link{max-width:270px}
.site-chrome .custom-logo{max-height:62px}
.site-chrome .main-navigation a{font-size:.82rem}
.site-chrome .site-header.scrolled .header-inner{min-height:76px}
.site-chrome .site-header.scrolled .custom-logo{max-height:58px}
.site-chrome + .site-content{padding-top:120px}
@media(max-width:900px){.site-chrome .header-inner{min-height:76px}.site-chrome .custom-logo-link{max-width:250px}.site-chrome .custom-logo{max-height:58px}.site-chrome .main-navigation ul{gap:14px}}
@media(max-width:600px){.site-chrome .topbar{font-size:.74rem}.site-chrome .topbar-inner{min-height:48px;padding:8px 0;gap:3px}.site-chrome .topbar-items{gap:12px}.site-chrome .header-inner{min-height:70px}.site-chrome .custom-logo-link{max-width:225px}.site-chrome .custom-logo{max-height:53px}.site-chrome + .site-content{padding-top:118px}}

/* Civic Precision preview-parity footer: use the same signature stripe, editorial columns, spacing, and responsive rhythm as the React preview. */
.footer{background:#061b2b;color:#c6d1d5;padding:70px 0 24px;position:relative}
.footer-signature{position:absolute;top:0;right:9%;width:180px;height:8px;display:flex}
.footer-signature i{display:block;flex:1;height:8px}
.footer-signature i:nth-child(1){background:var(--niles-red)}
.footer-signature i:nth-child(2){background:var(--niles-blue)}
.footer-signature i:nth-child(3){background:var(--niles-gold)}
.footer-signature i:nth-child(4){background:var(--niles-green)}
.footer-grid{display:grid;grid-template-columns:1.25fr .7fr .8fr;gap:8vw;padding-bottom:55px}
.footer-brand img{display:block;max-width:260px;background:#fff;border-radius:8px;padding:8px}
.footer-brand p{max-width:340px;font-size:.75rem;line-height:1.8;margin-top:20px}
.footer h3{color:#fff;font:700 .94rem/1.2 'Space Grotesk',sans-serif;letter-spacing:-.02em;margin:2px 0 15px}
.footer a,.footer p{display:block;color:#c6d1d5;font-size:.75rem;line-height:1.8;margin:6px 0}
.footer a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#89a0aa;font-size:.625rem}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:42px}.footer-brand{grid-column:1 / -1}}
@media(max-width:600px){.footer{padding:50px 0 18px}.footer-signature{right:17px;width:160px}.footer-grid{grid-template-columns:1fr;gap:30px;padding-bottom:30px}.footer-brand{grid-column:auto}.footer-bottom{align-items:flex-start;flex-direction:column;gap:5px}}

