/* ==========================================================================
   Campus Detail Page - Layout & Components
   Inherits theme variables from global theme.css via body
   ========================================================================== */

/* Campus-specific variables (extend global) */
.campus-detail-page {
    --bg-hero-gradient: linear-gradient(135deg, var(--bg-card) 0%, var(--bg-body, #F2F2F2) 100%);
    --shadow-card: var(--shadow, 0 1px 3px rgba(0,0,0,0.08));
    --shadow-card-hover: var(--shadow-hover, 0 4px 12px rgba(0,0,0,0.12));
    --text-breadcrumb: var(--text-muted, #999999);
    --radius: 16px;
    --radius-sm: 8px;
}

/* ==========================================================================
   Page Container
   ========================================================================== */
.campus-detail-page {
    background-color: var(--bg-container, #FFFFFF);
    margin: 0;
    padding: 0;
    transition: var(--transition-theme);
}

.campus-detail-page *,
.campus-detail-page *::before,
.campus-detail-page *::after {
    box-sizing: border-box;
}

/* ==========================================================================
   Hero Section
   ========================================================================== */
.campus-detail-page .campus-hero {
    background: var(--bg-hero-gradient);
    padding: 40px 40px 48px;
    border-bottom: 1px solid var(--border);
    transition: var(--transition-theme);
}

.campus-detail-page .campus-breadcrumb {
    list-style: none;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0;
    margin: 0 0 24px 0;
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
}

.campus-detail-page .campus-breadcrumb li {
    color: var(--text-breadcrumb);
    transition: var(--transition-theme);
}

.campus-detail-page .campus-breadcrumb li a {
    color: var(--text-breadcrumb);
    text-decoration: none;
    transition: color 0.2s;
}

.campus-detail-page .campus-breadcrumb li a:hover {
    color: var(--turquoise);
}

.campus-detail-page .campus-breadcrumb .separator {
    color: var(--border);
}

.campus-detail-page .campus-tag {
    display: inline-block;
    background: var(--coral);
    color: #FFFFFF;
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 4px 12px;
    border-radius: 4px;
    margin-bottom: 16px;
}

.campus-detail-page .campus-hero h1 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 56px;
    font-weight: 400;
    color: var(--text-primary);
    line-height: 1.1;
    margin: 0 0 12px 0;
    letter-spacing: 1px;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-hero-location {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--text-secondary);
    font-family: 'Barlow', sans-serif;
    font-size: 16px;
    margin-bottom: 24px;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-hero-location .location-icon {
    color: var(--coral);
    font-size: 14px;
}

.campus-detail-page .campus-quick-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.campus-detail-page .campus-fact-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--bg-pill);
    border: 1px solid var(--border);
    border-radius: 100px;
    padding: 8px 16px;
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
    color: var(--text-primary);
    transition: var(--transition-theme);
}

.campus-detail-page .campus-fact-pill .pill-icon {
    color: var(--turquoise);
    font-size: 14px;
}

/* ==========================================================================
   Content Layout
   ========================================================================== */
.campus-detail-page .campus-content {
    padding: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

/* ==========================================================================
   Main Content
   ========================================================================== */
.campus-detail-page .campus-main {
    min-width: 0;
}

.campus-detail-page .campus-section-title {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 32px;
    font-weight: 400;
    color: var(--text-primary);
    margin: 0 0 16px 0;
    letter-spacing: 0.5px;
    line-height: 1.2;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-description {
    font-family: 'Barlow', sans-serif;
    font-size: 16px;
    line-height: 1.7;
    color: var(--text-secondary);
    margin-bottom: 40px;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-description p {
    margin-bottom: 12px;
    color: var(--text-secondary);
}

.campus-detail-page .campus-description img {
    max-width: 100%;
    height: auto;
    border-radius: var(--radius-sm);
    margin: 12px 0;
}

/* Full-width section (Informació, Altres campus) */
.campus-detail-page .campus-fullwidth-section {
    padding: 0 40px 40px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Feature Cards Grid */
.campus-detail-page .campus-features-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 40px;
}

.campus-detail-page .campus-feature-card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 24px;
    min-width: 0;
    box-shadow: var(--shadow-card);
    transition: var(--transition-theme), transform 0.2s ease;
}

.campus-detail-page .campus-feature-card .feature-content img {
    max-width: 100%;
    height: auto;
}

.campus-detail-page .campus-feature-card:hover {
    border-color: var(--turquoise);
    box-shadow: var(--shadow-card-hover);
    transform: translateY(-2px);
}

.campus-detail-page .campus-feature-card .feature-header {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.campus-detail-page .campus-feature-card .feature-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    background: var(--bg-icon);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--turquoise);
    font-size: 18px;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-feature-card h3 {
    font-family: 'Barlow', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.3;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-feature-card .feature-content {
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
    line-height: 1.6;
    color: var(--text-secondary);
    transition: var(--transition-theme);
}

.campus-detail-page .campus-feature-card .feature-content p {
    margin-bottom: 4px;
    color: var(--text-secondary);
}

.campus-detail-page .campus-feature-card .feature-content ul {
    margin: 0;
    padding-left: 16px;
}

.campus-detail-page .campus-feature-card .feature-content li {
    color: var(--text-secondary);
    margin-bottom: 2px;
}

/* Campus Navigation */
.campus-detail-page .campus-nav-section {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 24px;
    box-shadow: var(--shadow-card);
    transition: var(--transition-theme);
}

.campus-detail-page .campus-nav-section h3 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 24px;
    font-weight: 400;
    color: var(--text-primary);
    margin: 0 0 16px 0;
    line-height: 1.2;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-nav-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.campus-detail-page .campus-nav-list li {
    margin-bottom: 4px;
}

.campus-detail-page .campus-nav-group-title {
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--turquoise);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
    margin-top: 16px;
    padding: 0;
}

.campus-detail-page .campus-nav-group-title:first-child {
    margin-top: 0;
}

.campus-detail-page .campus-nav-list a {
    display: block;
    padding: 8px 12px;
    color: var(--text-secondary);
    text-decoration: none;
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
    border-radius: var(--radius-sm);
    transition: all 0.2s;
}

.campus-detail-page .campus-nav-list a:hover {
    background: var(--bg-pill);
    color: var(--text-primary);
}

.campus-detail-page .campus-nav-list a.active {
    background: var(--coral);
    color: #FFFFFF;
}

/* ==========================================================================
   Price Card (full width)
   ========================================================================== */
.campus-detail-page .campus-price-card-fullwidth {
    margin-bottom: 24px;
    padding: 0;
    overflow: hidden;
}

.campus-detail-page .campus-price-card-fullwidth .campus-price-card-inner {
    display: flex;
    flex-wrap: nowrap;
    gap: 0;
}

.campus-detail-page .campus-price-card-fullwidth .price-oferta {
    flex: 1 1 0;
    min-width: 0;
    margin-bottom: 0;
    padding: 20px;
    border-bottom: none;
    border-right: 1px solid var(--border);
}

.campus-detail-page .campus-price-card-fullwidth .price-oferta:last-child {
    border-right: none;
}

.campus-detail-page .campus-price-card-fullwidth .campus-cta-btn {
    border-radius: 0;
}

/* Price Card (base) */
.campus-detail-page .campus-price-card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 24px 20px;
    box-shadow: var(--shadow-card);
    transition: var(--transition-theme);
}

.campus-detail-page .campus-price-card .price-label {
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
    color: var(--text-secondary);
    margin-bottom: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.campus-detail-page .campus-price-card .price-amount {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 48px;
    color: var(--text-primary);
    line-height: 1;
    margin-bottom: 4px;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-price-card .price-detail {
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
    color: var(--text-secondary);
    margin-bottom: 24px;
}

.campus-detail-page .campus-price-card .price-divider {
    border: none;
    border-top: 1px solid var(--border);
    margin: 16px 0;
}

.campus-detail-page .campus-price-card .price-oferta {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--border);
}

.campus-detail-page .campus-price-card .price-oferta:last-of-type {
    border-bottom: none;
    margin-bottom: 24px;
}

.campus-detail-page .campus-price-card .price-oferta-name {
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 4px;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-price-card .price-oferta-dates {
    font-family: 'Barlow', sans-serif;
    font-size: 13px;
    color: var(--text-secondary);
    margin-bottom: 4px;
}

.campus-detail-page .campus-price-card .price-oferta-amount {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 32px;
    color: var(--text-primary);
    line-height: 1.1;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-price-card .price-oferta-text {
    font-family: 'Barlow', sans-serif;
    font-size: 13px;
    color: var(--text-secondary);
}

.campus-detail-page .campus-cta-btn {
    display: block;
    width: 100%;
    padding: 16px;
    background: var(--coral);
    color: #FFFFFF;
    font-family: 'Barlow', sans-serif;
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    border: none;
    border-radius: var(--radius-sm);
    cursor: pointer;
    transition: all 0.2s;
    letter-spacing: 0.5px;
}

.campus-detail-page .campus-cta-btn:hover {
    background: var(--coral-hover);
    color: #FFFFFF;
    text-decoration: none;
    transform: translateY(-1px);
}

/* Details Card */
.campus-detail-page .campus-details-card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 24px;
    box-shadow: var(--shadow-card);
    transition: var(--transition-theme);
}

.campus-detail-page .campus-details-section {
    border-top: 1px solid var(--border);
    margin-top: 20px;
    padding-top: 20px;
}

.campus-detail-page .campus-details-section h3,
.campus-detail-page .campus-details-card h3 {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 24px;
    font-weight: 400;
    color: var(--text-primary);
    margin: 0 0 16px 0;
    line-height: 1.2;
    transition: var(--transition-theme);
}

.campus-detail-page .campus-detail-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--border);
    transition: var(--transition-theme);
}

.campus-detail-page .campus-detail-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.campus-detail-page .campus-detail-item .detail-icon {
    display: none;
}

.campus-detail-page .campus-detail-item .detail-label {
    font-family: 'Barlow', sans-serif;
    font-size: 12px;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 2px;
}

.campus-detail-page .campus-detail-item .detail-value {
    font-family: 'Barlow', sans-serif;
    font-size: 14px;
    color: var(--text-primary);
    line-height: 1.4;
    transition: var(--transition-theme);
}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 991px) {
    .campus-detail-page .campus-content {
        padding: 24px;
    }

    .campus-detail-page .campus-hero {
        padding: 24px;
    }

    .campus-detail-page .campus-hero h1 {
        font-size: 40px;
    }
}

@media (max-width: 767px) {
    .campus-detail-page .campus-hero h1 {
        font-size: 32px;
    }

    .campus-detail-page .campus-features-grid {
        grid-template-columns: 1fr;
    }

    .campus-detail-page .campus-quick-facts {
        flex-direction: column;
    }

    .campus-detail-page .campus-fact-pill {
        width: 100%;
        justify-content: center;
    }

    .campus-detail-page .campus-content {
        padding: 16px;
        gap: 24px;
    }

    .campus-detail-page .campus-fullwidth-section {
        padding: 0 16px 24px;
    }

    .campus-detail-page .campus-hero {
        padding: 16px;
    }

    .campus-detail-page .campus-price-card .price-oferta-amount {
        font-size: 28px;
    }

    .campus-detail-page .campus-price-card-fullwidth .campus-price-card-inner {
        flex-direction: column;
        flex-wrap: wrap;
    }

    .campus-detail-page .campus-price-card-fullwidth .price-oferta {
        border-right: none;
        border-bottom: 1px solid var(--border);
    }

    .campus-detail-page .campus-price-card-fullwidth .price-oferta:last-child {
        border-bottom: none;
    }
}

/* ==========================================================================
   Campus List Page - /campus/
   Uses CSS variables from theme.css for light/dark support
   Scoped under .campus-list-page
   ========================================================================== */

/* Hero */
.campus-list-page .campus-list-hero {
    position: relative;
    background: var(--bg-card);
    padding: 2.5rem 1.5rem 2rem;
    text-align: center;
    overflow: hidden;
    border-bottom: 1px solid var(--border);
}

.campus-list-page .campus-list-hero::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle at 30% 40%, rgba(13,148,136,0.06) 0%, transparent 50%),
                radial-gradient(circle at 70% 60%, rgba(232,69,64,0.04) 0%, transparent 50%);
    animation: campusDrift 20s ease-in-out infinite;
}

body.campus-dark .campus-list-page .campus-list-hero::before {
    background: radial-gradient(circle at 30% 40%, rgba(92,224,210,0.08) 0%, transparent 50%),
                radial-gradient(circle at 70% 60%, rgba(232,69,64,0.06) 0%, transparent 50%);
}

@keyframes campusDrift {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(-2%, 2%); }
}

.campus-list-page .hero-content {
    position: relative;
    z-index: 1;
}

.campus-list-page .hero-badge {
    display: inline-block;
    background: var(--turquoise);
    color: #FFFFFF;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.1rem;
    letter-spacing: 3px;
    padding: 0.3rem 1.2rem;
    border-radius: 4px;
    margin-bottom: 1rem;
}

body.campus-dark .campus-list-page .hero-badge {
    color: var(--bg-body);
}

.campus-list-page .hero-title {
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: clamp(2.2rem, 5vw, 3.8rem) !important;
    letter-spacing: 4px;
    line-height: 1 !important;
    margin-bottom: 0.3rem !important;
    color: var(--text-primary) !important;
}

.campus-list-page .hero-title span {
    color: var(--turquoise);
}

.campus-list-page .hero-subtitle {
    font-size: 1.1rem;
    color: var(--text-muted);
    font-weight: 500;
    letter-spacing: 1px;
}

/* Container */
.campus-list-page .campus-list-container {
    max-width: 1060px;
    margin: 0 auto;
    padding: 2rem 1.5rem 1rem;
}

/* Section titles */
.campus-list-page .section-title {
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 1.5rem !important;
    letter-spacing: 3px;
    color: var(--coral) !important;
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 0.8rem;
}

.campus-list-page .section-title::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, var(--coral), transparent);
}

/* Seus Grid */
.campus-list-page .seus-grid {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-bottom: 2.5rem;
}

.campus-list-page .seu-group {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: var(--shadow);
}

.campus-list-page .seu-header {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 1rem 1.5rem;
    background: linear-gradient(135deg, var(--coral), var(--coral-hover));
}

.campus-list-page .seu-icon {
    color: #FFFFFF;
    font-size: 1rem;
    opacity: 0.85;
}

.campus-list-page .seu-name {
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 1.4rem !important;
    letter-spacing: 2px;
    color: #FFFFFF !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

.campus-list-page .seu-campus-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    padding: 1.25rem 1.5rem;
}

.campus-list-page .campus-pill {
    flex: 1 1 280px;
    display: block;
    background: var(--bg-pill, #F7F7F8);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 1.25rem 1.5rem;
    text-decoration: none !important;
    transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s;
    cursor: pointer;
}

.campus-list-page .campus-pill:hover {
    border-color: var(--turquoise);
    transform: translateY(-2px);
    box-shadow: var(--shadow-hover);
    text-decoration: none !important;
}

.campus-list-page .campus-pill-name {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.5rem;
    font-weight: 400;
    color: var(--turquoise);
    letter-spacing: 1px;
    margin-bottom: 0.5rem;
    line-height: 1.2;
}

.campus-list-page .campus-pill-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.2rem;
}

.campus-list-page .campus-pill-meta span {
    font-family: 'Barlow', sans-serif;
    font-size: 1.05rem;
    color: var(--text-secondary);
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    white-space: nowrap;
}

.campus-list-page .campus-pill-meta .glyphicon {
    font-size: 0.85rem;
    color: var(--turquoise);
    opacity: 0.8;
}

/* Price cards */
.campus-list-page .prices-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 1rem;
    margin-bottom: 2rem;
}

.campus-list-page .price-card {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 1.5rem;
    text-align: center;
    transition: border-color 0.3s, transform 0.3s, box-shadow 0.3s;
    position: relative;
    overflow: hidden;
    box-shadow: var(--shadow);
}

.campus-list-page .price-card:hover {
    border-color: var(--coral);
    transform: translateY(-3px);
    box-shadow: var(--shadow-hover);
}

.campus-list-page .price-card.featured {
    border-color: var(--coral);
}

body.campus-dark .campus-list-page .price-card.featured {
    background: linear-gradient(180deg, rgba(92,224,210,0.08) 0%, var(--bg-card) 100%);
}

.campus-list-page .price-card.featured::before {
    content: 'MILLOR PREU';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: var(--coral);
    color: #FFFFFF;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 0.9rem;
    letter-spacing: 2px;
    padding: 0.35rem;
}

.campus-list-page .price-card.featured {
    padding-top: 2.5rem;
}

.campus-list-page .price-label {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.4rem;
    letter-spacing: 2px;
    color: var(--text-muted);
    margin-bottom: 0.5rem;
}

.campus-list-page .price-amount {
    font-family: 'Bebas Neue', sans-serif;
    font-size: 3.5rem;
    color: var(--text-primary);
    line-height: 1;
    margin-bottom: 0.3rem;
}

.campus-list-page .price-amount span {
    color: var(--coral);
}

.campus-list-page .price-detail {
    font-size: 1.05rem;
    color: var(--text-muted);
    line-height: 1.5;
    font-family: 'Barlow', sans-serif;
}

.campus-list-page .price-equip {
    display: inline-block;
    margin-top: 0.3rem;
    font-size: 0.95rem;
    color: var(--turquoise);
    font-weight: 600;
}

/* Packs section */
.campus-list-page .packs-list {
    list-style: none;
    padding: 0;
    margin: 0 0 2rem;
}

.campus-list-page .packs-list li {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 0.8rem 1.2rem;
    margin-bottom: 0.5rem;
    font-family: 'Barlow', sans-serif;
    font-weight: 600;
    font-size: 1.15rem;
    color: var(--turquoise);
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.campus-list-page .packs-list li:hover {
    border-color: var(--coral);
    background: var(--bg-pill);
}

.campus-list-page .packs-list li .pack-arrow {
    margin-left: auto;
    color: var(--text-muted);
    font-size: 0.8rem;
}

/* Footer note */
.campus-list-page .footer-note {
    text-align: center;
    color: var(--text-muted);
    font-size: 0.82rem;
    font-family: 'Barlow', sans-serif;
    margin-top: 1rem;
    margin-bottom: 1rem;
    opacity: 0.7;
}

/* CTA Button */
.campus-list-page .cta-container {
    text-align: center;
    margin: 1.5rem 0;
}

.campus-list-page .btn-cta {
    display: inline-block;
    background: var(--coral);
    color: #FFFFFF !important;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 1.6rem;
    letter-spacing: 3px;
    padding: 1.1rem 3.5rem;
    border-radius: 8px;
    text-decoration: none !important;
    transition: background 0.2s, transform 0.2s;
}

.campus-list-page .btn-cta:hover {
    background: var(--coral-hover);
    transform: translateY(-2px);
}

/* Responsive */
@media (max-width: 640px) {
    .campus-list-page .campus-list-container {
        padding: 1.5rem 1rem 1rem;
    }
    .campus-list-page .prices-grid {
        grid-template-columns: 1fr;
    }
    .campus-list-page .seu-campus-list {
        padding: 1rem;
    }
    .campus-list-page .campus-pill {
        flex: 1 1 100%;
    }
    .campus-list-page .campus-pill-meta {
        flex-direction: column;
        gap: 0.25rem;
    }
}

/*!
 *  Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url('../../fonts/fontawesome-webfont.eot?v=4.0.3');
  src: url('../../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'), url('../../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'), url('../../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'), url('../../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
}
.fa {
  display: inline-block;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.3333333333333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.2857142857142858em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.142857142857143em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.142857142857143em;
  width: 2.142857142857143em;
  top: 0.14285714285714285em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.8571428571428572em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eeeeee;
  border-radius: .1em;
}
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: spin 2s infinite linear;
  -moz-animation: spin 2s infinite linear;
  -o-animation: spin 2s infinite linear;
  animation: spin 2s infinite linear;
}
@-moz-keyframes spin {
  0% {
    -moz-transform: rotate(0deg);
  }
  100% {
    -moz-transform: rotate(359deg);
  }
}
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
  }
}
@-o-keyframes spin {
  0% {
    -o-transform: rotate(0deg);
  }
  100% {
    -o-transform: rotate(359deg);
  }
}
@-ms-keyframes spin {
  0% {
    -ms-transform: rotate(0deg);
  }
  100% {
    -ms-transform: rotate(359deg);
  }
}
@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  -moz-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  -o-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
  -webkit-transform: scale(-1, 1);
  -moz-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  -o-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
  -webkit-transform: scale(1, -1);
  -moz-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  -o-transform: scale(1, -1);
  transform: scale(1, -1);
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #ffffff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-asc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-desc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-reply-all:before {
  content: "\f122";
}
.fa-mail-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}

/*!
 *  Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */@font-face{font-family:'FontAwesome';src:url('../../fonts/fontawesome-webfont.eot?v=4.0.3');src:url('../../fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'),url('../../fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'),url('../../fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'),url('../../fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.3333333333333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.2857142857142858em;text-align:center}.fa-ul{padding-left:0;margin-left:2.142857142857143em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;top:.14285714285714285em;text-align:center}.fa-li.fa-lg{left:-1.8571428571428572em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg)}100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0,mirror=1);-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);-o-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2,mirror=1);-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);-o-transform:scale(1,-1);transform:scale(1,-1)}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-asc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-desc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-reply-all:before{content:"\f122"}.fa-mail-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}
ul.thumbnails.image_picker_selector {
  overflow: auto;
  list-style-image: none;
  list-style-position: outside;
  list-style-type: none;
  padding: 0px;
  margin: 0px; }
  ul.thumbnails.image_picker_selector ul {
    overflow: auto;
    list-style-image: none;
    list-style-position: outside;
    list-style-type: none;
    padding: 0px;
    margin: 0px; }
  ul.thumbnails.image_picker_selector li.group_title {
    float: none; }
  ul.thumbnails.image_picker_selector li {
    margin: 0px 12px 12px 0px;
    float: left; }
    ul.thumbnails.image_picker_selector li .thumbnail {
      padding: 6px;
      border: 1px solid #dddddd;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none; }
      ul.thumbnails.image_picker_selector li .thumbnail img {
        -webkit-user-drag: none; }
    ul.thumbnails.image_picker_selector li .thumbnail.selected {
      background: #0088cc; }

/* ==========================================================================
   INTRANET CUSTOM STYLES (Author D.Salvat)
   ========================================================================== */


/* ==========================================================
	INTRANET HOME PAGE
============================================================*/

.campusns-intranet-temporada-info-name {    
    width: 250px !important;
}

.campusns-intranet-temporada-info-value {    
    margin-left: 260px !important;
    width: 200px !important;
}

.campusns-intranet-temporada-form-control{
    width: auto;
    min-width: 0;
}
/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html {
    position: relative;
    min-height: 100%;
}

body {
    background: none repeat scroll 0 0 #F9A85F;
    min-height: 100%;

}

/* Wrapper for page content to push down footer */
#wrap {
  min-height: 100%;
  height: auto;
  /* Negative indent footer by its height */
  margin: 0 auto -60px;
  /* Pad bottom by footer height */
  padding: 0 0 60px;
}


ul.nav > li > a:hover {
	color: #FF6600 !important;
}

@media (min-width: 1200px) {
    width: 960px;
}

img {
    display: block;
    height: auto;
    max-width: 100%;
}

img.centered{
    display: block;
    margin-left: auto;
    margin-right: auto;
}


a.recupera-password-link{
    //font-size: 0.8em;
    color: #777777 !important;
    text-decoration: none;
}

a.recupera-password-link:hover{
    color: #FF6600 !important;
}


a.campusns-link{
    //font-size: 0.8em;
    color: #777777 !important;
    text-decoration: none;
}

a.campusns-link:hover{
    color: #FF6600 !important;
}

.navbar-toggle .bar-icon-campus {
    border-radius: 1px;
    display: block;
    height: 2px;
    width: 22px;
    background-color: #ffffff;
}


#index ul.nav > li:nth-child(1) > a.menu-link,
#campus ul.nav > li:nth-child(2) > a.menu-link,
#inscripcio ul.nav > li:nth-child(3) > a.menu-link,
#inscripcions-usuari ul.nav > li:nth-child(4) > a.menu-link,
#registre ul.nav > li:nth-child(4) > a.menu-link{
	color: #FF6600 !important;
}

ul.nav > li > a {
	color: #777777 !important;
}

footer {
	bottom: 0px;
}

h1, h2, h3, h4, h5, h6 {
    color: #FF6600;
    font-family: inherit;
    font-weight: bold;
    line-height: 20px;
    margin: 10px 0;
    text-rendering: optimizelegibility;
}


.container960 {
    background-color: #FFFFFF;
    margin: 0 auto 0px;
    width: 90%;
    padding: 0px 30px;
    -moz-box-shadow: 0 2px 6px #444;
    -webkit-box-shadow: 0 2px 6px #444;
    box-shadow: 0 2px 6px #444;
    max-width: 970px;
}

.footer-cns{
    height: 60px;
}

.login-top{
	margin-top: 10px;
	margin-bottom: 0px;
}

.img-logo{
	margin-top: 10px;
        margin-top: 5px;
}

.nav > li > a:hover,
.nav > li > a:focus {
	background-color: #FFFFFF !important;
}

.main {
    padding: 20px 0;
}

.wrapper {
    margin: 0 auto;
}

.footer-container{
	bottom: 0px;
}

.bottom-links{
    color: #777777 !important;
    font-weight: normal;
    font-size: 0.9em;
}

.bottom-links:hover{
    color: #FF9933 !important;
    text-decoration: none;
}

.supported-browsers{
    color: #707070;
    font-weight: normal;
    font-size: 0.9em;
}

.center-pills{
    display: inline-block;
}

#pleaseWaitDialog {
    width: 400px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -25px;
    margin-left: -200px;
    padding: 20px;
}

.inscripcio-option > div.panel-body > div.pull-right > input[type=checkbox] {
	visibility: hidden;
}

/* ====================================

=======================================*/
.login-box {
	/* width: 400px; */
    float: none;
    margin-left: auto;
    margin-right: auto;
}


.campus-instalacio-canvas span{
	position: absolute;
	left: 40%;
	-webkit-transform: rotate(270deg);
	-moz-transform: rotate(270deg);
	-o-transform: rotate(270deg);
	writing-mode: lr-bt ;
}

.campus-not-available{
    color: #FF0000;
}

/* ===========================================================================
   Botones customizados
======================================================================== */
.btn-nacho {
	background-color: hsl(30, 93%, 35%) !important;
	background-repeat: repeat-x;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f68717", endColorstr="#ac5906");
	background-image: -khtml-gradient(linear, left top, left bottom, from(#f68717), to(#ac5906));
	background-image: -moz-linear-gradient(top, #f68717, #ac5906);
	background-image: -ms-linear-gradient(top, #f68717, #ac5906);
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #f68717), color-stop(100%, #ac5906));
	background-image: -webkit-linear-gradient(top, #f68717, #ac5906);
	background-image: -o-linear-gradient(top, #f68717, #ac5906);
	background-image: linear-gradient(#f68717, #ac5906);
	border-color: #ac5906 #ac5906 hsl(30, 93%, 30.5%);
	color: #fff !important;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.29);
	-webkit-font-smoothing: antialiased;
}


.btn-black          { color: #ffffff; background-color: #777; border-color: #555; }
.btn-black:hover, .btn-black:focus, .btn-black:active, .btn-black.active, .open .dropdown-toggle.btn-black
                        { color: #ffffff; background-color: #888; border-color: #444; }


/* ====================================================================
	JQuery customizado
======================================================================== */

.ui-datepicker {
	font-size:12px !important;
}

/* ==========================================================
	PARA TIMEPICKERS
============================================================*/


/* css for timepicker */
.ui-timepicker-div .ui-widget-header { margin-bottom: 8px; }
.ui-timepicker-div dl { text-align: left; }
.ui-timepicker-div dl dt { height: 25px; margin-bottom: -25px; }
.ui-timepicker-div dl dd { margin: 0 10px 10px 65px; }
.ui-timepicker-div td { font-size: 90%; }
.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }

.ui-timepicker-rtl{ direction: rtl; }
.ui-timepicker-rtl dl { text-align: right; }
.ui-timepicker-rtl dl dd { margin: 0 65px 10px 10px; }



/* ==========================================================
	PARA INSCRIPCION
============================================================*/

.inscripcio-option{
    width: 100%;
    margin-bottom: 5px;
}

.inscripcio-option > label {
    font-size: 0.8em;
}

.inscripcio-option > span{
    font-size: 0.8em;
}


.inscripcio-option > input[type="checkbox"]{
    visibility: hidden;
}


.panel-default > .panel-heading-campus {
    background-color: #f68717 !important;
    border-color: #ac5906 !important;
    color: #333 !important;
}



/* ==========================================================
	CAMPUS DESCRIPTION
============================================================*/

.campus-bullet{
    max-width: 20px ;
    height: 20px;
}

/* ==========================================================
    MOBILE HAMBURGER MENU
============================================================*/
.campusns-menu-toggle {
    display: block;
    background-color: #f68717;
    background-image: none;
    border: 1px solid #ac5906;
    border-radius: 4px;
    float: right;
    margin-bottom: 8px;
    margin-right: 0;
    margin-top: 8px;
    padding: 10px 12px;
    position: relative;
    cursor: pointer;
}
.campusns-menu-toggle:hover,
.campusns-menu-toggle:focus {
    background-color: #e07510;
}
.campusns-menu-toggle .glyphicon {
    color: #ffffff;
    font-size: 18px;
}

/*! normalize.css v2.1.0 | MIT License | git.io/normalize */

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined in IE 8/9.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */

audio,
canvas,
video {
    display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
    display: none;
    height: 0;
}

/**
 * Address styling not present in IE 8/9.
 */

[hidden] {
    display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html {
    font-family: sans-serif; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
    -ms-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
    margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */

a:focus {
    outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover {
    outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */

abbr[title] {
    border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,
strong {
    font-weight: bold;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */

dfn {
    font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
    background: #ff0;
    color: #000;
}

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */

pre {
    white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */

q {
    quotes: "\201C" "\201D" "\2018" "\2019";
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

/* ==========================================================================
   Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9.
 */

img {
    border: 0;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */

svg:not(:root) {
    overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari 5.
 */

figure {
    margin: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
    border: 0; /* 1 */
    padding: 0; /* 2 */
}

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */

button,
input,
select,
textarea {
    font-family: inherit; /* 1 */
    font-size: 100%; /* 2 */
    margin: 0; /* 3 */
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,
input {
    line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */

button,
select {
    text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
    cursor: default;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */

input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box; /* 2 */
    box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */

textarea {
    overflow: auto; /* 1 */
    vertical-align: top; /* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* ==========================================================================
   Global Theme - Campus Nacho Solozabal
   Light theme by default, dark theme via .campus-dark on body (auto 20h-7h)
   ========================================================================== */

/* ==========================================================================
   Light Theme Variables
   ========================================================================== */
body {
    --bg-body: #F2F2F2;
    --bg-container: #FFFFFF;
    --bg-header: #FFFFFF;
    --bg-footer: #F8F8F8;
    --bg-card: #FFFFFF;
    --bg-input: #FFFFFF;
    --bg-pill: #F5F5F5;
    --bg-icon: #F0F7F6;
    --border: #E5E5E5;
    --border-input: #CCCCCC;
    --coral: #E84540;
    --coral-hover: #D03D38;
    --turquoise: #0D9488;
    --orange: #F68717;
    --text-primary: #1A1A1A;
    --text-secondary: #666666;
    --text-muted: #999999;
    --text-nav: #555555;
    --text-nav-active: #E84540;
    --shadow: 0 2px 12px rgba(0,0,0,0.08);
    --shadow-hover: 0 4px 20px rgba(0,0,0,0.12);
    --transition-theme: background-color 0.4s ease, color 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease;
}

/* ==========================================================================
   Dark Theme Variables
   ========================================================================== */
body.campus-dark {
    --bg-body: #0A0A0A;
    --bg-container: #111111;
    --bg-header: #1A1A1A;
    --bg-footer: #0A0A0A;
    --bg-card: #1A1A1A;
    --bg-input: #2A2A2A;
    --bg-pill: #2A2A2A;
    --bg-icon: #2A2A2A;
    --border: #2A2A2A;
    --border-input: #3A3A3A;
    --coral: #E84540;
    --coral-hover: #D03D38;
    --turquoise: #5CE0D2;
    --orange: #F68717;
    --text-primary: #FFFFFF;
    --text-secondary: #B0B0B0;
    --text-muted: #777777;
    --text-nav: #B0B0B0;
    --text-nav-active: #E84540;
    --shadow: 0 2px 12px rgba(0,0,0,0.3);
    --shadow-hover: 0 4px 20px rgba(0,0,0,0.5);
}

/* ==========================================================================
   Body & Container
   ========================================================================== */
body {
    background: var(--bg-body) !important;
    background-image: none !important;
    font-family: 'Barlow', sans-serif !important;
    color: var(--text-primary);
    transition: var(--transition-theme);
}

.container960 {
    background-color: var(--bg-container) !important;
    box-shadow: var(--shadow) !important;
    transition: var(--transition-theme);
    border-radius: 0;
    max-width: 1100px;
}

/* ==========================================================================
   Typography
   ========================================================================== */
h1, h2, h3, h4, h5, h6 {
    color: var(--text-primary) !important;
    font-family: 'Bebas Neue', sans-serif !important;
    font-weight: 400 !important;
    letter-spacing: 0.5px;
    transition: var(--transition-theme);
}

p, li, span, div {
    transition: color 0.4s ease;
}

a {
    color: var(--coral);
    transition: color 0.2s ease;
}

a:hover, a:focus {
    color: var(--coral-hover);
    text-decoration: none;
}

/* ==========================================================================
   Header
   ========================================================================== */
.header-container {
    background: var(--bg-header);
    transition: var(--transition-theme);
    padding-bottom: 0;
    border-bottom: 1px solid var(--border);
}

/* Campus Header (logo + text) */
.campus-header-link,
.campus-header-link:hover,
.campus-header-link:focus {
    text-decoration: none;
    color: inherit;
}

.campus-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 20px 0;
    background: var(--bg-header);
    overflow: hidden;
}

.campus-header__text {
    flex: 1;
    min-width: 0;
}

.campus-header__text .line1 {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 400;
    font-size: clamp(1.6rem, 3vw, 2.4rem);
    color: var(--text-primary);
    letter-spacing: 0.02em;
    line-height: 1.1;
    text-transform: uppercase;
}

.campus-header__text .line2 {
    font-family: 'Barlow Condensed', sans-serif;
    font-weight: 700;
    font-size: clamp(2rem, 4vw, 3.2rem);
    color: var(--text-primary);
    letter-spacing: 0.01em;
    line-height: 1.1;
    text-transform: uppercase;
}

.campus-header__icon {
    flex-shrink: 0;
    height: 120px;
    margin-left: 20px;
}

.campus-header__icon img {
    display: block;
    height: 100%;
    width: auto;
    max-width: none;
    object-fit: contain;
}

@media (max-width: 991px) {
    .campus-header {
        padding: 16px 0;
    }
    .campus-header__icon {
        height: 80px;
    }
}

/* Login bar */
.login-top {
    margin-top: 8px !important;
    margin-bottom: 0 !important;
    border-bottom: 1px solid var(--border);
    padding-bottom: 8px;
}

.login-top .form-control {
    background-color: var(--bg-input);
    border-color: var(--border-input);
    color: var(--text-primary);
    font-family: 'Barlow', sans-serif;
    font-size: 13px;
    height: 32px;
    transition: var(--transition-theme);
}

.login-top .form-control::placeholder {
    color: var(--text-muted);
}

.login-top .form-control:focus {
    border-color: var(--coral);
    box-shadow: 0 0 0 2px rgba(232, 69, 64, 0.15);
}

.login-top .btn-default {
    background: var(--coral);
    border-color: var(--coral);
    color: #FFFFFF;
    font-family: 'Barlow', sans-serif;
    font-size: 13px;
    font-weight: 600;
    height: 32px;
    padding: 4px 16px;
    border-radius: 4px;
    transition: all 0.2s;
}

.login-top .btn-default:hover {
    background: var(--coral-hover);
    border-color: var(--coral-hover);
}

.login-top .dropdown-toggle,
.login-top .nav > li > a {
    color: var(--text-secondary) !important;
    font-family: 'Barlow', sans-serif;
    font-size: 13px;
}

.login-top .dropdown-menu {
    background: var(--bg-card);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
}

.login-top .dropdown-menu li a {
    color: var(--text-primary) !important;
    font-family: 'Barlow', sans-serif;
}

.login-top .dropdown-menu li a:hover {
    background: var(--bg-pill);
    color: var(--coral) !important;
}

a.recupera-password-link {
    color: var(--text-muted) !important;
}

a.recupera-password-link:hover {
    color: var(--coral) !important;
}

/* ==========================================================================
   Navigation
   ========================================================================== */
.menu-header {
    background: var(--bg-header);
    transition: var(--transition-theme);
}

ul.nav > li > a.menu-link {
    color: var(--text-nav) !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    letter-spacing: 0.5px;
    padding: 12px 16px !important;
    border-radius: 6px;
    transition: all 0.2s !important;
}

ul.nav > li > a.menu-link:hover,
ul.nav > li > a.menu-link:focus {
    color: var(--coral) !important;
    background-color: var(--bg-pill) !important;
}

/* Active menu item by page ID */
#index ul.nav > li:nth-child(1) > a.menu-link,
#campus ul.nav > li:nth-child(2) > a.menu-link,
#inscripcio ul.nav > li:nth-child(3) > a.menu-link,
#inscripcions-usuari ul.nav > li:nth-child(4) > a.menu-link,
#registre ul.nav > li:nth-child(4) > a.menu-link {
    color: var(--text-nav-active) !important;
}

.nav > li > a:hover,
.nav > li > a:focus {
    background-color: var(--bg-pill) !important;
}

/* Mobile menu */
a.campusns-link {
    color: var(--text-primary) !important;
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.01em;
}

.campusns-menu-toggle {
    background-color: var(--coral) !important;
    border-color: var(--coral-hover) !important;
}

.campusns-menu-toggle:hover,
.campusns-menu-toggle:focus {
    background-color: var(--coral-hover) !important;
}

/* Dropdown menus */
.dropdown-menu {
    background-color: var(--bg-card);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
}

.dropdown-menu > li > a {
    color: var(--text-primary) !important;
    font-family: 'Barlow', sans-serif;
    transition: all 0.2s;
}

.dropdown-menu > li > a:hover {
    background-color: var(--bg-pill) !important;
    color: var(--coral) !important;
}

/* ==========================================================================
   Main Content Area
   ========================================================================== */
.main-container-inner {
    transition: var(--transition-theme);
}

.main-content {
    font-family: 'Barlow', sans-serif;
    color: var(--text-primary);
}

/* ==========================================================================
   Footer
   ========================================================================== */
.footer-container {
    background: var(--bg-container);
    border-top: 1px solid var(--border);
    padding: 24px 0 16px;
    transition: var(--transition-theme);
}

.footer-container h4 {
    font-family: 'Bebas Neue', sans-serif !important;
    font-size: 20px !important;
    color: var(--text-primary) !important;
    letter-spacing: 0.5px;
}

a.bottom-links {
    color: var(--text-secondary) !important;
    font-family: 'Barlow', sans-serif !important;
    font-size: 13px !important;
    transition: color 0.2s !important;
}

a.bottom-links:hover {
    color: var(--coral) !important;
}

.supported-browsers {
    color: var(--text-muted) !important;
    font-family: 'Barlow', sans-serif !important;
}

#sponsors img {
    border-radius: 8px;
    margin: 0 auto 16px;
    display: block;
}

/* ==========================================================================
   Buttons
   ========================================================================== */
.btn-nacho {
    background: var(--coral) !important;
    background-image: none !important;
    border-color: var(--coral-hover) !important;
    color: #FFFFFF !important;
    font-family: 'Barlow', sans-serif !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    transition: all 0.2s !important;
    text-shadow: none !important;
    filter: none !important;
}

.btn-nacho:hover {
    background: var(--coral-hover) !important;
    transform: translateY(-1px);
}

.btn-black {
    background-color: var(--bg-pill) !important;
    border-color: var(--border) !important;
    color: var(--text-primary) !important;
    font-family: 'Barlow', sans-serif !important;
    border-radius: 6px !important;
}

.btn-black:hover {
    background-color: var(--border) !important;
}

/* ==========================================================================
   Forms (global)
   ========================================================================== */
.form-control {
    background-color: var(--bg-input);
    border-color: var(--border-input);
    color: var(--text-primary);
    font-family: 'Barlow', sans-serif;
    border-radius: 6px;
    transition: var(--transition-theme);
}

.form-control:focus {
    border-color: var(--coral);
    box-shadow: 0 0 0 2px rgba(232, 69, 64, 0.15);
}

.form-control::placeholder {
    color: var(--text-muted);
}

label {
    color: var(--text-primary);
    font-family: 'Barlow', sans-serif;
    font-weight: 600;
}

/* ==========================================================================
   Panels & Cards
   ========================================================================== */
.panel {
    background-color: var(--bg-card);
    border-color: var(--border);
    border-radius: 12px;
    box-shadow: var(--shadow);
    transition: var(--transition-theme);
}

.panel-default > .panel-heading {
    background-color: var(--bg-pill);
    border-color: var(--border);
    color: var(--text-primary);
    font-family: 'Barlow', sans-serif;
    border-radius: 12px 12px 0 0;
}

.panel-default > .panel-heading-campus {
    background-color: var(--coral) !important;
    border-color: var(--coral-hover) !important;
    color: #FFFFFF !important;
}

.panel-body {
    color: var(--text-primary);
}

/* ==========================================================================
   List Groups
   ========================================================================== */
.list-group-item {
    background-color: var(--bg-card);
    border-color: var(--border);
    color: var(--text-primary);
    transition: var(--transition-theme);
}

/* ==========================================================================
   Alerts / Flash Messages
   ========================================================================== */
.alert {
    border-radius: 8px;
    font-family: 'Barlow', sans-serif;
}

/* ==========================================================================
   Nav Pills (campus list page)
   ========================================================================== */
ul.nav.nav-pills > li > a {
    color: var(--text-nav) !important;
    font-family: 'Barlow', sans-serif;
    border-radius: 6px;
}

ul.nav.nav-pills > li > a:hover {
    background: var(--bg-pill) !important;
    color: var(--coral) !important;
}

/* ==========================================================================
   Tables
   ========================================================================== */
.table {
    color: var(--text-primary);
}

.table > thead > tr > th,
.table > tbody > tr > td {
    border-color: var(--border);
    font-family: 'Barlow', sans-serif;
}

.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: var(--bg-pill);
}

/* ==========================================================================
   Setmana Badges
   ========================================================================== */
.label-setmana-1 {
    background-color: #0D9488 !important;
    color: #FFFFFF !important;
    font-size: 85%;
    padding: 3px 8px;
    border-radius: 4px;
}

.label-setmana-2 {
    background-color: #E84540 !important;
    color: #FFFFFF !important;
    font-size: 85%;
    padding: 3px 8px;
    border-radius: 4px;
}

/* ==========================================================================
   Selected Campus Cards (panel-primary)
   ========================================================================== */
.panel-primary {
    background-color: var(--bg-card);
    border-color: var(--turquoise);
    box-shadow: var(--shadow);
    transition: var(--transition-theme);
}

.panel-primary > .panel-heading {
    background-color: var(--turquoise);
    border-color: var(--turquoise);
    color: #FFFFFF;
}

.panel-primary > .panel-body {
    color: var(--text-primary);
}

/* ==========================================================================
   Alerts
   ========================================================================== */
.alert {
    border-left-width: 4px !important;
    border-left-style: solid !important;
}

.alert-info {
    background-color: rgba(13, 148, 136, 0.08) !important;
    border-color: var(--border) !important;
    border-left-color: var(--turquoise) !important;
    color: var(--text-primary) !important;
}

.alert-danger {
    background-color: rgba(232, 69, 64, 0.08) !important;
    border-color: var(--border) !important;
    border-left-color: var(--coral) !important;
    color: var(--text-primary) !important;
}

.alert-success {
    background-color: rgba(40, 167, 69, 0.08) !important;
    border-color: var(--border) !important;
    border-left-color: #28a745 !important;
    color: var(--text-primary) !important;
}

.alert-warning {
    background-color: rgba(246, 135, 23, 0.08) !important;
    border-color: var(--border) !important;
    border-left-color: var(--orange) !important;
    color: var(--text-primary) !important;
}

body.campus-dark .alert-info {
    background-color: rgba(92, 224, 210, 0.08) !important;
}

body.campus-dark .alert-danger {
    background-color: rgba(232, 69, 64, 0.1) !important;
}

body.campus-dark .alert-success {
    background-color: rgba(40, 167, 69, 0.1) !important;
}

body.campus-dark .alert-warning {
    background-color: rgba(246, 135, 23, 0.1) !important;
}

/* ==========================================================================
   Select & Radio/Checkbox
   ========================================================================== */
select.form-control {
    background-color: var(--bg-input);
    color: var(--text-primary);
}

input[type="radio"],
input[type="checkbox"] {
    accent-color: var(--coral);
}

/* ==========================================================================
   Wells
   ========================================================================== */
.well {
    background-color: var(--bg-pill);
    border-color: var(--border);
    color: var(--text-primary);
    transition: var(--transition-theme);
}

/* ==========================================================================
   Modals
   ========================================================================== */
.modal-content {
    background-color: var(--bg-card);
    border-color: var(--border);
    color: var(--text-primary);
}

.modal-header {
    border-color: var(--border);
    color: var(--text-primary);
}

.modal-footer {
    border-color: var(--border);
}

/* ==========================================================================
   Callout Download
   ========================================================================== */
.callout-download {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-left: 4px solid var(--coral);
    border-radius: 8px;
    padding: 20px;
    margin-bottom: 20px;
    box-shadow: var(--shadow);
    transition: var(--transition-theme);
}

.callout-download-icon {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    background: rgba(232, 69, 64, 0.1);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--coral);
}

body.campus-dark .callout-download-icon {
    background: rgba(232, 69, 64, 0.15);
}

.callout-download-content strong {
    display: block;
    font-family: 'Bebas Neue', sans-serif;
    font-size: 18px;
    letter-spacing: 0.5px;
    color: var(--text-primary);
    margin-bottom: 4px;
}

.callout-download-content p {
    color: var(--text-secondary);
    font-size: 14px;
    margin-bottom: 12px;
    line-height: 1.5;
}

.callout-download .btn-sm {
    font-size: 13px;
    padding: 6px 16px;
}

/* ==========================================================================
   Inscription Form Actions
   ========================================================================== */
.inscripcio-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 24px 0 16px;
    margin-top: 8px;
    border-top: 1px solid var(--border);
}

/* ==========================================================================
   Responsive: Mobile nav colors
   ========================================================================== */
@media (max-width: 767px) {
    .bs-navbar-collapse-campusns {
        background: var(--bg-container);
        border: 1px solid var(--border);
        border-radius: 8px;
        padding: 8px;
        margin-top: 4px;
    }
}
