:root{--grit-orange:#f47a20;--grit-dark:#1d232b;--grit-ink:#222;--grit-muted:#6e747b;--grit-bg:#f6f7f8;--grit-line:#e5e7eb}
.grit-wrap{max-width:1180px;margin:0 auto;padding:0 28px;box-sizing:border-box}.grit-home{font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic",sans-serif;color:var(--grit-ink)}
.grit-hero{background:linear-gradient(115deg,#fff 0%,#fff 61%,#222a33 61%,#161b21 100%);min-height:600px;display:flex;align-items:center;position:relative;overflow:hidden}.grit-hero:after{content:"BUILD YOUR FUTURE";position:absolute;right:-20px;bottom:12px;color:rgba(255,255,255,.06);font-size:70px;font-weight:900;letter-spacing:.04em}.grit-hero-copy{max-width:670px;padding:80px 0}.grit-kicker{color:var(--grit-orange);font-weight:800;letter-spacing:.08em;margin-bottom:16px}.grit-hero h1{font-size:48px;line-height:1.38;margin:0 0 18px;font-weight:900;letter-spacing:.02em}.grit-hero h1 em{font-style:normal;color:var(--grit-orange)}.grit-hero p{font-size:17px;line-height:2;color:#555;max-width:630px}.grit-hero-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}.grit-btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border-radius:6px;background:var(--grit-orange);color:#fff!important;font-weight:800;text-decoration:none!important}.grit-btn.outline{background:#fff;border:1px solid #bbb;color:#222!important}.grit-section{padding:78px 0}.grit-section.gray{background:var(--grit-bg)}.grit-section-head{text-align:center;margin-bottom:38px}.grit-section-head small{display:block;color:var(--grit-orange);font-weight:800;letter-spacing:.12em}.grit-section-head h2{font-size:32px;margin:8px 0 10px}.grit-section-head p{color:var(--grit-muted);line-height:1.8}.grit-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.grit-card{background:#fff;border:1px solid var(--grit-line);border-radius:10px;padding:26px;box-shadow:0 7px 22px rgba(0,0,0,.045)}.grit-card .num{font-size:34px;color:#eceff1;font-weight:900}.grit-card h3{font-size:18px;margin:6px 0 10px}.grit-card p{font-size:14px;color:#666;line-height:1.8}.grit-topic-links{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.grit-topic-links a{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--grit-line);padding:18px 20px;background:#fff;text-decoration:none!important;color:#222!important;font-weight:700}.grit-topic-links a span{color:var(--grit-orange)}
.grit-filter{background:#fff;border:1px solid var(--grit-line);padding:22px;margin-bottom:30px;border-radius:10px}.grit-filter-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.grit-filter input,.grit-filter select{width:100%;height:46px;border:1px solid #d7dadd;border-radius:5px;padding:0 10px;box-sizing:border-box}.grit-filter button{height:46px;border:0;background:var(--grit-orange);color:#fff;font-weight:800;border-radius:5px;cursor:pointer}.grit-jobs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.grit-job-card{background:#fff;border:1px solid var(--grit-line);border-radius:10px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.05)}.grit-job-card a{text-decoration:none!important;color:inherit!important}.grit-job-thumb{aspect-ratio:16/10;background:#eee;overflow:hidden}.grit-job-thumb img{width:100%;height:100%;object-fit:cover}.grit-job-body{padding:20px}.grit-badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.grit-badge{font-size:11px;padding:5px 8px;border-radius:4px;background:#fff3ea;color:#c75b0a;font-weight:700}.grit-job-card h2{font-size:18px;line-height:1.55;margin:0 0 12px}.grit-job-line{font-size:13px;color:#666;margin:6px 0}.grit-job-salary{font-size:17px;font-weight:800;color:var(--grit-orange);margin-top:10px}.grit-archive-head{background:#212832;color:#fff;padding:66px 0 58px}.grit-archive-head h1{font-size:38px;margin:0 0 12px}.grit-archive-head p{color:#cdd2d8}.grit-archive-main{padding:48px 0 80px;background:#f7f8f9}
.grit-detail{background:#f6f7f8;padding-bottom:80px}.grit-detail-hero{background:#202731;color:#fff;padding:48px 0}.grit-detail-hero .grit-badge{background:#3a424c;color:#fff}.grit-detail-hero h1{font-size:36px;line-height:1.4;margin:12px 0}.grit-detail-company{color:#cbd0d6}.grit-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;margin-top:30px}.grit-panel{background:#fff;border:1px solid var(--grit-line);border-radius:10px;padding:28px;margin-bottom:22px}.grit-panel h2{font-size:22px;border-left:5px solid var(--grit-orange);padding-left:12px;margin:0 0 20px}.grit-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--grit-line);border-left:1px solid var(--grit-line)}.grit-summary>div{border-right:1px solid var(--grit-line);border-bottom:1px solid var(--grit-line);padding:16px}.grit-summary dt{font-size:12px;color:#777;margin-bottom:5px}.grit-summary dd{margin:0;font-weight:700;line-height:1.65}.grit-rich-text{white-space:pre-line;line-height:1.9}.grit-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.grit-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:5px}.grit-apply{position:sticky;top:30px}.grit-apply .price{font-size:23px;color:var(--grit-orange);font-weight:900;margin-bottom:12px}.grit-apply a{display:block;text-align:center}.grit-apply .phone{margin-top:10px;text-align:center;font-weight:700}.grit-note{font-size:12px;color:#777;line-height:1.7}.grit-pagination{text-align:center;margin-top:36px}
@media(max-width:900px){.grit-hero{background:#fff;min-height:auto}.grit-hero-copy{padding:58px 0}.grit-hero h1{font-size:34px}.grit-card-grid{grid-template-columns:repeat(2,1fr)}.grit-topic-links{grid-template-columns:1fr 1fr}.grit-filter-grid{grid-template-columns:1fr 1fr}.grit-jobs{grid-template-columns:1fr 1fr}.grit-detail-layout{grid-template-columns:1fr}.grit-apply{position:static}.grit-summary{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.grit-wrap{padding:0 18px}.grit-hero h1{font-size:29px}.grit-section{padding:52px 0}.grit-card-grid,.grit-topic-links,.grit-filter-grid,.grit-jobs,.grit-summary,.grit-gallery{grid-template-columns:1fr}.grit-section-head h2{font-size:26px}.grit-detail-hero h1,.grit-archive-head h1{font-size:28px}}

/* ZEROKEN brand */
.grit-brand{font-size:38px;font-weight:900;letter-spacing:.04em;line-height:1;color:#111;margin:0 0 10px}.grit-brand span{font-size:13px;font-weight:800;letter-spacing:.18em;color:#f36f21;margin-left:10px;vertical-align:middle}.grit-kicker{letter-spacing:.12em}
/* ZEROKEN v2 visual refresh */
.grit-hero-video{height:650px;position:relative;overflow:hidden;background:#111;color:#fff}.grit-hero-movie{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.grit-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.5) 42%,rgba(0,0,0,.08) 78%)}.grit-hero-video-inner{height:100%;display:flex;align-items:center;position:relative;z-index:2}.grit-hero-video .grit-hero-copy{padding:40px 0;max-width:650px}.grit-brand.light{color:#fff}.grit-hero-video h1{font-size:64px;line-height:1.15;margin:14px 0 22px;font-weight:900;text-shadow:0 3px 20px rgba(0,0,0,.2)}.grit-hero-video h1 em{font-style:normal;color:#ffcc21}.grit-hero-video p{font-size:17px;line-height:1.9;color:#fff;max-width:590px}.grit-btn.glass{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.55);backdrop-filter:blur(5px)}.grit-hero-stamp{position:absolute;right:25px;top:90px;background:#ffd52a;color:#111;width:160px;height:160px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-align:center;font-size:19px;font-weight:800;line-height:1.45;transform:rotate(-7deg);box-shadow:0 12px 35px rgba(0,0,0,.18);border:3px dashed #111}.grit-search-band{margin-top:-42px;position:relative;z-index:5}.grit-filter{box-shadow:0 14px 40px rgba(0,0,0,.12);border:0}.grit-filter-title{font-size:18px;font-weight:900;margin:0 0 14px}.grit-filter-grid{grid-template-columns:1fr 1fr 1.4fr .9fr 1.2fr}.grit-section-head.left{text-align:left}.zeroken-type-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.zeroken-type{min-height:112px;border:1px solid var(--grit-line);border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;padding:10px;text-decoration:none!important;color:#222!important;transition:.2s}.zeroken-type:hover{transform:translateY(-4px);border-color:#f47a20;box-shadow:0 10px 24px rgba(0,0,0,.08)}.zeroken-type span{font-size:30px}.zeroken-type b{font-size:12px;line-height:1.45}.grit-section.yellow{background:#ffd52a}.zeroken-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.zeroken-feature{background:#fff;border:3px solid #111;border-radius:18px;padding:28px;text-align:center;box-shadow:7px 7px 0 #111}.zeroken-feature .big{font-size:48px}.zeroken-feature h3{font-size:24px;margin:5px 0 10px}.zeroken-feature p{margin:0;line-height:1.7}.grit-card.fun{position:relative;overflow:hidden}.grit-card.fun .emoji{font-size:40px;position:absolute;right:18px;top:16px}.grit-card.fun:hover .emoji{animation:zerokenWiggle .45s ease}@keyframes zerokenWiggle{25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}
@media(max-width:900px){.grit-hero-video{height:570px}.grit-hero-video h1{font-size:46px}.grit-hero-stamp{width:115px;height:115px;font-size:14px;top:40px}.zeroken-type-grid{grid-template-columns:repeat(3,1fr)}.zeroken-feature-grid{grid-template-columns:1fr}.grit-filter-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.grit-hero-video{height:590px}.grit-hero-video h1{font-size:39px}.grit-hero-stamp{display:none}.grit-search-band{margin-top:-20px}.zeroken-type-grid{grid-template-columns:repeat(2,1fr)}.grit-filter-grid{grid-template-columns:1fr}.grit-hero-video p{font-size:14px}.grit-jobs{grid-template-columns:1fr}}

/* ===== ZEROKEN v3 / approved visual direction ===== */
:root{--zk-yellow:#ffd91a;--zk-orange:#ff7a00;--zk-black:#0b0b0c;--zk-soft:#f5f6f7}
body.home #header{background:#fff!important}body.home #main_contents{padding-top:0!important}.zeroken-v3{background:#fff;color:#111}.zeroken-v3 .grit-wrap{max-width:1460px}
.zk-hero{height:520px;position:relative;overflow:hidden;background:#111;color:#fff}.zk-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;display:block}.zk-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.55) 32%,rgba(0,0,0,.12) 68%,rgba(0,0,0,.08) 100%)}.zk-hero-inner{height:100%;position:relative;display:flex;align-items:center;z-index:2}.zk-hero-copy{width:650px;padding-top:20px}.zk-eyebrow{font-weight:900;font-size:17px;letter-spacing:.06em;margin-bottom:10px}.zk-hero h1{font-size:67px;line-height:1.08;margin:0;color:#fff;font-weight:900;letter-spacing:.02em;text-shadow:0 4px 20px rgba(0,0,0,.45)}.zk-hero h1 em{font-style:normal;color:var(--zk-yellow);font-size:1.1em}.zk-hero-copy>p{font-size:23px;font-weight:800;line-height:1.55;margin:24px 0 20px;color:#fff;text-shadow:0 2px 12px #000}.zk-benefits{display:flex;gap:30px;border-top:1px solid rgba(255,255,255,.35);padding-top:18px}.zk-benefits span{display:grid;grid-template-columns:auto 1fr;column-gap:8px;font-size:20px}.zk-benefits b{font-size:14px;color:var(--zk-yellow)}.zk-benefits small{grid-column:2;font-size:11px;color:#fff;margin-top:3px}
.zk-search{position:relative;margin-top:-28px;z-index:5}.zk-search .grit-filter{border-radius:14px;padding:18px 20px;margin:0;box-shadow:0 12px 38px rgba(0,0,0,.14);display:grid;grid-template-columns:250px 1fr;gap:18px;align-items:center}.zk-search .grit-filter-title{margin:0;font-size:19px}.zk-search .grit-filter-grid{grid-template-columns:1fr 1fr 1.25fr .85fr 1.2fr}.zk-search .grit-filter input,.zk-search .grit-filter select{height:52px;background:#fff}.zk-search .grit-filter button{height:52px;border-radius:8px;background:var(--zk-orange);font-size:15px}
.zk-types{padding:14px 0 30px}.zk-types-row{display:grid;grid-template-columns:255px 1fr;gap:10px}.zk-types-title{background:linear-gradient(135deg,#ffe91f,#ffd20c);padding:24px 20px;border-radius:10px 0 0 10px}.zk-types-title small{font-weight:800}.zk-types-title h2{font-size:22px;line-height:1.4;margin:5px 0}.zk-types-title b{font-size:13px}.zk-type-strip{display:grid;grid-template-columns:repeat(10,1fr);gap:8px}.zk-type-strip a{min-width:0;background:#fff;border:1px solid #e4e6e8;border-radius:7px;overflow:hidden;text-align:center;color:#111!important;text-decoration:none!important;padding:10px 5px;display:flex;flex-direction:column;justify-content:center;gap:6px}.zk-type-strip a:hover{border-color:var(--zk-yellow);transform:translateY(-2px)}.zk-type-strip span{font-size:28px}.zk-type-strip b{font-size:11px;line-height:1.3}
.zk-jobs{padding:20px 0 70px;background:linear-gradient(#fff,#f7f8f9)}.zk-heading{display:flex;align-items:flex-end;justify-content:space-between;margin:10px 0 25px}.zk-heading small{font-weight:800;letter-spacing:.08em}.zk-heading h2{font-size:34px;margin:3px 0;border-bottom:4px solid var(--zk-yellow);display:inline-block}.zk-heading>a{font-weight:700;color:#111!important}.zk-jobs .grit-jobs{grid-template-columns:repeat(3,1fr);gap:20px}.zk-jobs .grit-job-card{border:0;border-radius:9px;box-shadow:0 5px 18px rgba(0,0,0,.08);transition:.2s}.zk-jobs .grit-job-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,0,0,.12)}.zk-jobs .grit-job-thumb{aspect-ratio:16/8.8;position:relative}.zk-heart{position:absolute;right:12px;bottom:10px;width:31px;height:31px;border-radius:50%;background:rgba(0,0,0,.45);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px}.zk-jobs .grit-job-body{padding:15px 16px 18px}.zk-jobs .grit-job-card h2{font-size:16px;min-height:50px}.zk-jobs .grit-job-salary{color:var(--zk-orange);font-size:20px}.zk-jobs .grit-badge{background:#fff4e8;color:#d65d00}
.zk-guide{background:var(--zk-black);color:#fff;padding:70px 0}.zk-guide>.grit-wrap{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:center}.zk-guide-copy small{color:var(--zk-yellow);font-weight:900}.zk-guide-copy h2{font-size:38px;line-height:1.35;margin:10px 0 15px}.zk-guide-copy p{color:#d8d8d8;line-height:1.9}.zk-guide-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.zk-guide-cards a{background:#fff;color:#111!important;text-decoration:none!important;border-radius:12px;padding:24px;text-align:center;font-size:34px}.zk-guide-cards b,.zk-guide-cards span{display:block}.zk-guide-cards b{font-size:17px;margin-top:8px}.zk-guide-cards span{font-size:11px;color:#777;margin-top:5px}
@media(max-width:1000px){.zk-hero{height:560px}.zk-hero h1{font-size:50px}.zk-search .grit-filter{grid-template-columns:1fr}.zk-type-strip{grid-template-columns:repeat(5,1fr)}.zk-jobs .grit-jobs{grid-template-columns:repeat(2,1fr)}.zk-guide>.grit-wrap{grid-template-columns:1fr}.zk-benefits{gap:14px}}
@media(max-width:600px){.zk-hero{height:610px}.zk-hero-image{object-position:60% center}.zk-hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.35))}.zk-hero-copy{width:100%}.zk-hero h1{font-size:43px}.zk-hero-copy>p{font-size:17px}.zk-benefits{display:grid;grid-template-columns:1fr 1fr}.zk-search{margin-top:-18px}.zk-search .grit-filter{padding:16px}.zk-search .grit-filter-grid{grid-template-columns:1fr}.zk-types-row{grid-template-columns:1fr}.zk-types-title{border-radius:10px}.zk-type-strip{grid-template-columns:repeat(2,1fr)}.zk-jobs .grit-jobs{grid-template-columns:1fr}.zk-guide-cards{grid-template-columns:1fr}.zk-guide-copy h2{font-size:30px}}


/* ZEROKEN v4: static hero + clearer cards */
.zk-hero-copy{background:linear-gradient(90deg,rgba(0,0,0,.34),rgba(0,0,0,0));border-radius:14px;padding:22px 22px 22px 0}.zk-jobs .grit-job-body{background:#fff}.zk-jobs .grit-job-card h2{color:#151515;font-weight:800}.zk-jobs .grit-job-line{color:#555}.zk-benefits small{font-weight:600}.zk-jobs .grit-job-thumb img{filter:none!important;transform:none!important;transition:transform .25s ease}.zk-jobs .grit-job-card:hover .grit-job-thumb img{transform:scale(1.025)!important}

/* ===== ZEROKEN v8: three verified refinements loaded from job.css ===== */
/* 1) Clear hero CTA */
.zk-hero-cta{
  position:relative!important;display:inline-flex!important;align-items:center!important;gap:10px!important;
  min-height:54px!important;padding:0 24px!important;background:#fff!important;color:#111!important;
  border:2px solid #111!important;border-radius:999px!important;box-shadow:5px 5px 0 #ffe11a,0 6px 18px rgba(0,0,0,.14)!important;
  font-size:14px!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.zk-hero-cta:before{content:'▶'!important;display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:50%!important;background:#111!important;color:#fff!important;font-size:13px!important;flex:0 0 34px!important}
.zk-hero-cta:after{content:'→'!important;font-size:20px!important;margin-left:3px!important}
.zk-hero-cta:hover{background:#ffe11a!important;transform:translate(-2px,-2px)!important;box-shadow:7px 7px 0 #111!important;color:#111!important}

/* 2) Compact trade cards */
.zk-types-row{align-items:start!important}
.zk-type-strip{align-self:start!important;align-items:start!important;grid-auto-rows:112px!important}
.zk-type-strip a{height:112px!important;min-height:112px!important;max-height:112px!important;display:grid!important;grid-template-rows:70px 42px!important;align-content:start!important;overflow:hidden!important;padding:0!important}
.zk-type-strip a img{width:100%!important;height:70px!important;object-fit:cover!important;display:block!important}
.zk-type-strip a b{min-height:42px!important;height:42px!important;padding:5px!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:1.22!important;overflow:hidden!important}

/* 3) Sharp job photos + HTML/CSS badges */
.zk-jobs .grit-job-thumb{position:relative!important;overflow:hidden!important;background:#e9ecef!important}
.zk-jobs .grit-job-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;image-rendering:auto!important;filter:none!important;transform:none!important;backface-visibility:hidden!important}
.zk-jobs .grit-badges{position:absolute!important;top:8px!important;left:8px!important;z-index:3!important;display:flex!important;gap:5px!important;flex-wrap:wrap!important;margin:0!important}
.zk-jobs .grit-badge{display:inline-flex!important;align-items:center!important;min-height:25px!important;padding:4px 8px!important;border-radius:6px!important;background:rgba(255,255,255,.97)!important;color:#f36a13!important;font-size:9.5px!important;font-weight:900!important;line-height:1!important;box-shadow:0 1px 4px rgba(0,0,0,.12)!important;-webkit-font-smoothing:antialiased!important;text-rendering:geometricPrecision!important}
.zk-jobs .grit-job-card h2,.zk-jobs .grit-job-line,.zk-jobs .grit-job-salary{-webkit-font-smoothing:antialiased!important;text-rendering:geometricPrecision!important}
@media(max-width:760px){.zk-type-strip{grid-auto-rows:108px!important}.zk-type-strip a{height:108px!important;min-height:108px!important;max-height:108px!important;grid-template-rows:66px 42px!important}.zk-type-strip a img{height:66px!important}.zk-hero-cta{min-height:50px!important;padding:0 18px!important;font-size:13px!important}}


/* ========================================================================
   ZEROKEN v10 fixes: natural guide headline, sharp inner images, contact CTA
   ======================================================================== */
.zk-guide-copy h2{
  font-size:clamp(30px,3vw,46px)!important;
  line-height:1.38!important;
  letter-spacing:.01em!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  line-break:strict!important;
  max-width:720px!important;
}
.zk-guide-copy h2 br{display:block!important}
@media (min-width:1001px){
  .zk-guide>.grit-wrap{grid-template-columns:minmax(520px,1.15fr) minmax(0,1fr)!important;gap:46px!important}
  .zk-guide-copy{min-width:0!important}
}
@media(max-width:600px){
  .zk-guide-copy h2{font-size:clamp(28px,9vw,36px)!important;line-height:1.42!important}
}

/* Always use the available source image cleanly; never stretch a tiny crop. */
.single #post_image img,
.single-news #post_image img,
.single-introduce #post_image img,
#introduce_slider img,
.grit-detail .grit-panel>img,
.post_content img,
.grit-gallery img{
  max-width:100%!important;
  height:auto!important;
  image-rendering:auto!important;
  filter:none!important;
  transform:none!important;
  backface-visibility:hidden!important;
}
#introduce_slider .item{background:#f2f3f4!important;text-align:center!important}
#introduce_slider img{width:100%!important;max-height:720px!important;object-fit:contain!important;object-position:center!important}
.single-introduce #post_image img,.single #post_image img,.single-news #post_image img{width:100%!important;object-fit:contain!important}
.grit-detail .grit-panel[style*="padding:0"] img{width:100%!important;max-height:760px!important;object-fit:contain!important;background:#f4f5f6!important}
.grit-gallery img{width:100%!important;aspect-ratio:4/3!important;object-fit:cover!important}

/* Contact CTA on job and all inner content pages. */
.zk-contact-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:14px}
.zk-contact-btn{display:flex!important;align-items:center;justify-content:center;gap:8px;min-height:54px;padding:10px 16px;border-radius:9px!important;text-decoration:none!important;font-weight:900!important;line-height:1.25;box-sizing:border-box;transition:.18s ease}
.zk-contact-btn span{font-size:18px}
.zk-contact-btn small{font-size:11px;font-weight:800;opacity:.78;margin-left:3px}
.zk-contact-tel{background:#111!important;color:#fff!important;border:2px solid #111!important}
.zk-contact-mail{background:#ffdf19!important;color:#111!important;border:2px solid #111!important}
.zk-contact-btn:hover{transform:translateY(-2px);box-shadow:0 6px 0 rgba(0,0,0,.13)}
.zk-inner-contact{margin:52px 0 10px;padding:28px;border:2px solid #111;border-radius:14px;background:#fff8d5;box-sizing:border-box}
.zk-inner-contact__head small{display:block;color:#f36a13;font-size:11px;font-weight:900;letter-spacing:.14em;margin-bottom:5px}
.zk-inner-contact__head h2{font-size:24px!important;line-height:1.45!important;margin:0 0 8px!important;border:0!important;padding:0!important}
.zk-inner-contact__head p{margin:0 0 14px;color:#555;line-height:1.7}
.zk-inner-contact .zk-contact-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:680px){
  .zk-inner-contact{padding:20px;margin-top:36px}
  .zk-inner-contact .zk-contact-actions{grid-template-columns:1fr}
  .zk-contact-btn{min-height:52px}
}

/* ===== ZEROKEN v11: inner-page clarity + contact information ===== */
.single .post_content img,
.single-news .post_content img,
.single-introduce .post_content img,
.page .post_content img,
.grit-detail .post_content img,
.grit-detail .grit-panel > img,
.single #post_image img,
.single-news #post_image img,
.single-introduce #post_image img,
#introduce_slider img,
.grit-gallery img {
  max-width:100% !important;
  height:auto !important;
  image-rendering:auto !important;
  filter:none !important;
  transform:none !important;
  backface-visibility:visible !important;
}
.grit-detail .grit-panel[style*="padding:0"] img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
.single #post_image,
.single-news #post_image,
.single-introduce #post_image,
.grit-detail .grit-panel[style*="padding:0"]{
  overflow:hidden !important;
  background:#f2f3f4 !important;
}
.single #post_image img,
.single-news #post_image img,
.single-introduce #post_image img{
  width:100% !important;
  object-fit:cover !important;
  object-position:center !important;
}
.zk-contact-actions,.zk-contact-btn{display:none !important}
.zk-contact-info{margin:18px 0 0;border-top:1px solid #ddd}
.zk-contact-info>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:15px 0;border-bottom:1px solid #ddd;align-items:center}
.zk-contact-info dt{font-size:13px;font-weight:900;color:#666}
.zk-contact-info dd{margin:0;font-size:17px;font-weight:900;word-break:break-word}
.zk-contact-info a{color:#111!important;text-decoration:none!important;border-bottom:2px solid #ffdf19}
.zk-job-contact-info{margin:18px 0;border:1px solid #ddd;border-radius:10px;background:#fff;padding:4px 16px}
.zk-job-contact-info>div{padding:14px 0;border-bottom:1px solid #e5e5e5}
.zk-job-contact-info>div:last-child{border-bottom:0}
.zk-job-contact-info span{display:block;font-size:11px;font-weight:900;color:#777;margin-bottom:4px}
.zk-job-contact-info a{display:inline!important;text-align:left!important;color:#111!important;text-decoration:none!important;font-size:17px;font-weight:900;word-break:break-word;border-bottom:2px solid #ffdf19}
@media(max-width:600px){.zk-contact-info>div{grid-template-columns:1fr;gap:4px}.zk-contact-info dd{font-size:15px}}

/* ===== ZEROKEN v12: sharp inner-page images + plain contact details ===== */
.zk-detail-image-panel{padding:0!important;overflow:hidden!important;text-align:center!important;background:#eef1f3!important}
.zk-detail-main-image{display:block!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:none!important;margin:0 auto!important;object-fit:contain!important;filter:none!important;transform:none!important;image-rendering:auto!important}
.zk-job-contact-box{margin:22px 0 14px;padding:20px;border:1px solid #eadfca;border-radius:12px;background:#fff8ea}
.zk-job-contact-box h2{font-size:20px!important;border:0!important;padding:0!important;margin:0 0 14px!important;color:#111}
.zk-job-contact-row{padding:12px 0;border-top:1px solid #eadfca}
.zk-job-contact-row:first-of-type{border-top:0}
.zk-job-contact-label{display:block;font-size:12px;font-weight:800;color:#777;margin-bottom:4px}
.zk-job-contact-row strong{display:block;font-size:18px;line-height:1.45;color:#111;word-break:break-all}
.grit-apply .grit-btn[href^="mailto:"],.grit-apply a[href^="mailto:"]{display:none!important}
/* Do not stretch small inner-page images beyond their intrinsic width. */
.grit-detail .post_content img,.single .post_content img,.page .post_content img{width:auto!important;max-width:100%!important;height:auto!important}

/* ===== ZEROKEN v15 header cleanup ===== */
.zk-nav__favorite,.zk-nav__cta{display:none!important}

/* === ZERO-KEN v17: mobile usability improvements === */
@media (max-width: 600px) {
  /* Simple job search: compact horizontal scroller instead of a long vertical stack */
  .zk-search { margin-top: -12px; padding: 0 10px; }
  .zk-search .grit-wrap { width: 100%; max-width: none; padding: 0; }
  .zk-search .grit-filter {
    display: block !important;
    padding: 14px !important;
    border-radius: 14px !important;
    overflow: hidden;
  }
  .zk-search .grit-filter-title {
    display: flex !important;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px !important;
  }
  .zk-search .grit-filter-title .zk-search-icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--zk-yellow);
    color: #111;
    font-size: 22px;
  }
  .zk-search .grit-filter-title b { font-size: 16px; line-height: 1.2; }
  .zk-search .grit-filter-title small { display: block; font-size: 11px; margin-top: 2px; color: #666; }
  .zk-search .grit-filter-grid {
    display: flex !important;
    gap: 9px !important;
    overflow-x: auto !important;
    overflow-y: hidden;
    padding: 2px 2px 8px !important;
    margin: 0 -2px;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .zk-search .grit-filter-grid::-webkit-scrollbar { display: none; }
  .zk-search .grit-filter-grid > label {
    flex: 0 0 165px;
    min-width: 165px;
    scroll-snap-align: start;
  }
  .zk-search .grit-filter-grid > label:nth-of-type(3) { flex-basis: 190px; min-width: 190px; }
  .zk-search .grit-filter-grid > label small {
    display: block;
    height: 18px;
    margin: 0 0 4px;
    font-size: 10px;
    line-height: 18px;
    font-weight: 800;
    white-space: nowrap;
  }
  .zk-search .grit-filter input,
  .zk-search .grit-filter select {
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 10px !important;
    font-size: 13px !important;
    border-radius: 8px !important;
  }
  .zk-search .grit-filter button {
    flex: 0 0 190px;
    min-width: 190px;
    height: 44px !important;
    min-height: 44px !important;
    align-self: flex-end;
    margin-top: 22px;
    font-size: 13px !important;
    white-space: nowrap;
    scroll-snap-align: start;
  }

  /* Job type navigation: one-line horizontal cards instead of two-column vertical blocks */
  .zk-types { padding: 10px 0 22px; overflow: hidden; }
  .zk-types .grit-wrap { width: 100%; max-width: none; padding: 0 10px; }
  .zk-types-row { display: block !important; }
  .zk-types-title {
    border-radius: 12px !important;
    padding: 14px 16px !important;
    margin-bottom: 10px;
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas: "small count" "title count";
    align-items: center;
    column-gap: 12px;
  }
  .zk-types-title small { grid-area: small; font-size: 11px; }
  .zk-types-title h2 { grid-area: title; font-size: 18px !important; line-height: 1.25 !important; margin: 2px 0 0 !important; }
  .zk-types-title b { grid-area: count; font-size: 11px !important; white-space: nowrap; }
  .zk-type-strip {
    display: flex !important;
    gap: 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden;
    padding: 0 0 8px !important;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
  }
  .zk-type-strip::-webkit-scrollbar { display: none; }
  .zk-type-strip > a {
    flex: 0 0 118px !important;
    min-width: 118px !important;
    width: 118px !important;
    height: 100px !important;
    min-height: 100px !important;
    max-height: 100px !important;
    grid-template-rows: 62px 38px !important;
    border-radius: 9px !important;
    scroll-snap-align: start;
  }
  .zk-type-strip > a > img { height: 62px !important; }
  .zk-type-strip > a > b {
    height: 38px !important;
    min-height: 38px !important;
    padding: 3px 5px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
  }
}
