/* SkiJobs Vorarlberg – im Erscheinungsbild von skischulen.at (wie Widerruf-Formular)
   Rot #e60000 · Dunkel #1e1f1c · Oswald (Überschriften) · Roboto (Fließtext) */

:root{
  --red:#e60000; --red-dk:#cd0000; --red-dker:#b30000;
  --dark:#1e1f1c; --text:#2a2a2a; --muted:#6b6b6b; --border:#d9d9d9;
  --bg:#f2f2f2; --panel:#fff; --soft:#f7f7f7; --ok:#1f9d6b;
  --radius:6px; --head:'Oswald','Roboto Condensed','Arial Narrow',sans-serif;
  --body:'Roboto',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:var(--body);color:var(--text);background:var(--bg);line-height:1.6;font-size:16px;
  display:flex;flex-direction:column;min-height:100vh;-webkit-font-smoothing:antialiased;}
h1,h2,h3,h4{font-family:var(--head);color:var(--dark);line-height:1.15;font-weight:600;}
a{color:inherit;}
.muted{color:var(--muted);}
.sj-bar{width:100%;max-width:760px;margin:0 auto;padding:0 20px;}

/* ---- header / footer chrome ---- */
.sj-header{background:var(--panel);border-bottom:1px solid var(--border);}
.sj-header .sj-bar{display:flex;align-items:center;gap:14px;padding-top:16px;padding-bottom:16px;}
.sj-logo{display:inline-block;}
.sj-logo img{display:block;height:54px;width:auto;}
.sj-section{font-family:var(--head);font-weight:600;text-transform:uppercase;letter-spacing:.12em;
  font-size:.82rem;color:var(--red);padding-left:14px;border-left:1px solid var(--border);}
.sj-subbar{background:var(--panel);border-bottom:1px solid var(--border);}
.sj-subbar .sj-bar{display:flex;align-items:center;gap:14px;padding-top:10px;padding-bottom:10px;}
.sj-back{display:inline-flex;align-items:center;gap:6px;color:var(--muted);text-decoration:none;font-size:.9rem;font-weight:500;}
.sj-back:hover{color:var(--red);}
.sj-back svg{width:16px;height:16px;}
.sj-crumb{font-family:var(--head);font-weight:500;text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;color:var(--muted);}

.sj-main{flex:1 0 auto;padding:32px 0 48px;}
.sj-container{max-width:760px;margin:0 auto;padding:0 20px;}

.sj-footer{flex-shrink:0;background:var(--dark);color:#bdbdbd;margin-top:auto;}
.sj-footer .sj-bar{padding-top:22px;padding-bottom:22px;}
.sj-foot-nav{display:flex;gap:22px;flex-wrap:wrap;margin-bottom:8px;}
.sj-foot-nav a{color:#d8d8d8;text-decoration:none;font-size:.88rem;}
.sj-foot-nav a:hover{color:#fff;}
.sj-copy{font-size:.8rem;color:#8a8a8a;}

.pad{padding:0;}

/* ---- card helper (weiße Karte mit rotem Akzent) ---- */
.hero,.det-hero,.filters,.job,.contact-card,.form-intro,.choice,.result-card{
  background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);}

/* ---- intro / hero (hell, roter Akzent) ---- */
.hero{border-top:4px solid var(--red);padding:26px 26px 24px;margin-bottom:22px;}
.hero .peaks{display:none;}
.hero-inner{position:static;}
.hero-eyebrow{font-family:var(--head);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--red);font-weight:600;}
.hero h1{font-size:1.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.01em;color:var(--dark);margin:8px 0 10px;}
.hero h1 em{font-style:normal;color:var(--red);}
.hero p{color:#444;font-size:1rem;max-width:48ch;}
.stats{display:flex;gap:26px;margin-top:18px;}
.stats div{font-family:var(--head);}
.stats b{display:block;font-size:1.5rem;font-weight:600;color:var(--red);}
.stats span{font-size:.7rem;color:var(--muted);letter-spacing:.04em;font-family:var(--body);text-transform:uppercase;}

/* ---- choose ---- */
.choose-h{font-family:var(--head);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
  font-weight:600;margin:6px 2px 14px;display:flex;align-items:center;gap:8px;}
.choose-h::before{content:"";width:18px;height:3px;border-radius:2px;background:var(--red);}
.choice{display:block;width:100%;text-align:left;padding:20px 22px;margin-bottom:14px;text-decoration:none;color:inherit;
  position:relative;transition:border-color .15s,box-shadow .15s,transform .12s;box-shadow:0 2px 10px rgba(0,0,0,.04);}
.choice:hover{border-color:var(--red);box-shadow:0 6px 18px -8px rgba(230,0,0,.3);transform:translateY(-2px);}
.choice .ic{width:46px;height:46px;border-radius:var(--radius);display:grid;place-items:center;margin-bottom:13px;background:#fde3e3;color:var(--red);}
.choice .ic svg{width:24px;height:24px;}
.choice h3{font-size:1.25rem;font-weight:600;text-transform:uppercase;letter-spacing:.01em;margin-bottom:5px;}
.choice p{font-size:.92rem;color:var(--muted);max-width:46ch;}
.choice .go{position:absolute;right:20px;top:24px;color:var(--red);opacity:.4;}
.choice:hover .go{opacity:1;}
.choice .go svg{width:20px;height:20px;}

/* ---- segmented ---- */
.seg{display:flex;background:var(--soft);border:1px solid var(--border);border-radius:var(--radius);padding:4px;margin-bottom:18px;}
.seg a{flex:1;text-align:center;text-decoration:none;padding:10px;border-radius:4px;font-family:var(--head);font-weight:500;
  text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;color:var(--muted);}
.seg a.on{background:var(--panel);color:var(--red);box-shadow:0 1px 4px rgba(0,0,0,.1);}

/* ---- fields ---- */
.field{margin-bottom:16px;}
.field label{display:block;font-size:.8rem;font-weight:500;color:var(--dark);margin-bottom:6px;}
.row{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;}
select,input,textarea{width:100%;font-family:var(--body);font-size:1rem;color:var(--text);
  border:1px solid var(--border);border-radius:var(--radius);padding:11px 13px;background:#fff;outline:none;
  transition:border-color .15s,box-shadow .15s;}
select:focus,input:focus,textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(230,0,0,.12);}
textarea{resize:vertical;min-height:90px;line-height:1.5;}
.hint{font-size:.82rem;color:var(--muted);margin-top:6px;}
.err{display:block;color:var(--red);font-size:.82rem;margin-top:5px;}
.req-star{color:var(--red);}

/* ---- filters ---- */
.filters{padding:16px 18px;margin-bottom:8px;}
.filters-meta{display:flex;justify-content:space-between;align-items:center;margin:16px 2px 14px;}
.filters-meta .count{font-family:var(--head);font-weight:600;font-size:1rem;color:var(--dark);}
.reset{background:none;border:none;color:var(--red);font-weight:600;font-size:.85rem;cursor:pointer;text-decoration:none;}
.reset:hover{text-decoration:underline;}

/* ---- chips ---- */
.chip-row{display:flex;flex-wrap:wrap;gap:8px;}
.chip{display:inline-flex;align-items:center;border:1px solid var(--border);background:#fff;border-radius:999px;
  padding:8px 14px;font-size:.85rem;font-weight:500;cursor:pointer;color:var(--text);transition:.14s;}
.chip input{position:absolute;opacity:0;width:0;height:0;}
.chip:hover{border-color:var(--red);}
.chip.on,.chip:has(input:checked){background:var(--red);color:#fff;border-color:var(--red);}

/* ---- consent ---- */
.consent{display:flex;gap:10px;align-items:flex-start;margin:16px 0 4px;font-size:.88rem;color:var(--text);}
.consent input{width:auto;margin-top:3px;flex:0 0 auto;}
.consent a{color:var(--red);}

/* honeypot */
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;}

/* ---- buttons ---- */
.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:none;cursor:pointer;
  font-family:var(--head);font-weight:600;font-size:.95rem;text-transform:uppercase;letter-spacing:.04em;
  padding:14px 22px;border-radius:var(--radius);text-decoration:none;transition:background .15s,transform .1s;}
.btn:active{transform:scale(.99);}
.btn svg{width:18px;height:18px;}
.btn-accent{background:var(--red);color:#fff;box-shadow:0 3px 10px -4px rgba(230,0,0,.5);}
.btn-accent:hover{background:var(--red-dk);}
.btn-primary{background:var(--dark);color:#fff;}
.btn-primary:hover{background:#000;}
.btn-ghost{background:transparent;color:var(--dark);border:1px solid var(--border);}
.btn-ghost:hover{border-color:var(--red);color:var(--red-dk);}

/* ---- pills ---- */
.pill{display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:600;padding:5px 11px;border-radius:999px;
  background:var(--soft);color:var(--dark);border:1px solid var(--border);}
.pill.red{background:#fde3e3;color:var(--red-dker);border-color:#f6c6c6;}
.pill.green{background:#dcf3e8;color:#0f6e4c;border-color:#aee0c8;}

/* ---- job cards ---- */
.job{padding:18px;margin-bottom:13px;box-shadow:0 2px 10px rgba(0,0,0,.04);}
.job .head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;}
.job h3{font-size:1.15rem;font-weight:600;text-transform:uppercase;letter-spacing:.01em;}
.job .loc{font-size:.85rem;color:var(--muted);margin-top:3px;display:flex;align-items:center;gap:5px;}
.job .loc svg{width:14px;height:14px;color:var(--red);}
.job .tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 14px;}
.logo-badge{width:46px;height:46px;border-radius:var(--radius);background:var(--red);color:#fff;display:grid;place-items:center;
  font-family:var(--head);font-weight:700;font-size:1.05rem;flex:0 0 auto;}
.det-btn{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--soft);border:1px solid var(--border);
  border-radius:var(--radius);padding:11px 15px;cursor:pointer;font-family:var(--head);font-weight:500;text-transform:uppercase;
  letter-spacing:.03em;font-size:.85rem;color:var(--dark);text-decoration:none;transition:.15s;}
.det-btn:hover{background:#fde3e3;color:var(--red-dker);border-color:#f6c6c6;}
.det-btn svg{width:16px;height:16px;}
.empty{text-align:center;padding:40px 20px;color:var(--muted);background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);}

/* ---- detail ---- */
.det-hero{border-top:4px solid var(--red);padding:22px 24px;margin-bottom:18px;}
.det-hero .logo-badge{width:54px;height:54px;font-size:1.3rem;margin-bottom:13px;}
.det-hero h2{font-size:1.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.01em;}
.det-hero .loc{color:var(--muted);font-size:.92rem;margin-top:6px;display:flex;align-items:center;gap:6px;}
.det-hero .loc svg{width:15px;height:15px;color:var(--red);}
.det-hero .tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;}
.block{margin-top:22px;}
.block:first-child{margin-top:0;}
.block h4{font-family:var(--head);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:9px;}
.block p{font-size:.96rem;}
.req-list{list-style:none;display:flex;flex-direction:column;gap:9px;}
.req-list li{display:flex;gap:10px;align-items:flex-start;font-size:.95rem;}
.req-list svg{width:18px;height:18px;color:var(--ok);flex:0 0 auto;margin-top:1px;}
.contact-card{padding:16px;display:flex;flex-direction:column;gap:9px;}
.contact-card a,.contact-card div{display:flex;align-items:center;gap:10px;font-size:.94rem;color:var(--dark);text-decoration:none;font-weight:500;}
.contact-card a:hover{color:var(--red);}
.contact-card svg{width:17px;height:17px;color:var(--red);flex:0 0 auto;}

/* ---- intros ---- */
.form-intro{padding:15px 16px;margin-bottom:20px;display:flex;gap:12px;align-items:flex-start;}
.form-intro .ic{flex:0 0 auto;width:40px;height:40px;border-radius:var(--radius);display:grid;place-items:center;background:#fde3e3;color:var(--red);}
.form-intro .ic svg{width:20px;height:20px;}
.form-intro p{font-size:.9rem;color:var(--muted);}
.form-intro b{color:var(--dark);font-family:var(--head);font-weight:600;}

/* ---- alerts ---- */
.alert{border-radius:var(--radius);padding:13px 16px;margin-bottom:18px;font-size:.92rem;}
.alert-error{background:#fdecec;border:1px solid #f4b5b5;color:#9a0000;}
.alert-ok{background:#dcf3e8;border:1px solid #a8e0c6;color:#0f6e4c;}

/* ---- result / message ---- */
.result{}
.result-icon{width:60px;height:60px;border-radius:var(--radius);background:#42ca4e;display:grid;place-items:center;margin-bottom:18px;}
.result-icon.err{background:var(--red);}
.result-icon svg{width:30px;height:30px;}
.result-title{font-size:1.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.01em;margin-bottom:8px;}
.lead{font-size:1.05rem;color:#444;margin-bottom:8px;}

/* ---- manage ---- */
.manage-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px;}
.manage-head h2{font-size:1.4rem;font-weight:600;text-transform:uppercase;letter-spacing:.01em;}

/* ===== Admin ===== */
body.admin{background:var(--bg);}
.admin-login{flex:1 0 auto;display:grid;place-items:center;padding:40px 20px;}
.admin-card{background:#fff;border:1px solid var(--border);border-top:4px solid var(--red);border-radius:var(--radius);
  padding:28px;width:100%;max-width:360px;box-shadow:0 8px 30px -16px rgba(0,0,0,.3);}
.admin-brand{font-family:var(--head);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:1.05rem;margin-bottom:18px;color:var(--dark);}
.admin-brand span{color:var(--red);}
.admin-top{background:var(--dark);color:#fff;display:flex;align-items:center;justify-content:space-between;
  padding:16px 22px;border-bottom:3px solid var(--red);}
.admin-top .admin-brand{margin:0;color:#fff;}
.admin-top-right{display:flex;gap:18px;font-size:.85rem;}
.admin-top-right a{color:#d8d8d8;text-decoration:none;}
.admin-top-right a:hover{color:#fff;}
.admin-wrap{max-width:920px;margin:0 auto;padding:24px 20px 60px;width:100%;}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:26px;}
.kpi{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:16px;text-align:center;}
.kpi b{display:block;font-family:var(--head);font-size:1.8rem;font-weight:700;color:var(--red);}
.kpi span{font-size:.74rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;}
.admin-h{font-family:var(--head);font-size:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;margin:20px 0 12px;}
.admin-list{display:flex;flex-direction:column;gap:10px;}
.admin-row{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;
  display:flex;gap:14px;justify-content:space-between;align-items:center;flex-wrap:wrap;}
.admin-row-title{font-family:var(--head);font-weight:600;font-size:1.02rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.admin-row-sub{font-size:.88rem;color:var(--text);margin-top:3px;}
.admin-row-meta{font-size:.8rem;color:var(--muted);margin-top:2px;}
.admin-actions{display:flex;gap:7px;flex-wrap:wrap;}
.admin-actions form{margin:0;}
.ab{border:1px solid var(--border);background:#fff;color:var(--dark);border-radius:var(--radius);padding:8px 13px;
  font-family:var(--head);font-weight:500;text-transform:uppercase;letter-spacing:.03em;font-size:.78rem;cursor:pointer;text-decoration:none;display:inline-block;}
.ab:hover{border-color:var(--red);color:var(--red-dk);}
.ab-ok{background:var(--ok);border-color:var(--ok);color:#fff;}
.ab-ok:hover{background:#18895c;color:#fff;border-color:#18895c;}
.ab-del{color:var(--red-dker);border-color:#f0c2c2;}
.ab-del:hover{background:#fdecec;border-color:var(--red);}

/* ---- responsive ---- */
@media (max-width:560px){
  body{font-size:15px;}
  .sj-main{padding:22px 0 36px;}
  .hero h1{font-size:1.55rem;}
  .row{grid-template-columns:1fr;}
  .kpis{grid-template-columns:repeat(2,1fr);}
  .admin-row{flex-direction:column;align-items:stretch;}
  .stats{gap:18px;}
}
