
body {font-family: 'Inter', sans-serif; font-size:16px; background: #ece8df !important; color: #111827; padding-top: 125px;}
:root {
      --primary: #86a30d;
      --primaryhover: #96a74e;
      --dark: #0f172a;
      --light-bg: #f5f7fb;
      --border: #e5e7eb;
    }

* {
box-sizing: border-box;
}

a { text-decoration: none !important; color: var(--primary) !important;}
a:hover { text-decoration: none !important; color: var(--primaryhover) !important;}

.site-wrapper {
    max-width: 1320px;
    margin: auto;
    padding: 0 15px;
}

.btn-primary {background-color: var(--primary) !important; border-color: var(--primary) !important; color:#fff !important;}
.btn-primary:hover {background-color: var(--primaryhover) !important; border-color: var(--primaryhover) !important; color:#fff !important;}

.btn-outline-primary {border-color: var(--primary) !important; color: var(--primary) !important;}
.btn-outline-primary:hover {background-color: var(--primary) !important; border-color: var(--primary) !important; color: #fff !important;}

.errore {color:red !important;}

.share-buttons {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    
}

.share-buttons a {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    background: var(--primary);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: 700;
    cursor: pointer;
}

.share-buttons a:hover {
    color: #fff !important;
    background: var(--primaryhover);
}


/*///////////////////////  | HEADER |  ///////////////////////*/
.main-header {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 999;
      background: rgba(255,255,255,.92);
      backdrop-filter: blur(14px);
      transition: all .35s ease;
      border-bottom: 1px solid rgba(0,0,0,.05);
    }

.main-header.scrolled {
    box-shadow: 0 10px 35px rgba(0,0,0,.08);
    background: rgba(255,255,255,.98);
}

.topbar {
    border-bottom: 1px solid rgba(0,0,0,.05);
    padding: 10px 0;
    background-color: #86a30d;
}

.topbar .btn {
    font-size: 13px;
    border-radius: 14px;
    padding: 8px 16px;
    font-weight: 600;
}

.navbar {
    padding: 18px 0;
}

.navbar-brand img {
    max-width: 250px;
}

.nav-link {
    font-weight: 700;
    font-size: 14px;
    color: #111827;
    letter-spacing: .3px;
    transition: .2s ease;
}

.nav-link:hover {
    color: var(--primary);
}
/*///////////////////////  | HERO |  ///////////////////////*/
.hero {
      background-image: url("/grafica/jobIndex.jpg");
      background-position: center;
      border-radius: 30px;
      padding: 90px 50px;
      color: white;
      overflow: hidden;
      position: relative;
      margin-top: 60px;
    }

.hero::before {
    content: '';
    position: absolute;
    width: 300px;
    height: 300px;
    background: rgba(255,255,255,.08);
    border-radius: 50%;
    right: -100px;
    top: -100px;
}

.hero h1 {
    font-size: 52px;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 20px;
    max-width: 700px;
}

.hero p {
    font-size: 18px;
    max-width: 650px;
    opacity: .95;
    margin-bottom: 35px;
}

.hero .btn {
    border-radius: 60px;
    padding: 14px 30px;
    font-weight: 700;
    font-size: 15px;
}
/*///////////////////////  | SEARCH |  ///////////////////////*/
.search-box {
      background: white;
      border-radius: 24px;
      padding: 25px;
      margin-top: -40px;
      position: relative;
      z-index: 5;
      box-shadow: 0 20px 50px rgba(0,0,0,.08);
    }

.search-box .form-control,
.search-box .form-select {
    height: 54px;
    border-radius: 14px;
    border: 1px solid var(--border);
    font-size: 15px;
}

.search-box .btn {
    height: 54px;
    border-radius: 14px;
    font-weight: 700;
}
/*///////////////////////  | MAIN |  ///////////////////////*/
.content-section {
      margin-top: 50px;
    }

.section-title {
    font-size: 28px;
    font-weight: 800;
}

.job-card,
.news-card {
    background: white;
    border-radius: 24px;
    padding: 22px;
    margin-bottom: 20px;
    border: 1px solid rgba(0,0,0,.05);
    transition: .25s ease;
}

.job-card:hover,
.news-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 35px rgba(0,0,0,.06);
}

.job-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 12px;
}

.job-meta span {
    background: #eef4ff;
    color: var(--primary);
    font-size: 12px;
    padding: 6px 12px;
    border-radius: 50px;
    font-weight: 700;
}

.job-card h3 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 10px;
}

.job-card p {
    color: #6b7280;
    margin-bottom: 18px;
}

.job-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    flex-wrap: wrap;
}

.company {
    font-weight: 700;
    font-size: 15px;
}

.news-card img {
    width: 100%;
    border-radius: 16px;
    margin-bottom: 18px;
    height: 220px;
    object-fit: cover;
}

.news-card small {
    text-transform: uppercase;
    letter-spacing: .5px;
}

.news-card h4 {
    font-size: 20px;
    font-weight: 700;
    margin: 10px 0 12px;
    line-height: 1.4;
}

.regions-section,
.newsletter-section {
    background: white;
    border-radius: 30px;
    padding: 45px;
    margin-top: 30px;
}

.regions-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 25px;
}

.region-link {
    background: #f3f4f6;
    padding: 12px 18px;
    border-radius: 14px;
    font-weight: 600;
    transition: .2s ease;
}

.region-link:hover {
    background: var(--primary);
    color: white !important;
}
/*///////////////////////  | NEWSLETTER |  ///////////////////////*/
.newsletter-box {
    max-width: 800px;
    margin: auto;
    text-align: center;
}

.newsletter-box h2 {
    font-size: 40px;
    font-weight: 800;
    margin-bottom: 15px;
}

.newsletter-box p {
    color: #6b7280;
    margin-bottom: 30px;
}

.newsletter-form .form-control {
    height: 58px;
    border-radius: 16px;
    border: 1px solid var(--border);
}

.newsletter-form .btn {
    height: 58px;
    border-radius: 16px;
    font-weight: 700;
    width: 100%;
}
/*///////////////////////  | BREADCRUMP |  ///////////////////////*/
nav.breadcrump {width:100%; height: 20px; background-color: var(--primary); font-size:10px; }
nav.breadcrump ul li {float:left; height: 20px; line-height: 18px; margin:0 5px;}
nav.breadcrump ul li a {display:block; width:100%; height:100%; padding:0 5px; text-align:center; text-transform:uppercase; color:#fff !important; font-weight:bold;}
nav.breadcrump ul li a:hover {background-color:var(--primaryhover);}

/*///////////////////////  | LOGIN OUT |  ///////////////////////*/
#wrapAccesso {height:50px; text-align:center; margin:0 auto;}

/*///////////////////////  | LOGIN IN |  ///////////////////////*/
.toolBarLogin {margin-bottom:40px;}

.wrapperBoxLogin {width:100%; height:320px; background-color:rgba(236, 232, 223, 1); border-bottom:solid 3px #86a30d;}
.boxAccessoSmart {margin:8px 15%; -moz-border-radius:15px; border-radius:15px; background-color:#d9d3c3;}
.boxAccessoSmart img {width:55px; -moz-border-radius:50%; border-radius:50%; margin:10px;}
.boxAccessoSmart .boxForm {width:230px; padding:5px 10px 0 0;}
.boxAccessoSmart .boxForm input[type="password"], .boxUtentiRegistrati .boxForm input[type="email"] {width:240px; margin:5px; font-style:italic;}
.boxAccessoSmart .boxForm input[type="submit"] {width:250px; margin:5px;}
.boxAccessoSmart .btn {width:43%; margin-top:5px; margin-right:5px;}

.boxLoginSmart {display:inline-block; line-height:20px; padding:5px 10px 5px 60px; margin-top: 5px; text-align:center; background-position:10px center; background-repeat:no-repeat; background-color: rgb(233, 99, 98); color: #fff; -moz-border-radius:5px; border-radius:5px;}
 .candidati {background-image:url(../grafica/loginSmartCandidatiIcon.png);}
 .aziende {background-image:url(../grafica/loginSmartCandidatiIcon.png);}


/*///////////////////////  | FOOTER |  ///////////////////////*/
footer {
    margin-top: 60px;
    background: var(--primary);
    color: white;
    padding: 40px 0;
}

.footer-title {
    font-size: 1.1rem;
    font-weight: 700;
    margin-bottom: 25px;
}

.footer-links a {
    display: block;
    color: rgba(255, 255, 255, .8) !important;
    margin-bottom: 12px;
    transition: .3s;
}

.footer-links a {
    opacity: .8;
    transition: .2s ease;
}

.footer-links a:hover {
    opacity: 1;
    color: #fff;
}

#tasto_top {width:50px; height:50px; right:18px; bottom:70px; position:fixed; text-align:center;}
#tasto_top img {-moz-border-radius:50%; border-radius:50%;}
/*///////////////////////  | OVERLAY |  ///////////////////////*/

.overlay_container {position:fixed; z-index:100; width:100%; height:100%; background-color:rgba(0,0,0,.5); display:none;}
.overlay_content {background-color:#fff; left:50%; margin-top:40px; position:absolute; -moz-border-radius:3px; border-radius:3px; padding-bottom:10px;}
.overlay_close {width:50px; height:50px; float:right; display:block; text-align:center; line-height:50px; font-size:25px;}
.overlay_iframe {float:left; margin:0 10px;}

/*/////////////////////////////////// COOKIES ALERT ///////////////////////////////////*/

#wrapDisclaimer {width:100%; position:fixed; bottom:0; left:0; background-color:#1e3764; font-size:16px; display:none; z-index:11000; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
#wrapDisclaimer a {color:#fff;}
#disclaimerCookies {width:100%; color:#fff;}
.cookiesContentSx {float:left;}
.cookiesContentSx p {line-height:1.5em; color:#fff; background-image:url(data:image/png;base64,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);
 background-repeat:no-repeat;}
.cookiesContentDx {float:right;}
#disclaimer_cookies_chiudi {height:40px; line-height:40px; padding:0 20px; margin:0 5px; display:inline-block; background-color:#962b20; color:#fff; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; text-decoration:none; text-transform:uppercase; font-size:1.1em; border:none; text-align:center; text-shadow:none; cursor:pointer;}
#disclaimer_cookies_chiudi a:hover {color:#e10404;}

/* SMARTPHONE */

@media screen and (min-width: 0px) and (max-width: 767px) {
	
#wrapDisclaimer {width:100%; padding:10px 5%;}
.cookiesContentSx p {padding:70px 0 30px 0; background-size:auto 35%; background-position:center top; font-size:.8em;}
.cookiesContentDx {width:100%; text-align:center;}
#disclaimer_cookies_chiudi {}
body {
padding-top: 165px;
}

.hero {
padding: 45px 25px;
border-radius: 24px;
}

.hero h1 {
font-size: 30px;
}

.search-box,
.regions-section,
.newsletter-section {
padding: 25px;
}

.section-title {
font-size: 24px;
}

.navbar-brand {
font-size: 26px;
}
}

/* IPAD PORTRAIT */

@media only screen and (min-width: 768px) {
	
#wrapDisclaimer {width:100%; padding:20px 5%;}
.cookiesContentSx p {padding:10px 0 10px 90px; background-size:auto 80%; background-position:left center; font-size:1em;}
.cookiesContentDx {width:100%; text-align:center;}
#disclaimer_cookies_chiudi {}

}

/* IPAD LANDSCAPE + NETBOOK */

@media only screen and (min-width: 1025px){
	
#wrapDisclaimer {width:100%; padding:50px 5%;}
.cookiesContentSx p {padding:10px 0 10px 90px; background-size:auto 100%;}
.cookiesContentSx {width:80%; text-align:left;}
.cookiesContentDx {width:20%; text-align:center;}
#disclaimer_cookies_chiudi {}
}