/*
Theme Name: Cleaner Seeking
Description: A considered, people-first block theme for cleaning recruitment and labour hire.
Version: 1.2.1
Requires at least: 6.6
Requires PHP: 7.4
Author: Jacky Projects
Text Domain: cleaner-seeking
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--forest:#163c32;--ink:#203c34;--muted:#61716a;--paper:#fbfaf6;--sand:#edece3;--gold:#d4bd7e;--line:#d8ded5}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0}a{transition:color .18s,background .18s}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #947522;outline-offset:5px}img{max-width:100%;height:auto}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{margin-top:0}p{margin:0 0 1em}.wp-site-blocks>*{margin-block-start:0}.shell{width:min(1240px,calc(100% - 96px));margin-inline:auto!important}.section{padding-block:96px}.eyebrow{font-size:11px!important;letter-spacing:.16em;font-weight:700;text-transform:uppercase;line-height:1.6}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:36px;min-height:108px}.brand{display:flex;align-items:center;gap:11px}.brand p{margin:0}.brand-symbol{font-size:48px;line-height:1;color:#657f4c}.wordmark{font-size:24px;font-weight:700;letter-spacing:-1px;line-height:1.2}.wordmark span{font-weight:400}.wordmark a{text-decoration:none}.brand-tagline{font-size:8px;letter-spacing:.15em;padding-top:7px}.main-nav{font-size:13px;font-weight:600}.main-nav .wp-block-navigation__container{gap:29px}.main-nav .wp-block-navigation-item:last-child a{padding:13px 19px;border:1px solid var(--forest);border-radius:3px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:56px;padding-block:62px 66px}.hero-copy{padding-block:28px}.hero h1,.page-hero h1{font-size:clamp(44px,4.7vw,70px);line-height:1.06;letter-spacing:-.052em;max-width:620px;margin-block:22px}.hero em,h1 em,h2 em{font-family:Georgia,serif;font-weight:400;color:#668365}.hero-lead{font-size:18px;line-height:1.7;max-width:440px;color:var(--muted);margin-block:26px 30px}.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}.wp-block-button__link{font-size:13px;font-weight:600;padding:16px 23px;border-radius:3px;border:1px solid var(--forest);background:var(--forest);color:white;text-decoration:none;display:inline-block}.wp-block-button__link:hover{background:#2a5948;color:white}.wp-block-button.is-style-outline>.wp-block-button__link{background:transparent;color:var(--forest);border:1px solid var(--forest);padding:16px 23px}.wp-block-button.is-style-outline>.wp-block-button__link:hover{background:#e7eade}.hero-note{font-size:11px;color:var(--muted);margin-top:25px}.hero-visual{position:relative;min-width:0}.hero-visual figure{margin:0}.hero-visual img{display:block;width:100%;height:530px;object-fit:cover;object-position:72% center;border-radius:140px 4px 4px 4px}.image-label{position:absolute;left:-25px;bottom:27px;padding:23px 30px;background:var(--forest);color:#fff;max-width:290px;border-left:3px solid var(--gold)}.image-label .eyebrow{font-size:9px!important;color:var(--gold);margin-bottom:10px}.photo-caption{font-family:Georgia,serif;font-size:24px;line-height:1.3;margin:0}.strip-wrap{background:var(--sand);border-block:1px solid #e0e2d9}.service-strip{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:30px;align-items:center;padding-block:25px}.service-strip p{margin:0;font-size:13px;font-weight:600}.service-strip .eyebrow{font-size:9px!important;color:var(--muted)}.service-strip span{float:right;color:#75896b}.section-heading{max-width:690px;margin-bottom:40px}h2{font-size:clamp(32px,3.3vw,47px);letter-spacing:-.04em;line-height:1.15;margin-bottom:20px}h3{font-size:24px;letter-spacing:-.025em;line-height:1.3}.section-intro{max-width:480px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{padding:31px;border:1px solid var(--line);border-radius:4px}.card-number{font-family:Georgia,serif;font-size:22px;color:#7c8973;margin-bottom:50px}.card-number span{float:right;font-family:Arial,sans-serif;font-size:27px}.service-card h3{margin-bottom:17px}.service-card>p:not(.card-number):not(.text-link){font-size:15px;color:var(--muted);min-height:100px}.text-link{font-size:13px;font-weight:700;margin-top:27px}.text-link a{text-decoration:none;border-bottom:1px solid #b2c0ad;padding-bottom:5px}.text-link a:hover{color:#647d49}.approach{background:#eef0e7}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}.approach-copy>p:not(.eyebrow):not(.text-link){max-width:455px;color:var(--muted)}.step{display:grid;grid-template-columns:36px 1fr;gap:25px;border-bottom:1px solid #cbd3c4;padding-block:24px}.step:first-child{padding-top:0}.step h3{font-size:20px;margin-bottom:10px}.step p{color:var(--muted);font-size:14px;margin:0}.step .step-number{font-family:Georgia,serif;color:#819477;font-size:26px}.candidate{display:flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid var(--line)}.candidate>div:first-child{max-width:620px}.candidate h2{font-size:52px}.candidate p:not(.eyebrow){color:var(--muted);max-width:560px}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.section-heading-row h2{font-size:38px;margin-bottom:0}.journal .wp-block-post-template{margin-top:35px}.wp-block-post-template{gap:28px!important}.wp-block-post{min-width:0}.wp-block-post-featured-image{margin:0 0 22px}.wp-block-post-featured-image img{border-radius:4px}.wp-block-post-title{font-size:25px;margin-block:15px}.wp-block-post-title a{text-decoration:none}.wp-block-post-date,.wp-block-post-terms{font-size:11px;letter-spacing:.04em;color:var(--muted)}.wp-block-post-excerpt{font-size:14px;color:var(--muted)}.wp-block-post-excerpt__more-link{font-size:12px;font-weight:700}.wp-block-query-no-results{padding:28px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}.faq-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:90px;padding-top:0}.wp-block-details{padding:22px 0;border-bottom:1px solid var(--line)}.wp-block-details summary{font-weight:600;font-size:16px;cursor:pointer}.wp-block-details p{font-size:15px;color:var(--muted);padding-top:16px}.cta{background:var(--forest);color:var(--paper);text-align:center}.cta .eyebrow{color:var(--gold)}.cta h2{font-size:56px;margin-block:20px 30px}.cta .wp-block-buttons{justify-content:center}.cta .wp-block-button__link{background:var(--gold);color:var(--forest);border-color:var(--gold);min-width:150px}.site-footer{padding-top:62px;background:#f0efe7}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-intro{max-width:330px;color:var(--muted);font-size:14px;margin-top:22px}.footer-links h3{font-size:14px;margin-bottom:23px}.footer-links p{font-size:13px;margin-bottom:10px}.footer-links a{text-decoration:none}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-block:23px;margin-top:45px!important;font-size:11px;color:var(--muted)}.footer-bottom p{margin:0}.page-hero{padding-block:80px;border-bottom:1px solid var(--line)}.prose{max-width:800px;padding-block:45px}.article{max-width:800px}.article h1,.page-content h1{font-size:clamp(36px,5vw,64px);line-height:1.1;letter-spacing:-.045em}.article .wp-block-post-content{margin-block:40px}.article .wp-block-post-featured-image{margin-top:30px}.article-navigation{display:flex;justify-content:space-between;gap:35px;border-top:1px solid var(--line);padding-top:30px}.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:100px}.contact-grid h2{font-size:35px}.small{font-size:13px;color:var(--muted)}.cs-form{display:grid;gap:18px}.cs-form label{font-size:14px;font-weight:600;display:block}.cs-form input,.cs-form select,.cs-form textarea,.wp-block-search__input{display:block;width:100%;padding:13px;margin-top:8px;border:1px solid #bac8b9;border-radius:3px;background:#fff;color:var(--ink)}.cs-form textarea{min-height:160px;resize:vertical}.cs-form button{padding:16px 26px;border:0;border-radius:3px;background:var(--forest);color:white;cursor:pointer}.cs-form .cs-consent{display:flex;align-items:start;gap:12px;font-weight:400;font-size:13px}.cs-consent input{width:18px;height:18px;margin-top:3px;flex-shrink:0}.cs-form .cs-trap{display:none}.cs-notice{padding:20px;background:#e5efdc;border-left:3px solid var(--forest);margin-bottom:25px}.cs-notice.is-error{background:#fff0df;border-color:#946428}.wp-block-search__button{background:var(--forest);color:white;border:0;padding:12px 22px}.wp-block-query-pagination{margin-top:40px}.site-main{min-height:45vh}
@media(min-width:1600px){.hero{padding-block:80px}.hero-visual img{height:580px}}
@media(max-width:1000px){.shell{width:calc(100% - 48px)}.hero{gap:30px}.hero h1{font-size:50px}.hero-visual img{height:500px}.main-nav .wp-block-navigation__container{gap:16px}.brand-tagline{display:none}.wordmark{font-size:21px}.brand-symbol{font-size:36px}.approach-grid,.contact-grid{gap:45px}.service-card{padding:23px}.service-strip{gap:20px}.faq-grid{gap:35px}.image-label{left:-15px}}
@media(max-width:781px){.shell{width:calc(100% - 40px)}.section{padding-block:58px}.header-inner{min-height:84px;gap:15px}.main-nav .wp-block-navigation__responsive-container-open{display:flex}.main-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}.hero{grid-template-columns:1fr;padding-top:20px;gap:15px;padding-bottom:40px}.hero h1{font-size:clamp(43px,9vw,62px);max-width:550px}.hero-copy{padding-block:25px}.hero-lead{font-size:17px}.hero-visual img{height:440px;border-top-left-radius:100px;object-position:70% center}.image-label{left:0;bottom:18px}.service-strip{grid-template-columns:1fr;gap:16px}.service-strip p{border-bottom:1px solid #d7dcd0;padding-bottom:12px}.service-strip p:last-child{border:0;padding-bottom:0}.service-grid,.approach-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:24px}.card-number{margin-bottom:25px}.service-card>p:not(.card-number):not(.text-link){min-height:0}.candidate{display:block}.candidate h2{font-size:42px}.candidate .wp-block-buttons{margin-top:30px}.section-heading-row{display:block}.section-heading-row h2{font-size:34px}.wp-block-post-template.is-layout-grid{grid-template-columns:1fr!important;gap:36px!important}.faq-grid{padding-top:10px}.cta h2{font-size:43px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{font-size:10px}.page-hero{padding-block:50px}.page-hero h1{font-size:48px}.article h1{font-size:42px}.main-nav .is-menu-open{padding:32px}.main-nav .is-menu-open .wp-block-navigation__container{gap:24px}.main-nav .is-menu-open .wp-block-navigation-item:last-child a{margin-top:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a{transition:none}}

/* Original client artwork, with its proportions and colours preserved. */
.client-logo { margin: 0; width: 270px; flex-shrink: 0; }
.client-logo a { display: block; }
.client-logo img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 1; }
@media (max-width: 1000px) { .client-logo { width: 220px; } }
@media (max-width: 781px) { .client-logo { width: 230px; max-width: 65vw; } }

/* Journal: a deliberate introduction followed by self-contained article cards. */
.journal-page .journal-intro {
  max-width: 720px;
  margin-bottom: 52px;
}
.journal-intro .eyebrow { margin: 0 0 18px; }
.journal-intro h1 {
  font-size: clamp(40px, 4.6vw, 62px);
  line-height: 1.1;
  letter-spacing: -.045em;
  margin: 0 0 24px;
}
.journal-intro > p:last-child {
  max-width: 550px;
  margin: 0;
  font-size: 17px;
  line-height: 1.7;
  color: var(--muted);
}
.journal-page .wp-block-post-template { gap: 24px !important; }
.journal-page .wp-block-post {
  display: flex;
  flex-direction: column;
  padding: 28px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 10px;
  box-shadow: 0 4px 16px rgba(22, 60, 50, .035);
}
.journal-page .wp-block-post:focus-within,
.journal-page .wp-block-post:hover { border-color: #8ba18f; }
.journal-page .wp-block-post-featured-image { margin: 0 0 24px; }
.journal-page .wp-block-post-featured-image img { border-radius: 5px; }
.journal-page .wp-block-post-date {
  margin: 0 0 16px;
  font-size: 11px;
  line-height: 1.5;
}
.journal-page .wp-block-post-title {
  margin: 0 0 18px;
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: -.025em;
}
.journal-page .wp-block-post-title a:hover { color: #617c4e; }
.journal-page .wp-block-post-excerpt {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
}
.journal-page .wp-block-post-excerpt__excerpt { margin: 0 0 28px; }
.journal-page .wp-block-post-excerpt__more-text {
  margin: auto 0 0;
  padding-top: 18px;
  border-top: 1px solid #e7ebe3;
}
.journal-page .wp-block-post-excerpt__more-link {
  font-size: 13px;
  text-decoration: none;
}
@media (min-width: 782px) and (max-width: 1100px) {
  .journal-page .wp-block-post-template.is-layout-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 781px) {
  .journal-page .journal-intro { margin-bottom: 36px; }
  .journal-intro h1 { font-size: 42px; margin-bottom: 20px; }
  .journal-page .wp-block-post { padding: 24px; }
  .journal-page .wp-block-post-title { font-size: 23px; }
}

/* Restored services, application forms and example directory. */
.prose.section { padding-top: 42px; padding-bottom: 42px; }
.prose.section h2 { margin: 0 0 22px; }
.prose.section p { margin: 0; line-height: 1.85; }
.two-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.training-image { margin: 0; }
.training-image img { display: block; width: 100%; max-height: 440px; object-fit: cover; border-radius: 12px; }
.form-intro h2 { margin: 16px 0 24px; }
.form-intro p { line-height: 1.8; }
.form-panel { padding: 32px; background: #fff; border: 1px solid var(--line); border-radius: 12px; min-width: 0; }
.cs-form { gap: 24px; }
.cs-form > p { margin: 0; }
.cs-form textarea { min-height: 110px; resize: vertical; }
.cs-form input[type=file] { white-space: normal; font-size: 13px; }
.cs-form .cs-field label { display: block; line-height: 1.6; }
.cs-form .small { line-height: 1.75; overflow-wrap: anywhere; }
.directory-notice { padding: 22px 26px; border-left: 3px solid var(--forest); background: #eef1e8; line-height: 1.8; }
.directory-filters { display: grid; grid-template-columns: 2fr 1fr auto auto; align-items: end; gap: 20px; margin: 36px 0 24px; }
.directory-filters label { font-size: 14px; font-weight: 600; }
.directory-filters input, .directory-filters select { box-sizing: border-box; width: 100%; min-height: 48px; margin-top: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 4px; background: #fff; color: inherit; font: inherit; }
.directory-filters button { min-height: 48px; padding: 12px 20px; background: var(--forest); color: #fff; border: 0; border-radius: 4px; font: inherit; cursor: pointer; }
.directory-filters > a { padding-bottom: 13px; font-size: 13px; }
.profile-card { background: #fff; border-radius: 10px; }
.profile-card h2 { font-size: 27px; margin: 18px 0; }
.service-card.profile-card > p:not(.card-number):not(.text-link) { min-height: 0; }
.profile-card .profile-skills { padding: 18px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.profile-card dl { font-size: 14px; line-height: 1.7; }
.profile-card dt { font-weight: 600; margin-top: 16px; }
.profile-card dd { margin: 3px 0 0; color: var(--muted); }
.profile-card .text-link { margin-top: 28px; }
.directory-next > h2 { margin-bottom: 32px; }
.directory-next > .wp-block-buttons { margin-top: 32px; }
.footer-email { font-size: 13px; overflow-wrap: anywhere; }
@media (max-width: 1000px) {
  .directory-filters { grid-template-columns: 1fr 1fr; }
  .contact-grid { gap: 40px; }
}
@media (max-width: 700px) {
  .two-cards, .directory-filters { grid-template-columns: 1fr; }
  .form-panel { padding: 22px; }
  .prose.section { padding-top: 30px; padding-bottom: 30px; }
  .directory-notice { padding: 18px; }
  .directory-grid { grid-template-columns: 1fr; }
  .directory-filters > a { padding-bottom: 0; }
}



/* Content rhythm: explicit margins survive WordPress's zero block-gap reset. */
.site-main { --copy-gap: 24px; --heading-gap: 28px; }
.site-main h2.wp-block-heading { margin-bottom: var(--heading-gap); line-height: 1.2; }
.site-main h3.wp-block-heading { margin-bottom: 20px; line-height: 1.35; }
.site-main :is(.section-heading, .approach-copy, .candidate, .faq-grid, .section-heading-row, .form-intro) .eyebrow { margin: 0 0 20px; }
.site-main :is(.section-intro, .approach-copy, .candidate, .form-intro) p { line-height: 1.8; }
.site-main .section-heading { margin-bottom: 48px; }
.site-main .section-intro { max-width: 560px; }
.site-main .approach-copy > .text-link { margin-top: 32px; }
.site-main .section-heading-row { margin-bottom: 40px; }
.site-main .section-heading-row h2 { margin-bottom: 0; }
.site-main .service-card h3 { margin-bottom: 22px; }
.site-main .service-card > p:not(.card-number):not(.text-link) { line-height: 1.8; }
.site-main .step { padding-block: 32px; }
.site-main .step:first-child { padding-top: 0; }
.site-main .step h3 { margin-bottom: 18px; }
.site-main .step p:not(.step-number) { font-size: 15px; line-height: 1.85; }
.site-main .prose.section { padding-block: 52px; }
.site-main .prose.section > p + p { margin-top: var(--copy-gap); }
.site-main .training-section { padding-top: 48px; }
.site-main .form-intro > p + p { margin-top: 20px; }
.site-main .form-panel { padding: 40px; }
.site-main .cs-form { gap: 28px; }
.site-main .wp-block-details { padding-block: 26px; }
.site-main .wp-block-details p { padding-top: 20px; line-height: 1.8; }
.site-main .journal .wp-block-post-title { margin-block: 20px 24px; line-height: 1.35; }
.site-main .journal .wp-block-post-excerpt { line-height: 1.8; }
.site-main .journal .wp-block-post-excerpt__more-text { margin-top: 24px; }
.site-main .journal-page .wp-block-post-title { margin-bottom: 24px; }
.site-main .article .wp-block-post-content,
.site-main .page-content .wp-block-post-content { line-height: 1.85; }
.site-main :is(.article, .page-content) .wp-block-post-content > * + * { margin-top: var(--copy-gap); }
.site-main :is(.article, .page-content) .wp-block-post-content > :is(h2,h3) { margin-top: 48px; margin-bottom: 24px; }
.site-main :is(.article, .page-content) .wp-block-post-content li + li { margin-top: 12px; }
.site-main .directory-next > h2 { margin-bottom: 40px; }
.site-main .profile-card h2 { margin-bottom: 24px; line-height: 1.3; }
@media (max-width: 1000px) {
  .site-main .form-panel { padding: 28px; }
}
@media (max-width: 781px) {
  .site-main { --heading-gap: 24px; }
  .site-main .section { padding-block: 68px; }
  .site-main .prose.section { padding-block: 38px; }
  .site-main .faq-grid { padding-top: 12px; }
  .site-main :is(.approach-grid, .faq-grid, .contact-grid) { gap: 40px; }
  .site-main .service-grid { gap: 28px; }
  .site-main .section-heading { margin-bottom: 36px; }
  .site-main .section-heading-row h2 { margin-bottom: 24px; }
  .site-main .form-panel { padding: 24px; }
  .site-main .training-section { padding-top: 32px; }
  .site-main .step { gap: 18px; }
}
/* Give page introductions and article metadata their own breathing room. */
.site-main .page-hero .hero-lead { max-width: 600px; margin-bottom: 36px; }
.site-main .article > .wp-block-post-title { margin-block: 24px; }
.site-main .page-content > .wp-block-post-title { margin-bottom: 36px; }
