@import url('./fonts.css');

/* 真似元: shinsotsu.dhc.co.jp/ (株式会社ディーエイチシー DHC新卒採用サイト)
   観察結果:
   - ヘッダ: 左上にコンパクトな2行ロゴ(タグライン小+ロゴ大)、右にハンバーガー
   - フッター/全体下端: 淡いパステルグラデ(白→薄ピンク→薄ブルー→薄パープル)
   - TOP h1: 「DHC Recruit 2027」など、大きく細い英文ディスプレイ書体
   - 新着お知らせ: 角丸プレート、日付 + NEWバッジ(青) + タイトル の横並びリスト
   - セクション見出し: 上に薄い和文ラベル「仕事を知る」、その下に英大「Work」
   - 下層ヒーロー: 左にラベル(Eyebrow) + 大見出し、右上に大きな丸い写真(円形クリップ)、下にTOP > パンくず
   - Q&A形式: 左に丸顔写真 + 「Q.01」赤数字 + 太字質問、答えはやや右の薄い水色バブル
   - 募集要項: 左の見出し列(灰) + 右の値、項目間1pxボーダー
   - 選考フロー: ステップ枠 + 縦の点線/丸い節
   - 主色: 白(背景) / 群青系 #0046c0 (リンク・バッジ・ボタン) / 文字 #404040
*/

:root{
  --p35-bg:#ffffff;
  --p35-ink:#404040;
  --p35-ink-soft:#5a5a5a;
  --p35-mute:#8a8a8a;
  --p35-line:#e6e6ec;
  --p35-line-soft:#f0f0f4;
  --p35-paper:#f7f7fb;
  --p35-blue:#0046c0;
  --p35-blue-dark:#003896;
  --p35-blue-light:#3a6fd6;
  --p35-pastel-pink:#fbe9ef;
  --p35-pastel-blue:#e9f0fb;
  --p35-pastel-purple:#ecebf6;
  --p35-pastel-mint:#e7f3ee;
  --p35-accent-red:#c8484a;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
html{background:var(--p35-bg);color:var(--p35-ink);font-family:var(--p35-font-body);font-weight:400;font-size:14px;line-height:1.95;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}

/* グローバルの淡パステルグラデ背景(DHC: 全ページ末尾に滲む) */
body{
  background:
    radial-gradient(60% 40% at 12% 100%, var(--p35-pastel-pink) 0%, transparent 60%),
    radial-gradient(50% 35% at 88% 100%, var(--p35-pastel-purple) 0%, transparent 60%),
    radial-gradient(80% 28% at 50% 96%, var(--p35-pastel-blue) 0%, transparent 70%),
    #ffffff;
  background-attachment:fixed;
  min-height:100vh;
}

/* ===== Skip link ===== */
.p35-skip{position:absolute;left:-9999px;top:0;background:var(--p35-blue);color:#fff;padding:8px 14px;z-index:200}
.p35-skip:focus{left:14px;top:14px}

/* ===== Header ===== */
.p35-header{
  position:sticky;top:0;z-index:30;background:rgba(255,255,255,.92);
  backdrop-filter:saturate(1.2) blur(8px);
  border-bottom:1px solid var(--p35-line);
  padding:14px 26px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;
}
.p35-header__brand{display:flex;flex-direction:column;line-height:1.15;text-decoration:none;color:var(--p35-ink)}
.p35-header__brand small{font-family:var(--p35-font-body);font-weight:500;font-size:9.5px;letter-spacing:.08em;color:var(--p35-mute)}
.p35-header__brand strong{font-family:var(--p35-font-display);font-weight:700;font-size:18px;letter-spacing:.06em;color:var(--p35-blue);margin-top:2px}
.p35-header__brand strong em{font-style:normal;font-family:var(--p35-font-body);font-size:9.5px;font-weight:500;color:var(--p35-mute);margin-left:8px;letter-spacing:.08em}
.p35-header__util{display:flex;align-items:center;gap:14px;font-size:11.5px}
.p35-header__util .p35-entry{
  background:var(--p35-blue);color:#fff;padding:9px 22px;border-radius:999px;
  font-family:var(--p35-font-display);font-weight:600;font-size:11.5px;letter-spacing:.14em;
}
.p35-header__util .p35-entry::after{content:"→";margin-left:8px}
.p35-header__hb{
  width:30px;height:24px;background:none;border:0;cursor:pointer;
  display:flex;flex-direction:column;justify-content:space-between;padding:0;
}
.p35-header__hb span{display:block;width:100%;height:1.5px;background:var(--p35-ink)}

/* ===== TOP: hero ===== */
.p35-top__hero{padding:80px 26px 60px;max-width:1200px;margin:0 auto;position:relative}
.p35-top__hero__eye{font-family:var(--p35-font-body);font-size:11px;letter-spacing:.18em;color:var(--p35-mute);margin:0 0 24px}
.p35-top__hero h1{
  font-family:var(--p35-font-display);font-weight:300;
  font-size:clamp(40px,7.2vw,84px);line-height:1.05;letter-spacing:-.01em;
  color:var(--p35-ink);margin:0;
}
.p35-top__hero h1 b{font-weight:600;color:var(--p35-blue);font-style:normal}
.p35-top__hero__sub{
  font-family:var(--p35-font-body);font-weight:700;font-size:15px;color:var(--p35-ink);
  margin:24px 0 0;letter-spacing:.04em;
}
.p35-top__hero__lead{font-size:13.5px;color:var(--p35-ink-soft);max-width:560px;margin:14px 0 0;line-height:2}

/* ===== TOP: news list (DHC のお知らせプレート) ===== */
.p35-top__news{max-width:980px;margin:36px auto 0;padding:0 26px}
.p35-top__news__head{font-family:var(--p35-font-display);font-weight:600;font-size:13px;letter-spacing:.14em;color:var(--p35-ink);margin:0 0 14px}
.p35-news{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--p35-line);border-radius:6px;overflow:hidden}
.p35-news li{display:flex;align-items:center;gap:18px;padding:16px 22px;border-bottom:1px solid var(--p35-line)}
.p35-news li:last-child{border-bottom:0}
.p35-news__date{font-family:var(--p35-font-display);font-size:11.5px;letter-spacing:.06em;color:var(--p35-mute);min-width:90px}
.p35-news__tag{display:inline-block;font-family:var(--p35-font-display);font-size:10px;letter-spacing:.12em;font-weight:700;color:#fff;background:var(--p35-blue);padding:3px 10px;border-radius:3px;min-width:54px;text-align:center}
.p35-news__txt{font-size:13px;color:var(--p35-ink);flex:1}

/* ===== TOP: work intro band ===== */
.p35-top__work{padding:140px 26px 100px;max-width:980px;margin:0 auto;text-align:left}
.p35-top__work__label{font-family:var(--p35-font-body);font-size:11px;letter-spacing:.18em;color:var(--p35-mute);margin:0 0 12px}
.p35-top__work h2{
  font-family:var(--p35-font-display);font-weight:600;
  font-size:clamp(36px,5vw,56px);line-height:1.1;letter-spacing:-.005em;
  color:var(--p35-ink);margin:0 0 28px;
}
.p35-top__work p{font-size:13.5px;color:var(--p35-ink-soft);max-width:560px;margin:0;line-height:2}

/* ===== TOP: numbers grid (淡パステルの円) ===== */
.p35-top__nums{max-width:1100px;margin:60px auto 100px;padding:0 26px;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.p35-numcard{
  background:#fff;border:1px solid var(--p35-line);border-radius:14px;
  padding:30px 22px;text-align:center;position:relative;overflow:hidden;
}
.p35-numcard::before{
  content:"";position:absolute;inset:auto -30px -30px auto;width:110px;height:110px;
  border-radius:50%;background:var(--p35-pastel-blue);z-index:0;
}
.p35-numcard:nth-child(2)::before{background:var(--p35-pastel-pink)}
.p35-numcard:nth-child(3)::before{background:var(--p35-pastel-purple)}
.p35-numcard:nth-child(4)::before{background:var(--p35-pastel-mint)}
.p35-numcard__label{position:relative;font-size:11px;letter-spacing:.14em;color:var(--p35-mute);margin:0 0 12px}
.p35-numcard__value{
  position:relative;font-family:var(--p35-font-display);font-weight:300;
  font-size:48px;line-height:1;color:var(--p35-blue);letter-spacing:-.02em;
}
.p35-numcard__value small{font-size:13px;font-weight:500;margin-left:4px;color:var(--p35-ink-soft)}
.p35-numcard__note{position:relative;font-size:10.5px;color:var(--p35-mute);margin:14px 0 0}

/* ===== TOP: cards grid (jobs preview) ===== */
.p35-top__jobs{max-width:1100px;margin:0 auto 120px;padding:0 26px}
.p35-top__jobs__head{margin:0 0 32px}
.p35-top__jobs__head h2{font-family:var(--p35-font-display);font-weight:600;font-size:36px;color:var(--p35-ink);margin:6px 0 0}
.p35-top__jobs__head small{font-family:var(--p35-font-body);font-size:11px;letter-spacing:.16em;color:var(--p35-mute)}

/* ===== 下層ページ共通 ===== */
.p35-page{max-width:1080px;margin:0 auto;padding:60px 26px 100px;position:relative}
.p35-page__hero{display:grid;grid-template-columns:1fr 280px;gap:40px;align-items:start;padding:60px 0 30px;position:relative}
.p35-page__hero__txt small{display:block;font-family:var(--p35-font-display);font-size:12px;letter-spacing:.18em;color:var(--p35-mute);margin:0 0 14px;font-weight:500}
.p35-page__hero__txt h1{font-family:var(--p35-font-display);font-weight:300;font-size:clamp(38px,5.6vw,64px);line-height:1.05;letter-spacing:-.01em;color:var(--p35-ink);margin:0}
.p35-page__hero__photo{width:280px;height:280px;border-radius:50%;overflow:hidden;background:var(--p35-pastel-blue);justify-self:end}
.p35-page__hero__photo img{width:100%;height:100%;object-fit:cover}
.p35-page__crumb{font-size:11px;color:var(--p35-mute);margin:8px 0 36px;letter-spacing:.04em}
.p35-page__crumb a{color:var(--p35-mute)}
.p35-page__crumb a:hover{color:var(--p35-blue)}
.p35-page__lead{font-size:14px;color:var(--p35-ink-soft);line-height:2;margin:0 0 40px;max-width:720px}

/* ===== jobs/index: グリッド ===== */
.p35-jobs__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin:30px 0 0}
.p35-jobcard{
  display:block;background:#fff;border:1px solid var(--p35-line);border-radius:10px;overflow:hidden;
  text-decoration:none;color:var(--p35-ink);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.p35-jobcard:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(0,70,192,.08);border-color:var(--p35-blue-light)}
.p35-jobcard__plate{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--p35-pastel-blue)}
.p35-jobcard__plate img{width:100%;height:100%;object-fit:cover}
.p35-jobcard__plate::after{
  content:"";position:absolute;left:18px;top:18px;background:rgba(255,255,255,.95);
  color:var(--p35-blue);font-family:var(--p35-font-display);font-weight:700;font-size:10.5px;letter-spacing:.14em;
  padding:5px 10px;border-radius:3px;
}
.p35-jobcard__body{padding:22px 24px 26px}
.p35-jobcard__code{font-family:var(--p35-font-display);font-size:10.5px;letter-spacing:.16em;color:var(--p35-blue);margin:0 0 10px;font-weight:600}
.p35-jobcard__title{font-size:18px;font-weight:700;color:var(--p35-ink);margin:0 0 6px;letter-spacing:.02em}
.p35-jobcard__sub{font-size:12px;color:var(--p35-ink-soft);margin:0 0 14px}
.p35-jobcard__meta{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:11px;color:var(--p35-mute)}
.p35-jobcard__meta b{font-weight:600;color:var(--p35-ink-soft);margin-right:4px}

/* ===== job/detail: hero & sections ===== */
.p35-job__hero{
  display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:center;
  background:#fff;border:1px solid var(--p35-line);border-radius:14px;
  padding:42px 44px;margin:0 0 30px;position:relative;
}
.p35-job__hero__num{font-family:var(--p35-font-display);font-size:11px;letter-spacing:.18em;color:var(--p35-blue);font-weight:600;margin:0 0 16px;display:block}
.p35-job__hero h1{font-family:var(--p35-font-display);font-weight:300;font-size:clamp(30px,4.4vw,48px);line-height:1.1;color:var(--p35-ink);margin:0 0 14px;letter-spacing:-.005em}
.p35-job__hero__sub{font-size:13.5px;color:var(--p35-ink-soft);margin:0 0 22px;line-height:2}
.p35-job__hero__meta{display:grid;grid-template-columns:repeat(2,1fr);gap:14px 24px;margin:0}
.p35-job__hero__meta div{border-top:1px solid var(--p35-line);padding:10px 0 0}
.p35-job__hero__meta dt{font-size:10.5px;letter-spacing:.12em;color:var(--p35-mute);margin:0 0 4px}
.p35-job__hero__meta dd{font-size:13px;color:var(--p35-ink);margin:0;font-weight:500}
.p35-job__hero__photo{width:280px;height:280px;border-radius:50%;overflow:hidden;background:var(--p35-pastel-blue);justify-self:end}
.p35-job__hero__photo img{width:100%;height:100%;object-fit:cover}

.p35-job__sec{margin:54px 0;padding:0}
.p35-job__sec__bar{display:flex;align-items:baseline;gap:20px;border-bottom:1px solid var(--p35-line);padding:0 0 14px;margin:0 0 26px}
.p35-job__sec__bar__tag{font-size:13px;font-weight:700;color:var(--p35-ink)}
.p35-job__sec__bar__title{font-family:var(--p35-font-display);font-size:11px;letter-spacing:.2em;color:var(--p35-blue);font-weight:600}
.p35-job__sec p{font-size:13.5px;color:var(--p35-ink-soft);line-height:2;margin:0 0 14px}
.p35-job__sec ul{margin:0;padding:0;list-style:none}
.p35-job__sec ul li{
  position:relative;padding:0 0 0 22px;margin:0 0 10px;font-size:13px;color:var(--p35-ink);
}
.p35-job__sec ul li::before{content:"";position:absolute;left:0;top:.7em;width:12px;height:1px;background:var(--p35-blue)}

/* ===== 1日の流れ ===== */
.p35-day{display:flex;flex-direction:column;gap:0;position:relative;padding-left:24px}
.p35-day::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:1px;background:var(--p35-line)}
.p35-day__row{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:14px 0;position:relative}
.p35-day__row::before{content:"";position:absolute;left:-21px;top:22px;width:9px;height:9px;border-radius:50%;background:#fff;border:2px solid var(--p35-blue)}
.p35-day__time{font-family:var(--p35-font-display);font-weight:600;font-size:13px;color:var(--p35-blue);letter-spacing:.04em}
.p35-day__body h4{font-size:13.5px;font-weight:700;margin:0 0 4px;color:var(--p35-ink)}
.p35-day__body p{font-size:12px;color:var(--p35-ink-soft);margin:0;line-height:1.9}

/* ===== requirements table (募集要項 = DHC左キー右値リスト) ===== */
.p35-reqtable{width:100%;border-collapse:collapse;margin:20px 0 0}
.p35-reqtable tr{border-top:1px solid var(--p35-line)}
.p35-reqtable tr:last-child{border-bottom:1px solid var(--p35-line)}
.p35-reqtable th{
  text-align:left;width:160px;padding:22px 18px;font-size:12.5px;font-weight:700;
  color:var(--p35-ink);vertical-align:top;background:transparent;letter-spacing:.04em;
}
.p35-reqtable td{padding:22px 12px;font-size:13px;color:var(--p35-ink-soft);line-height:2;vertical-align:top}

/* ===== FAQ list ===== */
.p35-faqlist{margin:24px 0 0;border-top:1px solid var(--p35-line)}
.p35-faqitem{border-bottom:1px solid var(--p35-line);padding:18px 0}
.p35-faqitem > summary{
  list-style:none;cursor:pointer;display:flex;align-items:flex-start;gap:18px;
  font-weight:700;font-size:13.5px;color:var(--p35-ink);padding:6px 0;
}
.p35-faqitem > summary::-webkit-details-marker{display:none}
.p35-faqitem > summary::before{
  content:"Q";flex-shrink:0;font-family:var(--p35-font-display);font-weight:700;
  font-size:14px;color:#fff;background:var(--p35-blue);width:28px;height:28px;
  display:inline-flex;align-items:center;justify-content:center;border-radius:50%;
}
.p35-faqitem > summary::after{content:"+";margin-left:auto;font-family:var(--p35-font-display);font-size:18px;color:var(--p35-mute);font-weight:300}
.p35-faqitem[open] > summary::after{content:"−"}
.p35-faqitem > div{display:flex;gap:18px;font-size:13px;color:var(--p35-ink-soft);line-height:2;padding:14px 0 6px 46px;position:relative}
.p35-faqitem > div::before{
  content:"A";position:absolute;left:0;top:10px;font-family:var(--p35-font-display);font-weight:700;
  font-size:14px;color:var(--p35-blue);background:var(--p35-pastel-blue);width:28px;height:28px;
  display:inline-flex;align-items:center;justify-content:center;border-radius:50%;
}

/* ===== form (apply) ===== */
.p35-form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 22px;margin:30px 0 0}
.p35-form > div{display:flex;flex-direction:column;gap:6px}
.p35-form > div:has(textarea){grid-column:1/-1}
.p35-form label{font-size:11.5px;font-weight:600;color:var(--p35-ink);letter-spacing:.04em}
.p35-form label small{color:#fff;background:var(--p35-accent-red);font-size:9.5px;font-weight:700;padding:2px 6px;border-radius:3px;margin-left:6px;letter-spacing:.06em}
.p35-form input,.p35-form select,.p35-form textarea{
  font-family:inherit;font-size:13px;color:var(--p35-ink);
  background:#fff;border:1px solid var(--p35-line);border-radius:6px;
  padding:12px 14px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;
}
.p35-form input:focus,.p35-form select:focus,.p35-form textarea:focus{
  border-color:var(--p35-blue);box-shadow:0 0 0 3px var(--p35-pastel-blue);
}
.p35-form textarea{min-height:130px;resize:vertical}
.p35-form button{
  grid-column:1/-1;justify-self:start;
  background:var(--p35-blue);color:#fff;border:0;border-radius:999px;
  padding:14px 56px;font-family:var(--p35-font-display);font-weight:600;font-size:13px;letter-spacing:.18em;
  cursor:pointer;transition:background .2s ease,transform .2s ease;
}
.p35-form button:hover{background:var(--p35-blue-dark);transform:translateY(-1px)}
.p35-form__note{font-size:11.5px;color:var(--p35-mute);margin:20px 0 0;line-height:1.9}

/* ===== history (沿革) ===== */
.p35-history{position:relative;padding-left:24px;margin:24px 0 0}
.p35-history::before{content:"";position:absolute;left:6px;top:12px;bottom:12px;width:1px;background:var(--p35-line)}
.p35-history__row{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:14px 0;position:relative}
.p35-history__row::before{content:"";position:absolute;left:-22px;top:22px;width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid var(--p35-blue)}
.p35-history__year{font-family:var(--p35-font-display);font-weight:600;font-size:14px;color:var(--p35-blue)}
.p35-history__event{font-size:13px;color:var(--p35-ink);line-height:1.9}

/* ===== message (採用責任者・代表メッセージ) DHC的なカード ===== */
.p35-message{
  background:#fff;border:1px solid var(--p35-line);border-radius:14px;
  padding:48px 56px;margin:0 0 30px;display:grid;grid-template-columns:200px 1fr;gap:48px;align-items:start;
}
.p35-message__photo{width:200px;height:200px;border-radius:50%;overflow:hidden;background:var(--p35-pastel-blue)}
.p35-message__photo img{width:100%;height:100%;object-fit:cover}
.p35-message__tag{font-family:var(--p35-font-display);font-size:10.5px;letter-spacing:.2em;color:var(--p35-blue);font-weight:600;margin:0 0 12px}
.p35-message__name{font-size:20px;font-weight:700;color:var(--p35-ink);margin:0 0 4px}
.p35-message__name small{display:inline-block;font-size:11px;color:var(--p35-mute);font-weight:500;margin-left:10px;letter-spacing:.06em}
.p35-message__title{font-family:var(--p35-font-display);font-weight:500;font-size:22px;color:var(--p35-ink);margin:20px 0 16px;line-height:1.4}
.p35-message__body{font-size:13.5px;color:var(--p35-ink-soft);line-height:2.05;white-space:pre-line}

/* ===== entry CTA バナー ===== */
.p35-cta{
  max-width:1100px;margin:80px auto 60px;padding:0 26px;
}
.p35-cta__inner{
  background:var(--p35-blue);color:#fff;border-radius:14px;padding:56px 60px;
  display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;
}
.p35-cta__inner h2{font-family:var(--p35-font-display);font-weight:300;font-size:36px;margin:0 0 10px;letter-spacing:-.005em}
.p35-cta__inner p{font-size:13px;color:rgba(255,255,255,.85);margin:0;line-height:1.9}
.p35-cta__btn{
  background:#fff;color:var(--p35-blue);padding:18px 42px;border-radius:999px;
  font-family:var(--p35-font-display);font-weight:700;font-size:13px;letter-spacing:.18em;white-space:nowrap;
}
.p35-cta__btn::after{content:"→";margin-left:10px}

/* ===== Footer ===== */
.p35-foot{
  border-top:1px solid var(--p35-line);
  padding:70px 26px 24px;max-width:1200px;margin:80px auto 0;
}
.p35-foot__top{display:grid;grid-template-columns:auto 1fr;gap:48px;align-items:start;margin:0 0 60px}
.p35-foot__brand small{font-family:var(--p35-font-body);font-size:9.5px;letter-spacing:.08em;color:var(--p35-mute);display:block;margin:0 0 2px}
.p35-foot__brand strong{font-family:var(--p35-font-display);font-weight:700;font-size:20px;color:var(--p35-blue);letter-spacing:.06em}
.p35-foot__brand strong em{font-style:normal;font-family:var(--p35-font-body);font-size:10px;font-weight:500;color:var(--p35-mute);margin-left:8px}
.p35-foot__entrybtn{
  display:inline-block;margin-top:18px;background:var(--p35-blue);color:#fff;
  padding:14px 44px;border-radius:999px;font-family:var(--p35-font-display);font-weight:600;font-size:11.5px;letter-spacing:.18em;
}
.p35-foot__entrybtn::after{content:"→";margin-left:10px}
.p35-foot__cols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.p35-foot__col h4{font-family:var(--p35-font-display);font-weight:600;font-size:11.5px;letter-spacing:.16em;color:var(--p35-ink);margin:0 0 6px;border-bottom:1px solid var(--p35-line);padding-bottom:10px}
.p35-foot__col h4 small{font-family:var(--p35-font-body);font-size:9.5px;color:var(--p35-mute);display:block;font-weight:500;margin-bottom:3px;letter-spacing:.08em}
.p35-foot__col ul{list-style:none;padding:0;margin:14px 0 0}
.p35-foot__col li{font-size:11.5px;color:var(--p35-ink-soft);margin:0 0 10px}
.p35-foot__col li a{color:var(--p35-ink-soft);transition:color .2s ease}
.p35-foot__col li a::before{content:"−";color:var(--p35-blue);margin-right:8px}
.p35-foot__col li a:hover{color:var(--p35-blue)}
.p35-foot__base{display:flex;justify-content:space-between;font-size:10.5px;color:var(--p35-mute);padding:24px 0 0;border-top:1px solid var(--p35-line);margin-top:50px}

/* ===== Motion reveal ===== */
.p35-reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease, transform .6s ease;transition-delay:var(--p35-delay,0ms)}
.p35-reveal.p35-in{opacity:1;transform:none}

/* ===== Responsive ===== */
@media (max-width:880px){
  .p35-top__nums{grid-template-columns:repeat(2,1fr)}
  .p35-jobs__grid{grid-template-columns:1fr}
  .p35-page__hero{grid-template-columns:1fr}
  .p35-page__hero__photo{width:200px;height:200px;justify-self:start}
  .p35-job__hero{grid-template-columns:1fr;padding:32px 28px}
  .p35-job__hero__photo{width:200px;height:200px;justify-self:start}
  .p35-message{grid-template-columns:1fr;padding:36px 26px;gap:24px}
  .p35-message__photo{width:140px;height:140px}
  .p35-form{grid-template-columns:1fr}
  .p35-cta__inner{grid-template-columns:1fr;padding:36px 28px}
  .p35-foot__top{grid-template-columns:1fr;gap:24px}
  .p35-foot__cols{grid-template-columns:repeat(2,1fr)}
  .p35-reqtable th{width:110px;padding:18px 12px}
}
@media (max-width:520px){
  .p35-top__nums{grid-template-columns:1fr}
  .p35-foot__cols{grid-template-columns:1fr}
  .p35-header{padding:12px 18px;gap:12px}
  .p35-page{padding:36px 20px 80px}
}
