/*
Theme Name: CrestHaus Elite Staffing Theme
Theme URI: https://cresthausstaffing.com
Author: CrestHaus Staffing Group
Description: Elementor-friendly CrestHaus hospitality and event staffing theme. Includes working native forms (client staffing request + applicant application with resume upload), submissions stored in the WordPress dashboard with filtering, and email notifications. Bar roles appear on the price list only, not in the main menu.
Version: 7.2.0
License: GPLv2 or later
Text Domain: cresthaus-elite
Tags: custom-logo, custom-menu, full-width-template, block-styles, elementor
*/

:root{
  --ch-bg:#FFFFFF;
  --ch-surface:#FFFFFF;
  --ch-surface-2:#F7F4EE;
  --ch-panel:#D8CBB8;
  --ch-text:#111111;
  --ch-muted:#3A3A3A;
  --ch-soft:#6B6256;
  --ch-line:rgba(17,17,17,.16);
  --ch-accent:#C8B8A0;
  --ch-accent-2:#D8CBB8;
  --ch-button-bg:#111111;
  --ch-button-text:#FFFFFF;
  --ch-shadow:0 26px 70px rgba(17,17,17,.12);
  --ch-serif:Georgia,'Times New Roman',serif;
  --ch-sans:Inter,Arial,sans-serif;
  --ch-header-logo-width:390px;
  --ch-header-logo-mobile-width:300px;
  --ch-nav-font-size:15px;
  --ch-hero-logo-height:168px;
  --ch-header-bg:rgba(255,255,255,.96);
  --ch-header-border:rgba(17,17,17,.14);
  --ch-header-nav:#3A3A3A;
  --ch-header-nav-hover:#111111;
  --ch-header-cta-bg:#111111;
  --ch-header-cta-text:#FFFFFF;
  --ch-header-cta-border:#111111;
  --ch-header-cta-hover-bg:#C8B8A0;
  --ch-header-cta-hover-text:#111111;
  --ch-header-max-width:2400px;
  --ch-header-padding-y:14px;
  --ch-header-padding-x:28px;
  --ch-nav-gap:24px;
}

body.ch-palette-sand{
  --ch-bg:#FFFFFF;
  --ch-surface:#FFFFFF;
  --ch-surface-2:#F7F4EE;
  --ch-panel:#D8CBB8;
  --ch-text:#111111;
  --ch-muted:#3A3A3A;
  --ch-soft:#6B6256;
  --ch-line:rgba(17,17,17,.16);
  --ch-accent:#C8B8A0;
  --ch-accent-2:#D8CBB8;
  --ch-button-bg:#111111;
  --ch-button-text:#FFFFFF;
  --ch-shadow:0 26px 70px rgba(17,17,17,.12);
}


body.ch-palette-ivory{
  --ch-bg:#F4F0E8;
  --ch-surface:#FFFDF8;
  --ch-surface-2:#EEE7DA;
  --ch-panel:#0B1628;
  --ch-text:#0A0A0A;
  --ch-muted:#403B34;
  --ch-soft:#6F695F;
  --ch-line:rgba(11,22,40,.18);
  --ch-accent:#8A8175;
  --ch-accent-2:#0B1628;
  --ch-button-bg:#111111;
  --ch-button-text:#FFFFFF;
  --ch-shadow:0 26px 70px rgba(11,22,40,.12);
}
body.ch-palette-navy{
  --ch-bg:#07101F;
  --ch-surface:#0B1628;
  --ch-surface-2:#111B2E;
  --ch-panel:#050505;
  --ch-text:#F4F0E8;
  --ch-muted:#D7D0C4;
  --ch-soft:#A69F93;
  --ch-line:rgba(232,224,209,.18);
  --ch-accent:#C8BFAF;
  --ch-accent-2:#F4F0E8;
  --ch-button-bg:#F4F0E8;
  --ch-button-text:#07101F;
  --ch-shadow:0 26px 70px rgba(0,0,0,.36);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--ch-bg);color:var(--ch-text);font-family:var(--ch-sans);font-size:16px;line-height:1.6;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;height:auto;}
button,input,select,textarea{font-family:inherit;}
.site-main{min-height:62vh;background:var(--ch-bg);}
.ch-wrap{max-width:1240px;margin:0 auto;padding:0 24px;}
.ch-wide{max-width:1440px;margin:0 auto;padding:0 24px;}
/* Desktop header v2.8: fixed competitor-style single row.
   Layout: logo locked to the far left | menu aligned after logo | Request Quote locked far right.
   This version does not allow the CTA to drop under the logo on desktop. */
.ch-site-header{position:sticky;top:0;z-index:999;background:var(--ch-header-bg);border-bottom:1px solid var(--ch-header-border);backdrop-filter:blur(14px);}
.ch-header-inner{width:100%;max-width:none;margin:0;padding:var(--ch-header-padding-y) var(--ch-header-padding-x);box-sizing:border-box;}
.ch-header-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;width:100%;min-height:92px;gap:clamp(18px,2.2vw,42px);}
.ch-site-logo{display:flex;align-items:center;justify-content:flex-start;flex:0 0 auto;width:min(var(--ch-header-logo-width),410px);max-width:26vw;min-width:330px;justify-self:start;}
.ch-site-logo img,.ch-site-logo .custom-logo{width:100% !important;max-width:100%;height:auto !important;display:block;object-fit:contain;}
body.ch-palette-ivory .ch-site-logo img,body.ch-palette-sand .ch-site-logo img{filter:invert(1) brightness(.2);}
.ch-main-nav{display:flex;align-items:center;justify-content:flex-end;flex:1 1 auto;min-width:0;width:auto;overflow:visible;margin-left:clamp(14px,2vw,36px);}
.ch-main-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:flex-end;gap:clamp(16px,1.3vw,var(--ch-nav-gap));flex-wrap:nowrap;width:auto;min-width:0;}
.ch-main-nav li{position:relative;flex:0 0 auto;}
.ch-main-nav a{display:block;color:var(--ch-header-nav);font-size:clamp(13px,.82vw,var(--ch-nav-font-size));font-weight:900;letter-spacing:.13em;text-transform:uppercase;transition:.22s ease;white-space:nowrap;line-height:1.2;}
.ch-main-nav a:hover,.ch-main-nav .current-menu-item>a{color:var(--ch-header-nav-hover);}
/* Clean submenu v3.1: same alignment for Services and Resources.
   Dropdown starts from the parent item, and every submenu label is locked left with no centre indentation. */
.ch-main-nav .sub-menu{position:absolute;left:0 !important;top:100%;display:block;min-width:250px;width:max-content;max-width:340px;background:var(--ch-surface);border:1px solid var(--ch-line);box-shadow:var(--ch-shadow);margin:0 !important;padding:8px 0 !important;list-style:none !important;opacity:0;visibility:hidden;transform:translateY(12px) !important;transition:.22s ease;text-align:left !important;}
.ch-main-nav li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0) !important;}
.ch-main-nav .sub-menu li{display:block !important;margin:0 !important;padding:0 !important;list-style:none !important;width:100%;list-style-type:none !important;text-align:left !important;}
.ch-main-nav .sub-menu a,.ch-main-nav .sub-menu .menu-item a{display:flex !important;align-items:center !important;justify-content:flex-start !important;width:100%;box-sizing:border-box;margin:0 !important;padding:12px 18px !important;text-align:left !important;text-indent:0 !important;letter-spacing:.14em;color:var(--ch-muted);font-size:12px;font-weight:750;line-height:1.35;}
.ch-main-nav .sub-menu a::before,.ch-main-nav .sub-menu a::after{display:none !important;content:none !important;}
.ch-main-nav .sub-menu a:hover{background:rgba(184,177,164,.08);color:var(--ch-bg);}
body:not(.ch-palette-ivory) .ch-main-nav .sub-menu a:hover{color:var(--ch-text);}
.ch-header-cta{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ch-header-cta-border);background:var(--ch-header-cta-bg);padding:15px 24px;color:var(--ch-header-cta-text);font-size:13px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;transition:.22s ease;white-space:nowrap;flex:0 0 auto;min-width:190px;line-height:1.15;margin-left:clamp(14px,1.8vw,34px);}
.ch-header-cta:hover{background:var(--ch-header-cta-hover-bg);color:var(--ch-header-cta-hover-text);border-color:var(--ch-header-cta-hover-bg);}
.ch-mobile-note{display:none;color:var(--ch-soft);font-size:11px;text-transform:uppercase;letter-spacing:.18em;}
.ch-site-footer{background:var(--ch-bg);border-top:1px solid var(--ch-line);}
.ch-footer-top{max-width:1240px;margin:0 auto;padding:64px 24px;display:grid;grid-template-columns:1.35fr .75fr .75fr .9fr;gap:38px;}
.ch-footer-logo{width:310px;max-width:100%;margin-bottom:20px;}
body.ch-palette-ivory .ch-footer-logo,body.ch-palette-sand .ch-footer-logo{filter:invert(1) brightness(.2);}
.ch-footer-top p,.ch-footer-top a{color:var(--ch-muted);line-height:1.75;}
.ch-footer-top h4{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--ch-text);margin:0 0 18px;}
.ch-footer-top ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.ch-footer-bottom{border-top:1px solid var(--ch-line);padding:20px 24px;text-align:center;color:var(--ch-soft);font-size:13px;}
.ch-kicker{font-size:12px;letter-spacing:.32em;text-transform:uppercase;color:var(--ch-accent);margin:0 0 16px;}
.ch-title,.ch-hero-title{font-family:var(--ch-serif);font-weight:400;letter-spacing:.025em;line-height:1.05;margin:0;color:var(--ch-text);}
.ch-title{font-size:clamp(38px,4.4vw,62px);}
.ch-hero-title{font-size:clamp(48px,6.6vw,92px);}
.ch-subtitle{font-size:18px;line-height:1.85;color:var(--ch-muted);margin:24px 0 0;max-width:760px;}
.ch-text{color:var(--ch-muted);line-height:1.82;}
.ch-section{background:var(--ch-bg);color:var(--ch-text);padding:94px 0;position:relative;overflow:hidden;}
.ch-section.alt{background:var(--ch-panel);}
.ch-section.surface{background:var(--ch-surface);}
body.ch-palette-ivory .ch-section.alt{color:#F4F0E8;}
body.ch-palette-ivory .ch-section.alt .ch-title,body.ch-palette-ivory .ch-section.alt .ch-card h3{color:#F4F0E8;}
body.ch-palette-ivory .ch-section.alt .ch-text,body.ch-palette-ivory .ch-section.alt .ch-subtitle,body.ch-palette-ivory .ch-section.alt .ch-lead{color:#D7D0C4;}
.ch-section-head{max-width:820px;margin:0 auto 52px;text-align:center;}
.ch-section-head .ch-subtitle{margin-left:auto;margin-right:auto;}
.ch-button{display:inline-block;border:1px solid var(--ch-button-bg);background:var(--ch-button-bg);color:var(--ch-button-text);padding:15px 25px;font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;transition:.25s ease;cursor:pointer;}
.ch-button:hover{background:transparent;color:var(--ch-button-bg);}
.ch-button.outline{background:transparent;color:var(--ch-text);border-color:var(--ch-accent);}
.ch-button.outline:hover{background:var(--ch-accent);border-color:var(--ch-accent);color:#111111;}
.ch-button.small{padding:12px 18px;font-size:11px;}
.ch-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:36px;}
.ch-centered{text-align:center;}
.ch-hero{min-height:84vh;display:flex;align-items:center;background:radial-gradient(circle at 78% 4%,rgba(184,177,164,.12),transparent 28%),linear-gradient(135deg,var(--ch-bg) 0%,var(--ch-surface) 42%,var(--ch-panel) 100%);padding:110px 0 96px;position:relative;overflow:hidden;}
.ch-hero:before{content:"";position:absolute;inset:40px;border:1px solid var(--ch-line);pointer-events:none;}
.ch-hero:after{content:"";position:absolute;right:-130px;top:-130px;width:420px;height:420px;border-radius:999px;background:rgba(184,177,164,.11);filter:blur(60px);}
.ch-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center;}
.ch-hero-card{border:1px solid var(--ch-line);background:color-mix(in srgb,var(--ch-surface) 90%,transparent);box-shadow:var(--ch-shadow);padding:34px;}
.ch-hero-card-inner{border:1px solid var(--ch-line);padding:34px;}
.ch-hero-logo{display:block;margin:0 auto 34px;max-height:var(--ch-hero-logo-height);width:auto;object-fit:contain;}
body.ch-palette-ivory .ch-hero-logo,body.ch-palette-sand .ch-hero-logo{filter:invert(1) brightness(.2);}
.ch-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.ch-stat{border:1px solid var(--ch-line);padding:20px;text-align:center;}
.ch-stat strong{display:block;font-family:var(--ch-serif);font-size:34px;font-weight:400;line-height:1;color:var(--ch-text);}
.ch-stat span{display:block;margin-top:9px;color:var(--ch-accent);font-size:11px;letter-spacing:.16em;text-transform:uppercase;}
.ch-logo-strip{border-top:1px solid var(--ch-line);border-bottom:1px solid var(--ch-line);background:var(--ch-surface);padding:24px 0;}
.ch-logo-strip-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;align-items:center;}
.ch-logo-box{border:1px solid var(--ch-line);padding:18px 12px;text-align:center;color:var(--ch-soft);font-size:11px;letter-spacing:.2em;text-transform:uppercase;}
.ch-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.ch-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.ch-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.ch-card{border:1px solid var(--ch-line);background:var(--ch-surface);padding:32px;min-height:100%;transition:.25s ease;}
.ch-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--ch-accent) 70%,transparent);box-shadow:var(--ch-shadow);}
.ch-card h3{font-family:var(--ch-serif);font-size:29px;font-weight:400;line-height:1.15;color:var(--ch-text);margin:0 0 14px;}
.ch-card p{color:var(--ch-muted);line-height:1.78;margin:0 0 18px;}
.ch-card .num{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px;color:var(--ch-accent);font-size:12px;letter-spacing:.22em;text-transform:uppercase;}
.ch-card .num:after{content:"";width:46px;height:1px;background:var(--ch-line);}
.ch-card-link{display:inline-block;margin-top:8px;color:var(--ch-accent);font-size:11px;letter-spacing:.2em;text-transform:uppercase;}
.ch-feature-split{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center;}
.ch-feature-img{min-height:420px;border:1px solid var(--ch-line);background:linear-gradient(145deg,var(--ch-surface) 0%,var(--ch-panel) 100%);position:relative;overflow:hidden;box-shadow:var(--ch-shadow);}
.ch-feature-img:before{content:"";position:absolute;inset:30px;border:1px solid var(--ch-line);}
.ch-feature-img:after{content:attr(data-label);position:absolute;left:34px;bottom:30px;color:var(--ch-accent);font-size:12px;letter-spacing:.22em;text-transform:uppercase;}
.ch-feature-img .mark{position:absolute;right:32px;top:32px;width:88px;opacity:.25;}
body.ch-palette-ivory .ch-feature-img .mark,body.ch-palette-sand .ch-feature-img .mark{filter:invert(1);opacity:.16;}
.ch-lead{font-size:20px;line-height:1.8;color:var(--ch-muted);}
.ch-tick-list{display:grid;gap:14px;margin:28px 0 0;padding:0;list-style:none;}
.ch-tick-list li{border-left:1px solid var(--ch-accent);padding-left:15px;color:var(--ch-muted);}
.ch-mini-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:28px;}
.ch-mini-list div{border-left:1px solid var(--ch-accent);padding-left:15px;color:var(--ch-text);font-size:13px;letter-spacing:.13em;text-transform:uppercase;line-height:1.6;}
.ch-testimonial{border:1px solid var(--ch-line);background:var(--ch-surface);padding:30px;}
.ch-stars{color:var(--ch-accent);letter-spacing:.15em;margin-bottom:16px;}
.ch-quote{font-family:var(--ch-serif);font-size:25px;line-height:1.45;color:var(--ch-text);}
.ch-byline{color:var(--ch-soft);font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-top:18px;}
.ch-gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;}
.ch-gallery-item{min-height:180px;background:linear-gradient(145deg,var(--ch-surface) 0%,var(--ch-panel) 100%);border:1px solid var(--ch-line);padding:18px;display:flex;align-items:flex-end;color:var(--ch-accent);font-size:11px;letter-spacing:.18em;text-transform:uppercase;}
.ch-faq{border-top:1px solid var(--ch-line);}
.ch-faq details{border-bottom:1px solid var(--ch-line);padding:22px 0;}
.ch-faq summary{cursor:pointer;font-family:var(--ch-serif);font-size:24px;color:var(--ch-text);}
.ch-faq p{color:var(--ch-muted);max-width:820px;}
.ch-process-card .step{font-family:var(--ch-serif);font-size:64px;line-height:1;color:var(--ch-accent);margin-bottom:20px;}
.ch-uniform-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.ch-uniform{border:1px solid var(--ch-line);background:var(--ch-surface);padding:24px;}
.ch-uniform h3{font-family:var(--ch-serif);font-size:26px;font-weight:400;margin:0 0 10px;}
.ch-uniform p{color:var(--ch-muted);font-size:15px;line-height:1.7;margin:0;}
.ch-rate-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin:0 0 26px;}
.ch-filter-group{display:flex;gap:10px;flex-wrap:wrap;}
.ch-filter-btn{border:1px solid var(--ch-line);background:var(--ch-surface);color:var(--ch-muted);padding:10px 14px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;}
.ch-filter-btn.active,.ch-filter-btn:hover{border-color:var(--ch-accent);color:var(--ch-text);}
.ch-rate-search{min-width:260px;border:1px solid var(--ch-line);background:var(--ch-surface);color:var(--ch-text);padding:12px 14px;}
.ch-price-table{width:100%;border-collapse:collapse;border:1px solid var(--ch-line);background:var(--ch-surface);}
.ch-price-table th{background:var(--ch-panel);color:var(--ch-accent);text-align:left;padding:18px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;}
.ch-price-table td{border-top:1px solid var(--ch-line);padding:18px;color:var(--ch-muted);}
.ch-price-table td:first-child{font-family:var(--ch-serif);font-size:21px;color:var(--ch-text);}
body.ch-palette-ivory .ch-price-table th{color:#F4F0E8;}
.ch-badge{display:inline-block;border:1px solid var(--ch-line);padding:7px 10px;color:var(--ch-accent);font-size:10px;letter-spacing:.16em;text-transform:uppercase;}
.ch-formbox{border:1px solid var(--ch-line);background:var(--ch-surface);padding:34px;box-shadow:var(--ch-shadow);}
.ch-form-title{font-family:var(--ch-serif);font-size:34px;font-weight:400;margin:0 0 18px;}
.ch-form{display:grid;gap:16px;}
.ch-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.ch-form label{display:grid;gap:8px;color:var(--ch-accent);font-size:11px;letter-spacing:.16em;text-transform:uppercase;}
.ch-form input,.ch-form select,.ch-form textarea{border:1px solid var(--ch-line);background:var(--ch-bg);color:var(--ch-text);padding:13px 14px;outline:none;width:100%;border-radius:0;}
.ch-form input:focus,.ch-form select:focus,.ch-form textarea:focus{border-color:var(--ch-accent);}
.ch-form textarea{min-height:130px;resize:vertical;}
.ch-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.ch-check{border:1px solid var(--ch-line);padding:10px 12px;color:var(--ch-muted);font-size:12px;}
.ch-disclaimer{font-size:13px;color:var(--ch-soft);margin-top:14px;}
.ch-page-hero{background:linear-gradient(135deg,var(--ch-bg),var(--ch-panel));padding:90px 0 70px;text-align:center;border-bottom:1px solid var(--ch-line);}
body.ch-palette-ivory .ch-page-hero .ch-title,body.ch-palette-ivory .ch-page-hero .ch-subtitle{color:#F4F0E8;}
.ch-location-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.ch-location{border:1px solid var(--ch-line);padding:24px;background:var(--ch-surface);}
.ch-location h3{font-family:var(--ch-serif);font-weight:400;font-size:26px;margin:0 0 8px;}
.ch-location p{color:var(--ch-muted);margin:0;}
.ch-calculator{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:start;}
.ch-calc-result{border:1px solid var(--ch-line);background:var(--ch-panel);padding:32px;color:#F4F0E8;}
.ch-calc-result strong{display:block;font-family:var(--ch-serif);font-size:56px;font-weight:400;line-height:1;color:#F4F0E8;}
.ch-legal{max-width:900px;margin:0 auto;}
.ch-legal h2{font-family:var(--ch-serif);font-weight:400;font-size:34px;margin-top:34px;}
.ch-legal p,.ch-legal li{color:var(--ch-muted);line-height:1.85;}
.admin-bar .ch-site-header{top:32px;}
@media (min-width:1701px){
  .ch-site-logo{width:min(var(--ch-header-logo-width),410px);max-width:24vw;min-width:350px;}
  .ch-main-nav a{font-size:min(var(--ch-nav-font-size),15px);letter-spacing:.13em;}
  .ch-main-nav ul{gap:clamp(18px,1.35vw,var(--ch-nav-gap));}
  .ch-header-cta{min-width:198px;padding:16px 28px;font-size:13px;}
}
@media (max-width:1700px) and (min-width:1381px){
  .ch-header-row{gap:clamp(16px,1.6vw,30px);min-height:88px;}
  .ch-site-logo{width:min(var(--ch-header-logo-width),370px);max-width:24vw;min-width:310px;}
  .ch-main-nav{margin-left:clamp(8px,1.2vw,24px);}
  .ch-main-nav ul{gap:clamp(12px,1vw,18px);}
  .ch-main-nav a{font-size:min(var(--ch-nav-font-size),13px);letter-spacing:.095em;}
  .ch-header-cta{min-width:170px;padding:13px 18px;font-size:12px;letter-spacing:.13em;margin-left:clamp(10px,1.4vw,22px);}
}
@media (max-width:1380px) and (min-width:1181px){
  .ch-header-inner{padding-left:18px;padding-right:18px;}
  .ch-header-row{gap:14px;min-height:84px;}
  .ch-site-logo{width:min(var(--ch-header-logo-width),320px);max-width:24vw;min-width:270px;}
  .ch-main-nav{margin-left:8px;}
  .ch-main-nav ul{gap:11px;}
  .ch-main-nav a{font-size:12px;letter-spacing:.075em;}
  .ch-header-cta{min-width:150px;padding:12px 12px;font-size:11px;letter-spacing:.1em;margin-left:8px;}
}
@media (max-width:1180px){
  .ch-header-inner{padding:16px 18px 18px;}
  .ch-header-row{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:14px;min-height:0;}
  .ch-site-logo{justify-content:center;width:100%;max-width:100%;min-width:0;}
  .ch-site-logo img,.ch-site-logo .custom-logo{width:min(var(--ch-header-logo-mobile-width),86vw) !important;height:auto !important;}
  .ch-main-nav{display:block;width:100%;margin-left:0;}
  .ch-main-nav ul{justify-content:center;gap:12px 20px;flex-wrap:wrap;width:100%;}
  .ch-main-nav a{font-size:13px;letter-spacing:.13em;padding:4px 0;}
  .ch-main-nav .sub-menu{display:none;}
  .ch-header-cta{margin-top:2px;margin-left:0;padding:12px 18px;font-size:11px;min-width:172px;}
  .ch-grid-4,.ch-uniform-grid,.ch-location-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:900px){
  .ch-hero{min-height:auto;padding:72px 0;}
  .ch-hero:before{inset:18px;}
  .ch-hero-grid,.ch-feature-split,.ch-calculator{grid-template-columns:1fr;}
  .ch-grid-2,.ch-grid-3,.ch-grid-4,.ch-uniform-grid,.ch-logo-strip-grid,.ch-location-grid{grid-template-columns:1fr;}
  .ch-mini-list,.ch-form-grid,.ch-check-grid{grid-template-columns:1fr;}
  .ch-gallery{grid-template-columns:repeat(2,1fr);}
  .ch-footer-top{grid-template-columns:1fr;}
  .ch-price-table{display:block;overflow-x:auto;white-space:nowrap;}
  .ch-section{padding:68px 0;}
  .admin-bar .ch-site-header{top:0;}
}
@media (max-width:650px){
  .ch-wrap,.ch-wide{padding:0 18px;}
  .ch-header-inner{padding:14px 14px 16px;gap:12px;}
  .ch-main-nav ul{gap:9px 15px;}
  .ch-main-nav a{font-size:12px;letter-spacing:.1em;}
  .ch-header-cta{width:auto;max-width:92vw;text-align:center;}
  .ch-hero-title{font-size:clamp(42px,12vw,56px);}
  .ch-title{font-size:clamp(34px,10vw,44px);}
  .ch-hero-card,.ch-hero-card-inner,.ch-formbox{padding:22px;}
}

@media (min-width:1181px){
  .ch-site-header .ch-header-row{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;flex-wrap:nowrap !important;width:100% !important;}
  .ch-site-header .ch-site-logo{order:1 !important;}
  .ch-site-header .ch-main-nav{order:2 !important;}
  .ch-site-header .ch-header-cta{order:3 !important;position:static !important;align-self:center !important;margin-top:0 !important;}
}


/* Client sand palette refinements */
body.ch-palette-sand .ch-hero{background:radial-gradient(circle at 78% 4%,rgba(200,184,160,.20),transparent 28%),linear-gradient(135deg,#FFFFFF 0%,#FFFFFF 54%,#F7F4EE 100%);}
body.ch-palette-sand .ch-page-hero{background:linear-gradient(135deg,#F7F4EE 0%,#FFFFFF 52%,#D8CBB8 100%);}
body.ch-palette-sand .ch-section.alt{background:#D8CBB8;color:#111111;}
body.ch-palette-sand .ch-section.surface{background:#FFFFFF;}
body.ch-palette-sand .ch-card,body.ch-palette-sand .ch-testimonial,body.ch-palette-sand .ch-formbox,body.ch-palette-sand .ch-uniform,body.ch-palette-sand .ch-location,body.ch-palette-sand .ch-price-table{background:#FFFFFF;}
body.ch-palette-sand .ch-logo-strip{background:#FFFFFF;}
body.ch-palette-sand .ch-feature-img,body.ch-palette-sand .ch-gallery-item{background:linear-gradient(145deg,#FFFFFF 0%,#D8CBB8 100%);}
body.ch-palette-sand .ch-price-table th{background:#D8CBB8;color:#111111;}
body.ch-palette-sand .ch-form input,body.ch-palette-sand .ch-form select,body.ch-palette-sand .ch-form textarea{background:#FFFFFF;color:#111111;}
body.ch-palette-sand .ch-calc-result{background:#D8CBB8;color:#111111;}
body.ch-palette-sand .ch-calc-result strong{color:#111111;}
body.ch-palette-sand .ch-main-nav .sub-menu{background:#FFFFFF;}
body.ch-palette-sand .ch-main-nav .sub-menu a:hover{background:#F7F4EE;color:#111111;}


/* v3.5 Hospitality refinement: sand is an accent, white is primary. */
body.ch-palette-sand .ch-card,
body.ch-palette-sand .ch-testimonial,
body.ch-palette-sand .ch-formbox,
body.ch-palette-sand .ch-uniform,
body.ch-palette-sand .ch-location,
body.ch-palette-sand .ch-price-table{background:#F7F7F5;}
body.ch-palette-sand .ch-section.surface{background:#FFFFFF;}
body.ch-palette-sand .ch-section.alt{background:#D8CBB8;}


/* =========================================================
   v4.3 FINAL REFERENCE HEADER
   Fixed custom header: logo left, Services dropdown, Pricing, Contact, CTA right.
   This block intentionally overrides all previous header experiments and does
   not depend on the WordPress menu, so it cannot duplicate items.
   ========================================================= */
html body .ch-site-header.ch-reference-header,
html body header.ch-reference-header{
  position: sticky !important;
  top: 0 !important;
  z-index: 999999 !important;
  width: 100% !important;
  background: #FFFFFF !important;
  border-bottom: 1px solid rgba(17,17,17,.14) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body.admin-bar .ch-site-header.ch-reference-header{top:32px !important;}
html body .ch-reference-header-inner{
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 10px 28px !important;
  box-sizing: border-box !important;
}
html body .ch-reference-header-row{
  display: grid !important;
  grid-template-columns: 350px minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: 40px !important;
  width: 100% !important;
  min-height: 74px !important;
  height: 74px !important;
  max-height: 82px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}
html body .ch-reference-logo{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 350px !important;
  max-width: 350px !important;
  min-width: 0 !important;
  height: 64px !important;
  max-height: 64px !important;
  line-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  overflow: visible !important;
}
html body .ch-reference-logo img{
  display: block !important;
  width: auto !important;
  max-width: 340px !important;
  height: auto !important;
  max-height: 64px !important;
  object-fit: contain !important;
  object-position: left center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: .78 !important;
  filter: brightness(0) saturate(0) opacity(.68) !important;
}
html body .ch-reference-nav{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
html body .ch-reference-menu{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 32px !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  overflow: visible !important;
}
html body .ch-reference-menu > li{
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html body .ch-reference-menu > li > a{
  display: block !important;
  margin: 0 !important;
  padding: 26px 0 !important;
  color: #111111 !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: color .18s ease !important;
}
html body .ch-reference-menu > li > a:hover,
html body .ch-reference-menu > li:focus-within > a{
  color: #8E7F6A !important;
}
html body .ch-reference-submenu{
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  display: block !important;
  width: 330px !important;
  min-width: 330px !important;
  max-width: 330px !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(17,17,17,.14) !important;
  box-shadow: 0 22px 48px rgba(17,17,17,.10) !important;
  list-style: none !important;
  text-align: left !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(8px) !important;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
  z-index: 9999999 !important;
}
html body .ch-has-dropdown:hover > .ch-reference-submenu,
html body .ch-has-dropdown:focus-within > .ch-reference-submenu{
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}
html body .ch-reference-submenu li{
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  list-style: none !important;
}
html body .ch-reference-submenu a{
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 12px 18px !important;
  color: #3A3A3A !important;
  background: transparent !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  text-align: left !important;
  text-indent: 0 !important;
  white-space: normal !important;
  text-decoration: none !important;
}
html body .ch-reference-submenu a:hover{
  background: #F7F4EE !important;
  color: #111111 !important;
}
html body .ch-reference-cta,
html body .ch-reference-cta:visited{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: end !important;
  align-self: center !important;
  width: auto !important;
  min-width: 198px !important;
  height: 44px !important;
  max-height: 44px !important;
  margin: 0 !important;
  padding: 0 22px !important;
  border: 1px solid #111111 !important;
  background: #111111 !important;
  color: #FFFFFF !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  transition: background .18s ease, color .18s ease, border-color .18s ease !important;
}
html body .ch-reference-cta:hover{
  background: #C8B8A0 !important;
  color: #111111 !important;
  border-color: #C8B8A0 !important;
}
@media (min-width: 1601px){
  html body .ch-reference-header-inner{max-width: 1440px !important; padding-left: 34px !important; padding-right: 34px !important;}
  html body .ch-reference-header-row{grid-template-columns: 380px minmax(0, 1fr) auto !important; column-gap: 44px !important; min-height: 78px !important; height: 78px !important;}
  html body .ch-reference-logo{width: 380px !important; max-width: 380px !important; height: 66px !important; max-height: 66px !important;}
  html body .ch-reference-logo img{max-width: 370px !important; max-height: 66px !important;}
  html body .ch-reference-menu{gap: 36px !important;}
}
@media (max-width: 1180px){
  html body .ch-reference-header-inner{padding: 16px 18px 18px !important;}
  html body .ch-reference-header-row{
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    gap: 14px !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
  }
  html body .ch-reference-logo{justify-content: center !important; width: 100% !important; max-width: 100% !important; height: auto !important; max-height: none !important;}
  html body .ch-reference-logo img{max-width: min(320px,86vw) !important; max-height: none !important; width: auto !important;}
  html body .ch-reference-nav{justify-content: center !important; width: 100% !important;}
  html body .ch-reference-menu{justify-content: center !important; gap: 12px 22px !important; flex-wrap: wrap !important; width: 100% !important;}
  html body .ch-reference-menu > li > a{font-size: 13px !important; letter-spacing: .13em !important; padding: 4px 0 !important;}
  html body .ch-reference-submenu{display: none !important;}
  html body .ch-reference-cta{margin: 2px 0 0 !important; min-width: 208px !important; height: 40px !important; padding: 0 16px !important; font-size: 10.5px !important;}
  html body.admin-bar .ch-site-header.ch-reference-header{top:0 !important;}
}
@media (max-width: 560px){
  html body .ch-reference-header-inner{padding: 14px 14px 16px !important;}
  html body .ch-reference-logo img{max-width: min(292px,88vw) !important;}
  html body .ch-reference-menu{gap: 9px 16px !important;}
  html body .ch-reference-menu > li > a{font-size: 12px !important; letter-spacing: .10em !important;}
  html body .ch-reference-cta{width: auto !important; max-width: 92vw !important;}
}

/* =========================================================
   v4.4 TRUE REFERENCE HEADER — DO NOT REMOVE
   Fresh compact single-row header matching the provided Illustrator reference.
   Keeps Services dropdown, prevents duplicate WP menu output, and locks CTA right.
   ========================================================= */
html body .ch-site-header.ch-reference-header,
html body header.ch-reference-header{
  position: sticky !important;
  top: 0 !important;
  z-index: 999999 !important;
  width: 100% !important;
  background: #FFFFFF !important;
  border-bottom: 1px solid rgba(17,17,17,.16) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  overflow: visible !important;
}
html body.admin-bar .ch-site-header.ch-reference-header{top:32px !important;}
html body .ch-reference-header-inner{
  width: 100% !important;
  max-width: 1760px !important;
  margin: 0 auto !important;
  padding: 14px 54px !important;
  box-sizing: border-box !important;
}
html body .ch-reference-header-row{
  display: grid !important;
  grid-template-columns: clamp(360px, 30vw, 460px) minmax(0, 1fr) auto !important;
  align-items: center !important;
  column-gap: clamp(34px, 3.2vw, 64px) !important;
  width: 100% !important;
  min-height: 94px !important;
  height: auto !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}
html body .ch-reference-logo{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: 460px !important;
  min-width: 0 !important;
  line-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
  overflow: visible !important;
}
html body .ch-reference-logo img{
  display: block !important;
  width: 100% !important;
  max-width: 460px !important;
  height: auto !important;
  max-height: 112px !important;
  object-fit: contain !important;
  object-position: left center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  opacity: .72 !important;
  filter: grayscale(1) contrast(.88) brightness(.78) !important;
}
html body .ch-reference-nav{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}
html body .ch-reference-menu{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: clamp(28px, 2vw, 40px) !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  overflow: visible !important;
}
html body .ch-reference-menu > li{
  position: relative !important;
  display: block !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
html body .ch-reference-menu > li > a{
  display: block !important;
  margin: 0 !important;
  padding: 38px 0 !important; /* creates a stable hover area for dropdown */
  color: #111111 !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transition: color .18s ease !important;
}
html body .ch-reference-menu > li > a:hover,
html body .ch-reference-menu > li:focus-within > a{color:#8E7F6A !important;}
html body .ch-reference-submenu{
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  display: block !important;
  width: 330px !important;
  min-width: 330px !important;
  max-width: 330px !important;
  margin: 0 !important;
  padding: 8px 0 !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(17,17,17,.14) !important;
  box-shadow: 0 22px 48px rgba(17,17,17,.10) !important;
  list-style: none !important;
  text-align: left !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(8px) !important;
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
  z-index: 9999999 !important;
}
html body .ch-has-dropdown:hover > .ch-reference-submenu,
html body .ch-has-dropdown:focus-within > .ch-reference-submenu{
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}
html body .ch-reference-submenu li{
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  list-style: none !important;
}
html body .ch-reference-submenu a{
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 12px 18px !important;
  color: #3A3A3A !important;
  background: transparent !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  text-align: left !important;
  text-indent: 0 !important;
  white-space: normal !important;
  text-decoration: none !important;
}
html body .ch-reference-submenu a:hover{background:#F7F4EE !important;color:#111111 !important;}
html body .ch-reference-cta,
html body .ch-reference-cta:visited{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  justify-self: end !important;
  align-self: center !important;
  width: 264px !important;
  min-width: 264px !important;
  height: 52px !important;
  margin: 0 !important;
  padding: 0 22px !important;
  border: 1px solid #111111 !important;
  background: #111111 !important;
  color: #FFFFFF !important;
  font-family: Inter, Arial, sans-serif !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  transition: background .18s ease, color .18s ease, border-color .18s ease !important;
}
html body .ch-reference-cta:hover{background:#C8B8A0 !important;color:#111111 !important;border-color:#C8B8A0 !important;}
@media (max-width: 1280px){
  html body .ch-reference-header-inner{padding: 14px 34px !important;}
  html body .ch-reference-header-row{grid-template-columns: clamp(300px, 29vw, 380px) minmax(0, 1fr) auto !important; column-gap: 30px !important; min-height: 86px !important;}
  html body .ch-reference-logo img{max-width: 380px !important; max-height: 92px !important;}
  html body .ch-reference-menu{gap: 26px !important;}
  html body .ch-reference-menu > li > a{font-size: 13px !important; letter-spacing: .14em !important; padding: 34px 0 !important;}
  html body .ch-reference-cta{width: 232px !important; min-width: 232px !important; height: 48px !important; font-size: 11.5px !important;}
}
@media (max-width: 1060px){
  html body .ch-reference-header-inner{padding: 16px 18px 18px !important;}
  html body .ch-reference-header-row{display:flex !important;flex-direction:column !important;justify-content:center !important;align-items:center !important;text-align:center !important;gap:14px !important;min-height:0 !important;height:auto !important;}
  html body .ch-reference-logo{justify-content:center !important;width:100% !important;max-width:100% !important;}
  html body .ch-reference-logo img{max-width:min(330px,86vw) !important;max-height:none !important;width:100% !important;}
  html body .ch-reference-nav{justify-content:center !important;width:100% !important;}
  html body .ch-reference-menu{justify-content:center !important;gap:12px 22px !important;flex-wrap:wrap !important;width:100% !important;}
  html body .ch-reference-menu > li > a{font-size:13px !important;letter-spacing:.13em !important;padding:4px 0 !important;}
  html body .ch-reference-submenu{display:none !important;}
  html body .ch-reference-cta{margin:2px 0 0 !important;width:auto !important;min-width:178px !important;height:40px !important;padding:0 18px !important;font-size:11px !important;}
  html body.admin-bar .ch-site-header.ch-reference-header{top:0 !important;}
}
@media (max-width:560px){
  html body .ch-reference-header-inner{padding:14px 14px 16px !important;}
  html body .ch-reference-logo img{max-width:min(300px,88vw) !important;}
  html body .ch-reference-menu{gap:9px 16px !important;}
  html body .ch-reference-menu > li > a{font-size:12px !important;letter-spacing:.10em !important;}
}


/* =========================================================
   v4.5 FINAL HEADER ALIGNMENT PATCH
   Only adjusts the approved v4.4 reference header:
   - menu text slightly larger
   - whole menu block moved a bit right
   - compact white header preserved
   - Services dropdown + Request Staffing preserved
   ========================================================= */
@media (min-width: 1281px){
  html body .ch-reference-header-inner{
    max-width: 1760px !important;
    padding-left: 54px !important;
    padding-right: 54px !important;
  }

  html body .ch-reference-header-row{
    grid-template-columns: clamp(470px, 34vw, 540px) minmax(0, 1fr) auto !important;
    column-gap: clamp(46px, 3.8vw, 76px) !important;
    min-height: 94px !important;
  }

  html body .ch-reference-logo{
    max-width: 500px !important;
  }

  html body .ch-reference-logo img{
    max-width: 470px !important;
    max-height: 104px !important;
  }

  html body .ch-reference-nav{
    justify-content: flex-start !important;
    transform: translateX(18px) !important;
  }

  html body .ch-reference-menu{
    gap: clamp(34px, 2.15vw, 46px) !important;
  }

  html body .ch-reference-menu > li > a{
    font-size: 15px !important;
    letter-spacing: .17em !important;
    padding: 36px 0 !important;
  }

  html body .ch-reference-cta,
  html body .ch-reference-cta:visited{
    width: 264px !important;
    min-width: 264px !important;
    height: 50px !important;
    font-size: 13px !important;
    letter-spacing: .12em !important;
  }
}

@media (max-width: 1280px) and (min-width: 1061px){
  html body .ch-reference-header-inner{
    padding-left: 36px !important;
    padding-right: 36px !important;
  }

  html body .ch-reference-header-row{
    grid-template-columns: 390px minmax(0, 1fr) auto !important;
    column-gap: 38px !important;
    min-height: 86px !important;
  }

  html body .ch-reference-logo img{
    max-width: 390px !important;
    max-height: 92px !important;
  }

  html body .ch-reference-nav{
    transform: translateX(8px) !important;
  }

  html body .ch-reference-menu{
    gap: 28px !important;
  }

  html body .ch-reference-menu > li > a{
    font-size: 14px !important;
    letter-spacing: .145em !important;
    padding: 32px 0 !important;
  }

  html body .ch-reference-cta,
  html body .ch-reference-cta:visited{
    width: 232px !important;
    min-width: 232px !important;
    height: 48px !important;
    font-size: 11.5px !important;
  }
}


/* =========================================================
   v4.6 HEADER FINAL ALIGNMENT
   Keeps the approved compact white header but stops the CTA from sitting too far right.
   Structure becomes: logo left | menu next to it | Request Staffing after menu.
   ========================================================= */
@media (min-width: 1281px){
  html body .ch-reference-header-inner{
    max-width: 1760px !important;
    padding-left: 54px !important;
    padding-right: 54px !important;
  }

  html body .ch-reference-header-row{
    display: grid !important;
    grid-template-columns: clamp(470px, 31vw, 540px) max-content max-content !important;
    justify-content: start !important;
    align-items: center !important;
    column-gap: clamp(42px, 3vw, 62px) !important;
    min-height: 94px !important;
    height: auto !important;
  }

  html body .ch-reference-logo{
    max-width: 500px !important;
  }

  html body .ch-reference-logo img{
    max-width: 470px !important;
    max-height: 104px !important;
  }

  html body .ch-reference-nav{
    justify-content: flex-start !important;
    width: auto !important;
    transform: none !important;
  }

  html body .ch-reference-menu{
    justify-content: flex-start !important;
    gap: clamp(34px, 2.15vw, 46px) !important;
  }

  html body .ch-reference-menu > li > a{
    font-size: 15px !important;
    letter-spacing: .17em !important;
    padding: 36px 0 !important;
  }

  html body .ch-reference-cta,
  html body .ch-reference-cta:visited{
    justify-self: start !important;
    width: 264px !important;
    min-width: 264px !important;
    height: 50px !important;
    font-size: 13px !important;
    letter-spacing: .12em !important;
    margin-left: 0 !important;
  }
}

@media (max-width: 1600px) and (min-width: 1281px){
  html body .ch-reference-header-inner{
    padding-left: 42px !important;
    padding-right: 42px !important;
  }

  html body .ch-reference-header-row{
    grid-template-columns: clamp(420px, 30vw, 490px) max-content max-content !important;
    column-gap: 42px !important;
  }

  html body .ch-reference-logo img{
    max-width: 430px !important;
    max-height: 96px !important;
  }

  html body .ch-reference-menu{
    gap: 32px !important;
  }

  html body .ch-reference-menu > li > a{
    font-size: 14px !important;
    letter-spacing: .15em !important;
  }

  html body .ch-reference-cta,
  html body .ch-reference-cta:visited{
    width: 206px !important;
    min-width: 206px !important;
  }
}

@media (max-width: 1280px) and (min-width: 1061px){
  html body .ch-reference-header-inner{
    padding-left: 34px !important;
    padding-right: 34px !important;
  }

  html body .ch-reference-header-row{
    display: grid !important;
    grid-template-columns: 360px max-content max-content !important;
    justify-content: start !important;
    column-gap: 34px !important;
    min-height: 86px !important;
  }

  html body .ch-reference-logo img{
    max-width: 360px !important;
    max-height: 88px !important;
  }

  html body .ch-reference-nav{
    width: auto !important;
    transform: none !important;
  }

  html body .ch-reference-menu{
    gap: 26px !important;
  }

  html body .ch-reference-menu > li > a{
    font-size: 13px !important;
    letter-spacing: .14em !important;
    padding: 32px 0 !important;
  }

  html body .ch-reference-cta,
  html body .ch-reference-cta:visited{
    justify-self: start !important;
    width: 190px !important;
    min-width: 190px !important;
    height: 46px !important;
    font-size: 12px !important;
  }
}


/* =========================================================
   v4.7 dark logo on white header + safe logo controls
   ========================================================= */
html body .ch-reference-logo img{
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

html body .ch-site-header.ch-reference-header,
html body header.ch-reference-header{
  background:#FFFFFF !important;
}

/* Keep the current approved header alignment from v4.6. */
@media (min-width: 1281px){
  html body .ch-reference-header-inner{
    max-width: 1760px !important;
    padding-left: 54px !important;
    padding-right: 54px !important;
  }
  html body .ch-reference-header-row{
    display:grid !important;
    grid-template-columns: clamp(420px, 30vw, 490px) max-content max-content !important;
    justify-content:start !important;
    align-items:center !important;
    column-gap:42px !important;
    min-height:94px !important;
    height:auto !important;
  }
  html body .ch-reference-logo img{
    max-width:430px !important;
    max-height:96px !important;
  }
  html body .ch-reference-menu{
    gap:32px !important;
  }
  html body .ch-reference-menu > li > a{
    font-size:14px !important;
    letter-spacing:.15em !important;
  }
  html body .ch-reference-cta,
  html body .ch-reference-cta:visited{
    justify-self:start !important;
    width:206px !important;
    min-width:206px !important;
    height:46px !important;
    font-size:12px !important;
    letter-spacing:.145em !important;
  }
}


/* =========================================================
   v4.8 FINAL HEADER POSITION
   User-approved structure kept: logo left, menu + CTA in one row.
   This block only moves the menu/CTA group right and increases menu size.
   ========================================================= */
html body .ch-site-header.ch-reference-header,
html body header.ch-reference-header{
  background:#FFFFFF !important;
  border-bottom:1px solid rgba(17,17,17,.12) !important;
  box-shadow:none !important;
}

@media (min-width: 1600px){
  html body .ch-reference-header-inner{
    max-width:1760px !important;
    padding-left:54px !important;
    padding-right:54px !important;
  }
  html body .ch-reference-header-row{
    display:grid !important;
    grid-template-columns:620px max-content max-content !important;
    justify-content:start !important;
    align-items:center !important;
    column-gap:42px !important;
    min-height:94px !important;
    height:94px !important;
    width:100% !important;
  }
  html body .ch-reference-logo{
    width:430px !important;
    max-width:430px !important;
    height:76px !important;
    max-height:76px !important;
    justify-content:flex-start !important;
  }
  html body .ch-reference-logo img{
    max-width:430px !important;
    max-height:76px !important;
    width:auto !important;
    height:auto !important;
    opacity:1 !important;
    filter:none !important;
    mix-blend-mode:normal !important;
  }
  html body .ch-reference-nav{
    margin:0 !important;
    padding:0 !important;
    justify-content:flex-start !important;
  }
  html body .ch-reference-menu{
    gap:38px !important;
    align-items:center !important;
    justify-content:flex-start !important;
  }
  html body .ch-reference-menu > li > a{
    font-size:16px !important;
    line-height:1 !important;
    letter-spacing:.13em !important;
    font-weight:900 !important;
    padding:37px 0 !important;
    color:#111111 !important;
  }
  html body .ch-reference-cta,
  html body .ch-reference-cta:visited{
    justify-self:start !important;
    align-self:center !important;
    width:220px !important;
    min-width:220px !important;
    height:48px !important;
    padding:0 24px !important;
    font-size:13px !important;
    line-height:1 !important;
    letter-spacing:.14em !important;
    font-weight:900 !important;
    background:#111111 !important;
    color:#FFFFFF !important;
    border:1px solid #111111 !important;
    margin:0 !important;
  }
}

@media (min-width: 1281px) and (max-width: 1599px){
  html body .ch-reference-header-inner{
    max-width:1440px !important;
    padding-left:38px !important;
    padding-right:38px !important;
  }
  html body .ch-reference-header-row{
    display:grid !important;
    grid-template-columns:470px max-content max-content !important;
    justify-content:start !important;
    align-items:center !important;
    column-gap:34px !important;
    min-height:88px !important;
    height:88px !important;
  }
  html body .ch-reference-logo{
    width:385px !important;
    max-width:385px !important;
    height:70px !important;
    max-height:70px !important;
  }
  html body .ch-reference-logo img{
    max-width:385px !important;
    max-height:70px !important;
    opacity:1 !important;
    filter:none !important;
  }
  html body .ch-reference-menu{
    gap:28px !important;
  }
  html body .ch-reference-menu > li > a{
    font-size:14px !important;
    letter-spacing:.12em !important;
    padding:34px 0 !important;
    color:#111111 !important;
  }
  html body .ch-reference-cta,
  html body .ch-reference-cta:visited{
    width:196px !important;
    min-width:196px !important;
    height:44px !important;
    font-size:12px !important;
    letter-spacing:.13em !important;
    margin:0 !important;
  }
}

/* Keep dropdown clean and attached to Services only. */
html body .ch-reference-menu .ch-reference-submenu{
  top:100% !important;
  left:0 !important;
  min-width:300px !important;
  padding:10px 0 !important;
  background:#FFFFFF !important;
  border:1px solid rgba(17,17,17,.12) !important;
  box-shadow:0 20px 48px rgba(17,17,17,.10) !important;
}
html body .ch-reference-menu .ch-reference-submenu a{
  font-size:13px !important;
  line-height:1.35 !important;
  letter-spacing:.12em !important;
  text-align:left !important;
  justify-content:flex-start !important;
  padding:14px 20px !important;
  color:#111111 !important;
}

/* Tablet/mobile stays stacked and safe. */
@media (max-width:1280px){
  html body .ch-reference-header-row{
    grid-template-columns:1fr !important;
    height:auto !important;
    min-height:0 !important;
  }
}


/* =========================================================
   v4.9 FOOTER FIX
   Hardcoded clean footer layout so previous WordPress footer-menu duplicates cannot appear.
   ========================================================= */
.ch-site-footer{
  background:#ffffff !important;
  border-top:1px solid rgba(17,17,17,.12) !important;
  color:#111111 !important;
}
.ch-footer-top{
  max-width:1320px !important;
  margin:0 auto !important;
  padding:62px 34px 54px !important;
  display:grid !important;
  grid-template-columns:1.25fr .72fr .88fr .9fr !important;
  gap:46px !important;
  align-items:start !important;
}
.ch-footer-logo{
  width:300px !important;
  max-width:100% !important;
  margin:0 0 22px !important;
  filter:none !important;
  opacity:.86 !important;
}
body.ch-palette-ivory .ch-footer-logo,
body.ch-palette-sand .ch-footer-logo{
  filter:none !important;
}
.ch-footer-top h4{
  margin:0 0 18px !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase !important;
  color:#111111 !important;
}
.ch-footer-top p,
.ch-footer-top a,
.ch-footer-top li{
  color:#3A3A3A !important;
  font-size:15px !important;
  line-height:1.75 !important;
}
.ch-footer-top a{
  text-decoration:none !important;
  transition:.2s ease !important;
}
.ch-footer-top a:hover{
  color:#111111 !important;
}
.ch-footer-top ul{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
  display:grid !important;
  gap:10px !important;
}
.ch-footer-top .ch-disclaimer{
  margin-top:18px !important;
  max-width:390px !important;
  color:#6B6256 !important;
  font-size:13px !important;
}
.ch-footer-contact-cta{
  display:inline-block !important;
  margin-top:14px !important;
  font-size:12px !important;
  font-weight:800 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
  color:#111111 !important;
}
.ch-footer-bottom{
  border-top:1px solid rgba(17,17,17,.10) !important;
  padding:20px 34px !important;
  text-align:center !important;
  color:#6B6256 !important;
  font-size:13px !important;
}
@media (max-width: 980px){
  .ch-footer-top{
    grid-template-columns:1fr 1fr !important;
    gap:36px !important;
  }
}
@media (max-width: 680px){
  .ch-footer-top{
    grid-template-columns:1fr !important;
    padding:48px 24px !important;
  }
  .ch-footer-logo{
    width:260px !important;
  }
}

/* =========================================================
   v5.0 — Working forms: status messages, resume upload,
   application form layout, eligibility & certification grids.
   ========================================================= */
.ch-form-status{display:none;border-radius:0;padding:14px 16px;font-size:14px;line-height:1.5;letter-spacing:0;text-transform:none;margin:0 0 4px;}
.ch-form-status.is-visible{display:block;}
.ch-form-status.is-success{background:#EAF6EC;border:1px solid #9CCBA4;color:#1E5128;}
.ch-form-status.is-error{background:#FBEAEA;border:1px solid #D9A3A3;color:#7A2222;}
.ch-form .ch-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden;}
.ch-form .ch-file{padding:11px 14px;background:var(--ch-bg);}
.ch-form .ch-field-note{font-size:11px;letter-spacing:.04em;text-transform:none;color:var(--ch-soft);}
.ch-form button[disabled]{opacity:.6;cursor:not-allowed;}
.ch-form .ch-full{grid-column:1 / -1;}
.ch-fieldset{border:1px solid var(--ch-line);padding:18px 18px 6px;margin:0;}
.ch-fieldset legend{padding:0 8px;color:var(--ch-accent);font-size:11px;letter-spacing:.16em;text-transform:uppercase;}
.ch-check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 18px;margin:6px 0 16px;}
.ch-checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 18px;margin:6px 0 16px;}
.ch-check-grid label,.ch-checkbox-grid label{display:flex;align-items:flex-start;gap:9px;color:var(--ch-text);font-size:13px;letter-spacing:0;text-transform:none;font-family:var(--ch-sans);}
.ch-check-grid input,.ch-checkbox-grid input{width:auto;margin-top:2px;}
.ch-yesno{display:flex;gap:18px;align-items:center;color:var(--ch-text);font-size:13px;letter-spacing:0;text-transform:none;}
.ch-yesno .ch-yesno-opt{display:flex;align-items:center;gap:7px;}
.ch-yesno input{width:auto;}
.ch-elig label{color:var(--ch-text);font-size:13px;letter-spacing:0;text-transform:none;font-family:var(--ch-sans);margin-bottom:10px;display:block;}
@media(max-width:720px){.ch-check-grid,.ch-checkbox-grid{grid-template-columns:1fr;}}

/* v5.0 — make WordPress-assigned menus behave like the built-in dropdown.
   Maps native WP classes (.sub-menu / .menu-item-has-children) onto the
   reference header styles so Appearance → Menus controls the navigation. */
html body .ch-reference-menu .sub-menu{
  position:absolute; top:100%; left:0; min-width:280px;
  background:#FFFFFF; border:1px solid var(--ch-header-border,#E8E0D5);
  box-shadow:0 24px 60px rgba(17,17,17,.14);
  list-style:none; margin:0; padding:10px 0; opacity:0; visibility:hidden;
  transform:translateY(8px); transition:all .18s ease; z-index:1200;
}
html body .ch-reference-menu .menu-item-has-children{position:relative;}
html body .ch-reference-menu .menu-item-has-children:hover > .sub-menu,
html body .ch-reference-menu .menu-item-has-children:focus-within > .sub-menu{
  opacity:1; visibility:visible; transform:translateY(0);
}
html body .ch-reference-menu .sub-menu li{margin:0;}
html body .ch-reference-menu .sub-menu a{
  display:block; padding:11px 22px; white-space:nowrap;
  color:#3A3A3A; text-decoration:none; font-size:14px; letter-spacing:.02em; text-transform:none;
}
html body .ch-reference-menu .sub-menu a:hover{background:#F7F4EE; color:#111111;}
@media(max-width:980px){ html body .ch-reference-menu .sub-menu{display:none !important;} }

/* v5.0 — Legal page enhancements: subheadings, lists, tables, notes */
.ch-legal h3{font-family:var(--ch-sans);font-weight:600;font-size:15px;letter-spacing:.04em;text-transform:uppercase;color:var(--ch-accent);margin:28px 0 10px;}
.ch-legal ul{margin:0 0 20px;padding-left:0;list-style:none;}
.ch-legal ul li{position:relative;padding-left:20px;margin-bottom:10px;}
.ch-legal ul li::before{content:"";position:absolute;left:0;top:11px;width:6px;height:1px;background:var(--ch-accent);}
.ch-legal-table{width:100%;border-collapse:collapse;margin:18px 0 26px;font-family:var(--ch-sans);font-size:14px;}
.ch-legal-table th{background:#111111;color:#FFFFFF;text-align:left;padding:12px 16px;font-weight:600;letter-spacing:.02em;}
.ch-legal-table td{padding:12px 16px;border-bottom:1px solid var(--ch-line);color:var(--ch-text);}
.ch-legal-table tr:nth-child(even) td{background:#F7F4EE;}
.ch-legal-note{background:#F7F4EE;border-left:3px solid var(--ch-accent);padding:14px 18px;font-size:13.5px;color:var(--ch-muted);margin:24px 0;}
.ch-legal-footer{margin-top:36px;padding-top:18px;border-top:1px solid var(--ch-line);font-size:12px;color:var(--ch-soft);}

/* =========================================================
   v6.0 — Custom Home page sections (hero, services grid,
   feature/collage, corporate split, why-it-works, gallery)
   ========================================================= */

/* ---- Hero ---- */
.chv6-hero{background:linear-gradient(135deg,#FFFFFF 0%,#FFFFFF 54%,#F7F4EE 100%);padding:70px 0;position:relative;overflow:hidden;}
.chv6-hero::before{content:"";position:absolute;inset:32px;border:1px solid rgba(17,17,17,.10);pointer-events:none;z-index:0;}
.chv6-hero-inner{max-width:1200px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:center;position:relative;z-index:1;}
.chv6-hero-text{display:flex;flex-direction:column;}
.chv6-hero-kicker{font-family:Inter,Arial,sans-serif;font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#C8B8A0;margin:0 0 22px;}
.chv6-hero-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(40px,4.8vw,72px);font-weight:400;line-height:1.06;letter-spacing:.01em;color:#111111;margin:0 0 24px;}
.chv6-hero-subtitle{font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.65;color:#3A3A3A;margin:0 0 36px;max-width:420px;}
.chv6-hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;}
.chv6-hero-btn{display:inline-block;font-family:Inter,Arial,sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:15px 28px;text-decoration:none;transition:background .18s,color .18s,border-color .18s;cursor:pointer;border:1px solid #111111;}
.chv6-hero-btn.primary{background:#111111;color:#FFFFFF;}
.chv6-hero-btn.primary:hover{background:#C8B8A0;border-color:#C8B8A0;color:#111111;}
.chv6-hero-btn.outline{background:transparent;color:#111111;border-color:rgba(17,17,17,.35);}
.chv6-hero-btn.outline:hover{background:#111111;color:#FFFFFF;border-color:#111111;}
.chv6-hero-photo-wrap{position:relative;}
.chv6-hero-photo-frame{border:1px solid rgba(17,17,17,.12);background:#F7F4EE;padding:4px;box-shadow:0 26px 70px rgba(17,17,17,.10);}
.chv6-hero-photo-frame img{display:block;width:100%;height:620px;object-fit:cover;object-position:center top;}
@media (max-width:900px){.chv6-hero{padding:60px 0;}.chv6-hero-inner{grid-template-columns:1fr;gap:40px;padding:0 24px;}.chv6-hero-photo-frame img{height:340px;}.chv6-hero-title{font-size:clamp(36px,10vw,52px);}}

/* ---- Services grid ---- */
.chv6-services{background:#F7F4EE;padding:100px 0 110px;position:relative;overflow:hidden;}
.chv6-services::before{content:"";position:absolute;inset:28px;border:1px solid rgba(17,17,17,.07);pointer-events:none;}
.chv6-wrap{max-width:1240px;margin:0 auto;padding:0 40px;position:relative;z-index:1;}
.chv6-services-head{text-align:center;margin-bottom:64px;}
.chv6-services-kicker{display:block;font-family:Inter,Arial,sans-serif;font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#C8B8A0;margin-bottom:18px;}
.chv6-services-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.4vw,62px);font-weight:400;line-height:1.08;letter-spacing:.01em;color:#111111;margin:0 0 20px;}
.chv6-services-subtitle{font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.7;color:#6B6256;max-width:560px;margin:0 auto;}
.chv6-services-divider{width:48px;height:1px;background:#C8B8A0;margin:24px auto 0;}
.chv6-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;}
.chv6-card{background:#FFFFFF;display:flex;flex-direction:column;transition:box-shadow .3s ease,transform .3s ease;position:relative;overflow:hidden;height:420px;}
.chv6-card:hover{z-index:2;box-shadow:0 28px 72px rgba(17,17,17,.16);transform:translateY(-3px);}
.chv6-card-img-wrap{overflow:hidden;flex-shrink:0;height:190px;background:#EDE8E0;position:relative;}
.chv6-card-img-frame{width:100%;height:100%;overflow:hidden;position:relative;display:block;}
.chv6-card-img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform .5s ease;filter:brightness(.96);}
.chv6-card:hover .chv6-card-img{transform:scale(1.04);filter:brightness(1);}
.chv6-card-rule{height:1px;background:linear-gradient(90deg,#C8B8A0 0%,#D8CBB8 60%,transparent 100%);flex-shrink:0;}
.chv6-card-body{padding:20px 22px 24px;display:flex;flex-direction:column;flex:1;}
.chv6-card-num{font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:#C8B8A0;margin-bottom:12px;display:flex;align-items:center;gap:10px;}
.chv6-card-num::after{content:"";flex:1;height:1px;background:#E8E0D5;}
.chv6-card-title{font-family:Georgia,'Times New Roman',serif;font-size:19px;font-weight:400;line-height:1.25;color:#111111;margin:0 0 12px;}
.chv6-card-desc{font-family:Inter,Arial,sans-serif;font-size:13px;line-height:1.72;color:#6B6256;margin:0 0 20px;flex:1;}
.chv6-card-link{font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#3A3A3A;text-decoration:none;display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-bottom:2px;border-bottom:1px solid transparent;transition:color .2s,border-color .2s;}
.chv6-card-link::after{content:"→";font-size:11px;transition:transform .2s;}
.chv6-card:hover .chv6-card-link{color:#C8B8A0;border-bottom-color:#C8B8A0;}
.chv6-card:hover .chv6-card-link::after{transform:translateX(3px);}
.chv6-cta-strip{margin-top:52px;display:flex;justify-content:center;}
.chv6-cta-btn{font-family:Inter,Arial,sans-serif;font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:16px 36px;border:1px solid #111111;background:#111111;color:#FFFFFF;text-decoration:none;transition:background .2s,color .2s,border-color .2s;}
.chv6-cta-btn:hover{background:#C8B8A0;border-color:#C8B8A0;color:#111111;}
@media (max-width:1100px){.chv6-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:600px){.chv6-services{padding:60px 0 70px;}.chv6-services::before{inset:14px;}.chv6-wrap{padding:0 20px;}.chv6-grid{grid-template-columns:1fr;gap:2px;}.chv6-card{height:auto;}.chv6-card-img-wrap{height:170px;}.chv6-services-head{margin-bottom:40px;}}

/* ---- Feature single-image (Refined Staffing Partner) ---- */
.chf-section{background:#F0EBE1;padding:100px 0;position:relative;overflow:hidden;}
.chf-wrap{max-width:1200px;margin:0 auto;padding:0 48px;display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:center;position:relative;z-index:1;}
.chf-text{display:flex;flex-direction:column;}
.chf-kicker{font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.30em;text-transform:uppercase;color:#6B6256;margin:0 0 24px;}
.chf-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4vw,58px);font-weight:400;line-height:1.08;letter-spacing:.01em;color:#111111;margin:0 0 28px;}
.chf-lead{font-family:Inter,Arial,sans-serif;font-size:14px;line-height:1.75;color:#3A3A3A;margin:0 0 32px;max-width:400px;}
.chf-ticks{list-style:none;margin:0 0 44px;padding:0;display:flex;flex-direction:column;gap:0;}
.chf-ticks li{font-family:Inter,Arial,sans-serif;font-size:13px;line-height:1.6;color:#3A3A3A;padding:10px 0 10px 18px;border-bottom:1px solid rgba(17,17,17,.09);position:relative;}
.chf-ticks li:first-child{border-top:1px solid rgba(17,17,17,.09);}
.chf-ticks li::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:1px;background:#C8B8A0;}
.chf-btn{display:inline-block;align-self:flex-start;font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;padding:16px 30px;background:#111111;color:#FFFFFF;border:1px solid #111111;text-decoration:none;transition:background .2s,color .2s,border-color .2s;}
.chf-btn:hover{background:#C8B8A0;border-color:#C8B8A0;color:#111111;}
.chf-collage-wrap{position:relative;}
.chf-collage-frame{border:1px solid rgba(17,17,17,.14);background:#FFFFFF;padding:10px;box-shadow:0 30px 80px rgba(17,17,17,.12);}
.chf-single-img{display:block;width:100%;height:auto;object-fit:cover;object-position:center center;}
.chf-caption{font-family:Inter,Arial,sans-serif;font-size:9px;letter-spacing:.26em;text-transform:uppercase;color:#6B6256;margin:14px 0 0;text-align:center;}
@media (max-width:960px){.chf-wrap{grid-template-columns:1fr;gap:52px;padding:0 28px;}.chf-section{padding:70px 0;}}
@media (max-width:520px){.chf-collage-frame{padding:6px;}.chf-wrap{padding:0 20px;gap:40px;}}

/* ---- Corporate split ---- */
.chc-section{background:#FFFFFF;padding:90px 0 100px;overflow:hidden;}
.chc-wrap{max-width:1280px;margin:0 auto;padding:0 60px;display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center;}
.chc-img-wrap{position:relative;}
.chc-outer-frame{border:1px solid rgba(17,17,17,.11);padding:14px;box-shadow:0 32px 90px rgba(17,17,17,.10);background:#FFFFFF;position:relative;}
.chc-inner-frame{border:1px solid rgba(17,17,17,.10);background:linear-gradient(145deg,#EDE5D8 0%,#F5EFE6 55%,#E8DDD0 100%);position:relative;overflow:hidden;min-height:380px;display:flex;flex-direction:column;}
.chc-photo{width:100%;flex:1;min-height:380px;object-fit:cover;object-position:center center;display:block;}
.chc-frame-caption{position:absolute;bottom:14px;left:16px;font-family:Inter,Arial,sans-serif;font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:rgba(17,17,17,.30);pointer-events:none;}
.chc-text{display:flex;flex-direction:column;}
.chc-kicker{font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.30em;text-transform:uppercase;color:#C8B8A0;margin:0 0 20px;}
.chc-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,3.8vw,60px);font-weight:400;line-height:1.08;color:#111111;margin:0 0 26px;letter-spacing:.01em;}
.chc-lead{font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.75;color:#3A3A3A;margin:0 0 36px;}
.chc-mini-list{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0 0 44px;border-top:1px solid rgba(17,17,17,.10);}
.chc-mini-item{font-family:Inter,Arial,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#3A3A3A;padding:14px 0 14px 14px;border-left:1px solid #C8B8A0;border-bottom:1px solid rgba(17,17,17,.10);margin-right:24px;}
.chc-mini-item:nth-child(2n){margin-right:0;}
.chc-btn{display:inline-block;align-self:flex-start;font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;padding:17px 32px;background:transparent;color:#111111;border:1px solid #111111;text-decoration:none;transition:background .2s,color .2s;}
.chc-btn:hover{background:#111111;color:#FFFFFF;}
@media (max-width:960px){.chc-wrap{grid-template-columns:1fr;gap:48px;padding:0 28px;}.chc-section{padding:64px 0;}.chc-inner-frame{min-height:280px;}.chc-photo{min-height:280px;}}
@media (max-width:520px){.chc-wrap{padding:0 20px;}.chc-outer-frame{padding:8px;}.chc-mini-list{grid-template-columns:1fr;}.chc-mini-item{margin-right:0;}.chc-inner-frame{min-height:220px;}.chc-photo{min-height:220px;}}

/* ---- Why It Works ---- */
.chw-section{background:#CFC3AF;padding:90px 0 100px;position:relative;overflow:hidden;}
.chw-wrap{max-width:1280px;margin:0 auto;padding:0 60px;display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:center;}
.chw-text{display:flex;flex-direction:column;}
.chw-kicker{font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.30em;text-transform:uppercase;color:rgba(17,17,17,.50);margin:0 0 22px;}
.chw-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.2vw,64px);font-weight:400;line-height:1.07;color:#111111;margin:0 0 28px;letter-spacing:.01em;}
.chw-lead{font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.72;color:#2A2A2A;margin:0 0 30px;max-width:420px;}
.chw-ticks{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0;}
.chw-ticks li{font-family:Inter,Arial,sans-serif;font-size:13px;line-height:1.6;color:#2A2A2A;padding:11px 0 11px 16px;border-bottom:1px solid rgba(17,17,17,.12);position:relative;}
.chw-ticks li:first-child{border-top:1px solid rgba(17,17,17,.12);}
.chw-ticks li::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:1px;background:rgba(17,17,17,.40);}
.chw-img-wrap{position:relative;}
.chw-outer-frame{background:#FFFFFF;padding:16px;box-shadow:0 40px 100px rgba(17,17,17,.18);position:relative;}
.chw-inner-frame{border:1px solid rgba(17,17,17,.14);position:relative;overflow:hidden;min-height:360px;background:linear-gradient(145deg,#EDE5D8 0%,#F5EFE6 55%,#E8DDD0 100%);display:flex;flex-direction:column;}
.chw-photo{width:100%;flex:1;object-fit:cover;object-position:center center;display:block;min-height:360px;}
.chw-inner-caption{position:absolute;bottom:14px;left:16px;font-family:Inter,Arial,sans-serif;font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:rgba(17,17,17,.35);pointer-events:none;}
@media (max-width:960px){.chw-wrap{grid-template-columns:1fr;gap:50px;padding:0 28px;}.chw-section{padding:64px 0;}.chw-inner-frame{min-height:280px;}.chw-photo{min-height:280px;}}
@media (max-width:520px){.chw-wrap{padding:0 20px;}.chw-outer-frame{padding:10px;}.chw-inner-frame{min-height:220px;}.chw-photo{min-height:220px;}}

/* ---- Gallery strip (Featured Moments) ---- */
.chg-section{background:#FFFFFF;padding:90px 0 100px;}
.chg-wrap{max-width:1300px;margin:0 auto;padding:0 48px;}
.chg-head{text-align:center;margin-bottom:60px;}
.chg-kicker{display:block;font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.30em;text-transform:uppercase;color:#C8B8A0;margin-bottom:18px;}
.chg-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(36px,4.4vw,66px);font-weight:400;line-height:1.08;color:#111111;margin:0;letter-spacing:.01em;}
.chg-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:52px;}
.chg-card{position:relative;overflow:hidden;border:1px solid rgba(17,17,17,.12);background:linear-gradient(160deg,#EDE5D8 0%,#F5EFE6 55%,#E8DDD0 100%);aspect-ratio:1/1;cursor:pointer;}
.chg-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;transition:transform .55s ease,filter .4s ease;filter:brightness(.92);color:transparent;font-size:0;text-indent:-9999px;}
.chg-card img:not([src]),.chg-card img[src=""]{display:none;}
.chg-card:hover img{transform:scale(1.07);filter:brightness(1.02);}
.chg-card::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(17,17,17,.38) 0%,rgba(17,17,17,.0) 45%);pointer-events:none;transition:opacity .3s ease;}
.chg-card:hover::after{opacity:.7;}
.chg-label{position:absolute;bottom:12px;left:12px;font-family:Inter,Arial,sans-serif;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.85);z-index:2;pointer-events:none;}
.chg-cta{display:flex;justify-content:center;}
.chg-btn{font-family:Inter,Arial,sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;padding:16px 36px;background:transparent;color:#111111;border:1px solid #111111;text-decoration:none;transition:background .2s,color .2s;display:inline-block;}
.chg-btn:hover{background:#111111;color:#FFFFFF;}
@media (max-width:1024px){.chg-strip{grid-template-columns:repeat(3,1fr);}}
@media (max-width:600px){.chg-section{padding:60px 0 70px;}.chg-wrap{padding:0 20px;}.chg-strip{grid-template-columns:repeat(2,1fr);gap:8px;}}
