:root{
--red:#e8102b;
--black:#101116;
--gray:#777d89;
}
*{box-sizing:border-box}
body{
margin:0;
font-family:Arial,Helvetica,sans-serif;
background:#f6f7f9;
color:var(--black);
}
a{text-decoration:none;color:inherit}
button,input,select{font:inherit}

.header{
height:90px;
padding:0 max(24px,calc((100% - 1180px)/2));
background:white;
display:flex;
align-items:center;
justify-content:space-between;
position:relative;
z-index:5;
}
.brand{
display:flex;
align-items:center;
gap:13px;
font-size:26px;
font-weight:900;
letter-spacing:-1px;
}
.brand b,footer span{color:var(--red)}
.logo{
width:53px;height:53px;
display:flex;
align-items:center;
justify-content:center;
background:var(--red);
color:white;
border-radius:12px;
font-size:22px;
letter-spacing:0;
}
.company-link{
background:#121319;
color:white;
padding:15px 22px;
border-radius:13px;
font-weight:700;
font-size:14px;
}

.hero{
position:relative;
overflow:hidden;
background:#111219;
min-height:500px;
color:white;
}
.hero-photo{
position:absolute;
inset:0;
background-image:url('/tirolwork-preview-hiker.jpg');
background-size:cover;
background-position:center 48%;
transform:scaleX(-1);
opacity:.88;
}
.hero-shade{
position:absolute;
inset:0;
background:linear-gradient(
90deg,
#101116 0%,
rgba(16,17,22,.97) 24%,
rgba(16,17,22,.79) 53%,
rgba(16,17,22,.12) 100%
);
}
.hero-circle{
position:absolute;
right:-200px;
bottom:-500px;
width:850px;
height:850px;
border:2px solid rgba(239,29,49,.65);
border-radius:50%;
box-shadow:0 0 150px rgba(229,14,43,.28);
}
.hero-content{
position:relative;
z-index:2;
max-width:1180px;
margin:auto;
padding:70px 30px 65px;
}
.badge{
display:inline-block;
border:1px solid #d53348;
color:#ffb5bf;
border-radius:40px;
padding:10px 18px;
letter-spacing:3px;
font-size:11px;
font-weight:800;
}
.hero h1{
font-size:clamp(43px,7vw,80px);
line-height:1.08;
letter-spacing:-2px;
margin:27px 0 22px;
font-weight:900;
}
.hero h1 span{color:#ff344e}
.hero-content>p{
max-width:560px;
color:#e1e1e5;
line-height:1.7;
font-size:19px;
}
.advantages{
display:flex;
gap:35px;
margin-top:39px;
font-size:14px;
line-height:1.45;
}
.advantages div{
display:flex;
align-items:center;
gap:12px;
}
.advantages span{
display:grid;
place-items:center;
width:47px;height:47px;
border-radius:50%;
background:#ffffff12;
color:#ff3a50;
font-size:24px;
flex-shrink:0;
}

main{
max-width:1180px;
margin:auto;
padding:0 22px 75px;
}
.search-panel{
position:relative;
z-index:4;
background:white;
border-radius:24px;
padding:24px;
margin:-30px auto 65px;
box-shadow:0 20px 55px #17202c19;
}
.search-main{
display:flex;
align-items:center;
height:64px;
border:1px solid #e4e5eb;
border-radius:17px;
padding:6px;
}
.search-icon{
font-size:31px;
padding:0 13px;
}
.search-main input{
flex:1;
width:0;
border:0;
outline:0;
font-size:15px;
}
.search-main button{
height:51px;
width:58px;
background:var(--red);
color:white;
border:0;
border-radius:13px;
font-size:29px;
cursor:pointer;
}
.filters{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:12px;
margin-top:15px;
}
.filters select{
border:1px solid #eaebef;
border-radius:13px;
background:#fafafb;
padding:15px 12px;
font-size:13px;
min-width:0;
cursor:pointer;
}
.listings{min-height:300px}
.section-title{
display:flex;
justify-content:space-between;
align-items:flex-start;
gap:15px;
margin-bottom:28px;
}
.section-title h2{
font-size:clamp(25px,4vw,35px);
letter-spacing:-1px;
margin:0 0 10px;
}
.section-title p{
margin:0;
color:var(--gray);
line-height:1.5;
}
.count{
background:#ffe5e9;
color:#c40d29;
border-radius:13px;
font-weight:800;
padding:13px 16px;
white-space:nowrap;
font-size:13px;
}
.demo-notice{
background:#fff0e2;
color:#7c4618;
border-radius:12px;
padding:15px;
font-size:13px;
line-height:1.5;
}
.jobs{display:grid;gap:17px}
.job-card{
display:grid;
grid-template-columns:80px minmax(0,1fr) auto;
gap:18px;
align-items:center;
background:white;
padding:24px;
border-radius:20px;
border:1px solid #eceef2;
box-shadow:0 7px 24px #17202a0c;
}
.job-logo{
height:78px;width:78px;
border-radius:15px;
background:#e9122d;
color:white;
font-size:25px;
font-weight:900;
display:grid;
place-items:center;
}
.job-logo.alt{
background:#f0ece7;
color:#2d2a29;
}
.job-company{
font-size:12px;
color:#717887;
text-transform:uppercase;
font-weight:800;
letter-spacing:1.5px;
}
.job-title{
font-size:21px;
font-weight:900;
margin:8px 0 11px;
}
.job-meta{
display:flex;
gap:17px;
flex-wrap:wrap;
color:#707785;
font-size:13px;
}
.job-description{
font-size:14px;
line-height:1.55;
color:#697080;
margin:14px 0 0;
}
.apply{
background:var(--red);
color:white;
border:0;
border-radius:13px;
padding:16px 19px;
white-space:nowrap;
cursor:pointer;
font-weight:800;
}
.empty{
padding:60px 15px;
text-align:center;
background:white;
border-radius:17px;
color:#777;
}
footer{
background:#111219;
text-align:center;
color:white;
padding:40px 20px;
}
footer strong{font-size:25px}
footer p,footer small{color:#b3b6c0}

@media(max-width:700px){
.header{height:77px;padding:0 17px}
.brand{font-size:21px;gap:8px}
.logo{width:43px;height:43px;font-size:19px}
.company-link{padding:12px 13px;font-size:12px}
.hero{min-height:530px}
.hero-photo{background-position:36% center}
.hero-shade{
background:linear-gradient(
90deg,
rgba(13,14,20,.97),
rgba(13,14,20,.78) 48%,
rgba(13,14,20,.23)
);
}
.hero-content{padding:48px 22px 90px}
.hero h1{font-size:45px;letter-spacing:-1px}
.hero-content>p{font-size:16px;max-width:330px}
.advantages{gap:12px;justify-content:space-between}
.advantages div{display:block;font-size:10px;max-width:100px}
.advantages span{margin-bottom:8px;width:40px;height:40px}
.hero-circle{width:520px;height:520px;right:-260px;bottom:-350px}
main{padding:0 15px 50px}
.search-panel{padding:15px;margin-top:-45px;margin-bottom:45px}
.search-main{height:60px}
.search-main input{font-size:12px}
.search-main button{width:48px;height:46px}
.filters{gap:7px}
.filters select{font-size:11px;padding:12px 5px}
.section-title h2{font-size:24px}
.section-title p{font-size:13px}
.count{font-size:11px;padding:12px 9px}
.job-card{
grid-template-columns:58px minmax(0,1fr);
padding:17px;
gap:13px;
}
.job-logo{width:58px;height:58px;font-size:18px}
.job-title{font-size:17px;line-height:1.3}
.job-company{font-size:10px}
.job-meta{font-size:11px;gap:9px}
.job-description{font-size:13px}
.apply{grid-column:1/-1;width:100%}
}

/* TIROLWORK MOBILE DESIGN V3 */

@media(max-width:700px){

.filters{
 display:flex;
 gap:10px;
 overflow-x:auto;
 padding-bottom:8px;
 scrollbar-width:none;
}

.filters::-webkit-scrollbar{
 display:none;
}

.filters select{
 flex:0 0 145px;
 min-height:48px;
 font-size:13px;
 padding:12px;
 border-radius:14px;
}

.job-card{
 grid-template-columns:58px minmax(0,1fr);
 padding:19px;
 gap:14px;
 align-items:start;
 border-radius:20px;
}

.job-logo{
 width:58px;
 height:58px;
 border-radius:13px;
}

.job-title{
 font-size:18px;
 line-height:1.35;
}

.job-description{
 line-height:1.6;
}

.apply{
 grid-column:2;
 justify-self:end;
 width:auto;
 padding:13px 16px;
 font-size:13px;
 border-radius:12px;
}

.advantages{
 gap:12px;
}

.advantages div{
 font-size:11px;
 line-height:1.4;
}

}

/* TIROLWORK MOBILE V4 */
@media(max-width:700px){
.filters{
 display:grid;
 grid-template-columns:repeat(2,minmax(0,1fr));
 gap:10px;
 overflow:visible;
 padding-bottom:0;
}
.filters select{
 width:100%;
 min-width:0;
 font-size:13px;
 padding:13px 10px;
}
#type{
 grid-column:1/-1;
}
}


/* TIROLWORK APPLICATION MODAL V5 */

.apply-modal{
 width:min(94vw,510px);
 max-height:90vh;
 overflow-y:auto;
 border:0;
 border-radius:24px;
 padding:30px;
 background:white;
 color:#15151a;
 box-shadow:0 25px 90px #0004;
}

.apply-modal::backdrop{
 background:rgba(6,8,15,.75);
 backdrop-filter:blur(5px);
}

.modal-close{
 float:right;
 width:38px;
 height:38px;
 border:0;
 border-radius:50%;
 background:#f1f2f5;
 font-size:27px;
 cursor:pointer;
}

.modal-badge{
 color:#dd1730;
 font-size:11px;
 font-weight:900;
 letter-spacing:2px;
 margin-bottom:15px;
}

.apply-modal h2{
 font-size:30px;
 margin:10px 0;
}

.modal-job{
 color:#747987;
 margin-bottom:25px;
 line-height:1.5;
}

.apply-modal label{
 display:block;
 font-weight:700;
 font-size:14px;
 margin:17px 0 8px;
}

.apply-modal input{
 display:block;
 width:100%;
 padding:14px;
 border:1px solid #dddfe6;
 border-radius:12px;
 background:#fafafa;
}

.preview-info{
 background:#fff3e8;
 padding:14px;
 border-radius:12px;
 color:#835322;
 line-height:1.6;
 font-size:12px;
 margin-top:20px;
}

.apply-submit{
 width:100%;
 margin-top:18px;
 padding:17px;
 border:0;
 border-radius:13px;
 background:#e8102b;
 color:white;
 font-weight:800;
 cursor:pointer;
}

@media(max-width:700px){
 .apply-modal{
  padding:23px;
  border-radius:20px;
 }
}

/* APPLICATION PRIVACY V6 */
.apply-modal .privacy-consent {
 display:flex;
 align-items:flex-start;
 gap:12px;
 margin:22px 0;
 line-height:1.5;
 font-size:13px;
}

.apply-modal .privacy-consent input {
 width:20px;
 height:20px;
 flex-shrink:0;
 accent-color:#e8102b;
 margin:0;
}

.privacy-consent a {
 color:#d71932;
 font-weight:800;
 text-decoration:underline;
}

.legal-links {
 display:flex;
 justify-content:center;
 gap:25px;
 margin-top:20px;
 font-size:13px;
 color:#ddd;
}
