/* One complete idea per screen, instead of splitting its setup and conclusion.
   On short screens natural height wins over clipping or shrinking body text. */
.recruit-page .editorial-section {height:auto; max-height:none; min-height:var(--screen); padding:24px 26px 32px; background:var(--brand-base); color:#222;}
.recruit-page .editorial-section .slide-content {height:auto; min-height:0; max-height:none; display:flex; flex-direction:column; gap:18px; text-align:left; position:relative; z-index:1;}
.recruit-page .editorial-section .slide-content > * {flex:none; margin:0;}
.recruit-page .editorial-section .speech-label {align-self:flex-start;}
.recruit-page .editorial-section .slide-title {font-size:clamp(23px,6vw,29px); line-height:1.5; padding:0; width:auto; text-align:left;}
.recruit-page .editorial-section .copy {font-size:15px;line-height:1.85;max-width:none;width:auto;}
.recruit-page .editorial-section .copy + .copy {margin-top:12px;}
.recruit-page .editorial-section::before {content:'';display:block;inset:0;width:100%;height:100%;opacity:1;transform:none;clip-path:none;background:url('assets/decorations/dots-blue.svg') repeat;mask-image:linear-gradient(to right,transparent 45%,#000);}
.editorial-panel {border:2px solid #000;background:var(--brand-base);padding:18px;box-shadow:6px 6px 0 #000;}
.editorial-conclusion {font-size:16px;font-weight:700;line-height:1.85;background:var(--brand-orange);color:#000;border:2px solid #000;padding:14px 16px;}
.editorial-conclusion strong {text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;}
.editorial-panel .editorial-conclusion {margin:14px -18px -18px;border:0;border-top:2px solid #000;}
.recruit-page .editorial-section .editorial-art {width:calc(100% + 24px);max-width:none;height:auto;max-height:220px;object-fit:contain;align-self:center;margin:-2px -12px;}
.recruit-page #honest.editorial-section,.recruit-page #work.editorial-section,.recruit-page #holidays.editorial-section {background:var(--brand-blue);color:var(--brand-base);}
.recruit-page #honest.editorial-section::before,.recruit-page #work.editorial-section::before,.recruit-page #holidays.editorial-section::before {background:var(--brand-base);inset:auto 0 0;height:34%;clip-path:polygon(0 0,50% 28px,100% 0,100% 100%,0 100%);mask-image:none;}
.editorial-panel {color:#222;}
.recruit-page #honest .editorial-panel .copy {border:0;padding:0;}
.recruit-page #work .recruit-card {margin-right:6px;}
.recruit-page #work .card-body {text-align:left;padding:16px;}
.recruit-page #work .editorial-art {max-height:190px;margin-top:-10px;margin-bottom:-12px;}
.editorial-dialogue {display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:4px;}
.editorial-dialogue img {width:calc(100% + 16px);max-width:none;height:240px;object-fit:contain;object-position:right bottom;align-self:end;}
.editorial-dialogue .scene-quotes {background:#000;color:var(--brand-base);font-size:14px;line-height:1.8;padding:12px;margin:0 0 14px;border-radius:35% 28% 32% 22% / 18% 24% 22% 25%;}
.recruit-page #beginner.editorial-section .slide-title {padding-left:16px;border-left:5px solid var(--brand-blue);}
.recruit-page #holidays .recruit-card {margin-right:6px;}
.recruit-page #holidays .recruit-card h3 {font-size:20px;padding:12px;}
.recruit-page #holidays .card-body {padding:12px 16px;}
.leave-number {font-size:13px;line-height:1.7;border-top:1px dashed #222;padding-top:10px;}
.leave-number strong {font-size:64px;line-height:1.1;color:var(--brand-blue);margin-right:6px;}
.benefit-panel .plain-list {font-size:15px;line-height:1.9;}
#six .six-count {display:inline-block;border-bottom:2px dashed var(--brand-blue);margin-bottom:8px;}
#six .six-count strong {font-size:76px;line-height:1;color:var(--brand-blue);vertical-align:baseline;}
#salary .salary-number {border-top:2px dashed currentColor;border-bottom:2px dashed currentColor;background:transparent;color:var(--brand-base);}
#salary .salary-number strong {color:var(--brand-base);font-size:clamp(40px,11vw,54px);}
#hours .recruit-card h3 {font-size:32px;}
/* Room for the larger numeral without stealing the lower CTA clearance. */
#six {height:auto;max-height:none;padding-bottom:32px;}
@media(max-height:700px) {
 .recruit-page .editorial-section {padding:20px 22px 32px;}
 .recruit-page .editorial-section .slide-content {gap:14px;}
 .recruit-page .editorial-section .editorial-art {max-height:170px;}
 .recruit-page #work .editorial-art {max-height:140px;}
 .editorial-dialogue img {height:210px;}
 #six .six-count strong {font-size:60px;}
}
@media(max-width:360px) {
 .recruit-page .editorial-section {padding-left:18px;padding-right:18px;}
 .editorial-dialogue {grid-template-columns:1fr;position:relative;}
 .editorial-dialogue>div {position:relative;z-index:1;padding-right:34%;}
 .editorial-dialogue img {position:absolute;right:-8px;bottom:0;width:44%;height:180px;}
 .editorial-dialogue .scene-quotes {font-size:13px;padding:10px;}
 .editorial-panel {padding:14px;}
 .editorial-panel .editorial-conclusion {margin:12px -14px -14px;}
}
/* Tighten the mobile composition before allowing a short natural continuation. */
@media(max-height:800px) {
 .recruit-page .editorial-section {padding-top:20px;}
 .recruit-page .editorial-section .slide-content {gap:12px;}
 .recruit-page .editorial-section .editorial-art {max-height:150px;}
 .recruit-page #work .editorial-art {max-height:135px;}
 .recruit-page #work .recruit-card h3 {padding:10px;}
 .recruit-page #work .card-body {padding:12px 14px;}
 .editorial-panel {padding:14px;}
 .editorial-panel .editorial-conclusion {margin:12px -14px -14px;}
 .editorial-conclusion {padding:12px;font-size:15px;}
 .editorial-dialogue {grid-template-columns:1.35fr 1fr;}
 .editorial-dialogue img {height:195px;}
 .editorial-dialogue .scene-quotes {font-size:13px;padding:10px;}
 #six .six-count strong {font-size:54px;}
 #six .team-art {max-height:150px;object-fit:contain;}
 .leave-number strong {font-size:52px;}
 .recruit-page #holidays .recruit-card h3 {padding:8px;}
 .recruit-page #holidays .recruit-card h3::after {margin-top:6px;}
 .benefit-panel .plain-list {line-height:1.75;}
}
/* P1 + P2: the headline introduces the five realities, with a person in the
   last grid cell rather than a second full-screen illustration. */
.recruit-page .merged-cover {height:auto;min-height:var(--screen);max-height:none;padding:22px 24px 30px;}
.recruit-page .merged-cover .slide-content {height:auto;max-height:none;gap:14px;}
.merged-cover .cover-title {font-size:21px;line-height:1.5;}
.merged-cover .cover-title strong {font-size:clamp(26px,7.4vw,35px);line-height:1.4;letter-spacing:-.8px;white-space:nowrap;}
.cover-reality {position:relative;background:url('assets/decorations/dots-blue.svg') repeat;}
.merged-cover .reality-clouds {display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,112px);gap:16px 12px;margin:0;}
.merged-cover .reality-clouds li {padding:18px 8px;font-size:13px;line-height:1.65;}
.merged-cover .reality-clouds li:nth-child(5) {grid-column:1;width:100%;}
.cover-reality-worker {position:absolute;right:0;bottom:0;width:calc(50% - 6px);height:112px;object-fit:contain;mix-blend-mode:multiply;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);}
.cover-summary {font-size:14px;line-height:1.8;margin:0;border-bottom:2px solid #000;padding-bottom:8px;text-align:center;}
.cover-summary strong {margin-left:6px;}
.merged-cover .next-link {font-size:12px;}
@media(max-height:800px) {
 .recruit-page .merged-cover {padding:16px 22px 26px;}
 .recruit-page .merged-cover .slide-content {gap:10px;}
 .merged-cover .reality-clouds {grid-template-rows:repeat(3,104px);}
 .merged-cover .reality-clouds li {font-size:12px;padding:14px 6px;}
 .cover-reality-worker {height:106px;}
 .merged-cover .cover-button {height:40px;font-size:15px;}
}
@media(max-width:360px) {
 .recruit-page .merged-cover {padding-left:18px;padding-right:18px;}
 .merged-cover .cover-title {font-size:18px;}
 .merged-cover .cover-title strong {font-size:26px;}
 .merged-cover .cover-summary {font-size:12px;}
}

/* A continuous outline and a small tail replace the flattened irregular oval. */
.recruit-page .editorial-dialogue .scene-quotes {position:relative;border-radius:12px;padding:14px 12px;margin-bottom:20px;overflow:visible;}
.recruit-page .editorial-dialogue .scene-quotes::after {content:'';position:absolute;right:20px;bottom:-8px;width:16px;height:16px;background:#000;transform:rotate(45deg);border-radius:0 0 3px 0;}
