/* Improved styles for Nominate - modern palette, accessible contrast, refined typography */
:root{
  --bg: #f7fafc;             /* light neutral background */
  --card: #ffffff;           /* card background */
  --muted: #6b7280;         /* muted text */
  --radius: 12px;
  --container-width: 1450px;

  --color-primary: #00393f;
  --color-primary-light: #47664f;
  --color-primary-dark: #00282C;
  --color-secondary: #E5A500;

  /* Text */
  --text-primary: #0B1A1C;
  --text-secondary: #475B5E;
  --text-muted: #7A8C8E;
  --text-on-primary: #FFFFFF;

  /* Backgrounds */
  --bg-body: #F6F9F9;
  --bg-surface: #FFFFFF;
  --bg-muted: #E3EBEB;

  /* Borders */
  --border: #D2DADA;
  --border-strong: #91A4A5;

  /* States */
  --success: #1C9C6D;
  --warning: #E5A500;
  --error: #C62828;
  --info: #007B84;

  /* Overlay & shadow */
  --overlay: rgba(0, 0, 0, 0.45);
  --shadow: rgba(0, 0, 0, 0.12);

}

/* Base layout */
html,body{height:100%;scroll-behavior: smooth;}
body{
  margin:0;
  font-family: Inter, 'Segoe UI', Roboto, system-ui, -apple-system, 'Helvetica Neue', Arial;
  background:var(--bg);
  color:var(--text);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.45;
}
.container{max-width:var(--container-width);margin:28px auto;padding:0 20px;}
.hidden{display: none !important;}

/* Headings */
h1, h2, h3 {
  color:var(--text);
  margin:0 0 8px 0;
  line-height:1.15;
}
h1{font-size:1.9rem}
h2{font-size:1.4rem}
h3{font-size:1.05rem}

/* layouts */
.section-flex-rows {display: flex;flex-direction: column;justify-content: space-between;gap: 20px;}
.section-flex-rows-sm {display: flex;flex-direction: column;justify-content: space-between;gap: 20px; }
.section-title{font-weight:800;color:var(--text);margin-bottom:6px}
.section-flex-cols {display: flex;justify-content: space-between;gap: 20px;flex-wrap: wrap;margin-top:8px}
.section-grid-sm{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:22px;margin-top:8px}
.section-grid-lg{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:22px;margin-top:8px}
.section-padding{padding: 60px;}
.section-padding-sm{padding: 20px;}
.section-margin-top{margin-top: 100px;}
@media (max-width: 768px) {
  .container{margin:28px 10px;padding:0 5px;}
  .section-grid-lg {grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));}
  .section-padding{padding: 10px;}
  .section-margin-top{margin-top: 20px;}
}
.site-heading {display: flex;justify-content: space-between;gap: 20px; }


/* Cards and surfaces */
.card, .section-card {background:var(--card);border-radius:var(--radius);box-shadow:0 8px 24px rgba(15,23,42,0.06);border:1px solid rgba(15,23,42,0.03);}
.card p, .md-muted .small-muted{color:var(--muted)}
.card{overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}
.card:hover{transform:translateY(-6px);box-shadow:0 20px 40px rgba(2,6,23,0.06)}
.card img{width:100%;height:140px;object-fit:cover;border-bottom:1px solid rgba(15,23,42,0.04)}
.card-content{display:flex;flex-direction: column;justify-content:space-between;align-items:center;gap: 6px;padding:14px;}
.card-title{font-weight:700;color:var(--text);}
.card-title2{font-weight:700;color:var(--muted);}
.card-btn{margin-top:20px;}
.card-line{width: 100%;height: 1px;content: ' ';display: block;margin-top: 1.3em;background: #E9EFF6;;}
.card-meta{display:flex;justify-content:center;align-items:center;margin: 20px;gap:50px}
.card-badge{background:rgba(159, 173, 14, 0.08);color:var(--color-primary);padding:4px 10px;border-radius:999px;font-weight:600;}
.card-badge .vote-text {font-size: 0.75em;color: #888888;}
.social-icons {
		display: flex;
		margin-top: 1.2em;
		justify-content: space-between;
    gap: 30px;
    color: var(--text-primary);
		
		.icon {
			display: flex;
			align-items: center;
			flex-direction: column;
			a {
				width: 60px;
				height: 60px;
				font-size: 28px;
				line-height: 60px;
				text-align: center;
				border-radius: 30px;
				box-shadow: 0 13px 26px rgba(#000, .2), 0 3px 6px rgba(#000, .2);
			}
			
			h4 {
				color: #080911;
				font-size: 1em;
				margin-top: 0em;
				margin-bottom: 0em;
			}
			
			p {
				color: #666B7D;
				font-size: 12px;		
			}
		}
	}

/* Buttons */ 
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--color-primary);color:var(--text-on-primary);padding:8px 14px;
border-radius:10px;text-decoration:none;border:none;font-weight:600;cursor:pointer;font-size: 16px;
transition:transform .12s ease, box-shadow .12s ease, background .12s ease;}
.btn:hover{background:var(--color-secondary);transform:translateY(-1px)}
.btn.secondary{background:var(--bg-muted);color:var(--color-primary);font-weight:600}
.btn.ghost{background:transparent;border:1px solid rgba(15,23,42,0.06);color:var(--text)}

/* Links */
a{color:var(--color-primary);text-decoration:none}
a:hover{text-decoration:underline}


/* hero */
.hero{
  position: relative;
  width: 100%;
  height: 700px;
  background-image: linear-gradient(90deg, rgba(25,84,90,0.5), rgba(0,57,63,0.5)), url("/media/hero2.webp");
  background-size: cover;
  background-position: center;
  padding: 0px;
  margin: 0px;
  display: flex;
  justify-content: center;
  padding-top: 200px;
}
.hero-content {display: flex;flex-direction: column;align-items: center;}

.s-intro__content-sep {
    display        : flex;
    align-items    : center;
    justify-content: center;
    color: #fff;
}
.s-intro__content-sep span {
    display: inline-block;
}
.s-intro__content-sep span:nth-child(2) {
    font-weight     : 400;
    font-size       : calc(1.9rem * 0.6111);
    text-transform  : uppercase;
    letter-spacing  : 0.4em;
    background-color: rgba(0, 0, 0, 0.7);
    border          : 1px solid rgba(255, 255, 255, 0.1);
    border-radius   : 5px;
    padding         : calc(0.125 * 3.4rem) 3.4rem;
}

@media (max-width: 768px) {
  .s-intro__content-sep span:nth-child(2) {
    font-weight     : 200;
    font-size       : calc(1.9rem * 0.6111);
    padding: 2px;
  }
}

.countdown-wrapper {border: 1px solid black;}

.button-86 {
  all: unset;
  min-width: 100px;
  height: 50px;
  font-size: 20px;
  background: transparent;
  border: none;
  position: relative;
  color: #f0f0f0;
  cursor: pointer;
  z-index: 1;
  padding: 10px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  margin-top: 50px;
}

.button-86::after,
.button-86::before {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -99999;
  transition: all .4s;
}

.button-86::before {
  transform: translate(0%, 0%);
  width: 100%;
  height: 100%;
  background: var(--color-primary-dark);
  border-radius: 10px;
}

.button-86::after {
  transform: translate(10px, 10px);
  width: 35px;
  height: 35px;
  background: var(--color-secondary);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  border-radius: 50px;
}

.button-86:hover::before {
  transform: translate(5%, 20%);
  width: 110%;
  height: 110%;
}

.button-86:hover::after {
  border-radius: 10px;
  transform: translate(0, 0);
  width: 100%;
  height: 100%;
}

.button-86:active::after {
  transition: 0s;
  transform: translate(0, 5%);
}

@media (min-width: 991.98px) {
    .hero-sectors {
        position: relative;
        margin-top: -75px;
        z-index: 1;
    }
}


/* Navbar */
.navbar{
  background: linear-gradient(90deg,var(--color-primary),var(--color-primary));
  color: var(--text-on-primary);
  position: sticky;
  top: 0;
  z-index: 999;
  box-shadow: 0 4px 18px rgba(2,6,23,0.12);
}
.navbar-container{
  max-width:var(--container-width);
  margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;
}
.navbar-brand{display:flex;align-items:center;color:var(--text-on-primary);font-weight:700;font-size:1.15rem}
.navbar-brand .logo{height:36px;width:36px;margin-right:10px;border-radius:8px;object-fit:cover}
.navbar-links{display:flex;align-items:center;gap:1rem;list-style:none;margin:0;padding:0}
.navbar-links a{color:rgba(255,255,255,0.95);font-weight:600;padding:6px 8px;border-radius:8px}
.navbar-links a:hover{background:rgba(255,255,255,0.06)}
.dropdown{position:relative}
.dropdown-menu{display:none;position:absolute;top:110%;left:0;background:var(--bg-surface);color:var(--text-primary);border-radius:8px;padding:8px;width:100px;box-shadow:0 8px 30px rgba(2,6,23,0.12)}
.dropdown:hover .dropdown-menu{display:block}
.dropdown-menu a{display:block;padding:8px 10px;color:var(--text)}
.dropdown-menu a:hover{background:var(--bg-muted)}
.avatar{height:30px;width:30px;border-radius:50%;border:2px solid rgba(255,255,255,0.12)}
.btn-login{background:var(--bg-surface);color:var(--color-primary);padding:6px 12px;border-radius:8px;font-weight:700}

/* Mobile navigation */
.menu-toggle{display:none;background:none;border:none;color:var(--text-on-primary);font-size:1.4rem}
.mobile-menu{display:none;flex-direction:column;background:var(--bg-surface);padding:10px;border-top:1px solid rgba(2,6,23,0.05)}
.mobile-menu a{color:var(--text-primary);padding:10px 8px;border-bottom:1px solid rgba(2,6,23,0.03);text-decoration: none;display: block;}
@media (max-width:768px){
  .navbar-links{display:none}
  .menu-toggle{display:block}
}

/* top company */
.random-bg { display:flex; flex-wrap:wrap; justify-content:center; gap:8rem; padding:5px; }
.winner-wrap { width:280px; height:500px;  position:relative; padding:1rem 2rem 6.5rem 2rem; text-align:center; cursor:pointer; border-radius:16px; box-shadow:0 8px 20px rgba(0,0,0,0.25); transition:all 0.3s ease; }
.winner-wrap:hover { transform:translateY(-5px); box-shadow:0 12px 25px rgba(0,0,0,0.35); }
.border { position:absolute; width:90%; height:90%; border:1px solid rgba(255,189,105,0.4); left:0; right:0; top:0; bottom:0; margin:auto; }
.medal-box { width:200px; height:200px; color:var(--warning); border-radius:50%; margin:.8rem auto 1rem; background-size:cover; background-position:center; background-repeat:no-repeat; }
.winner-wrap h2 { color:var(--text-on-primary); font-size:1.2rem; font-weight:400; text-transform:uppercase; margin-bottom:.85rem; }
.winner-wrap .title { color:var(--text-primary); }
.winner-ribbon { width:100%; height:50px; background:var(--warning); text-align:center; font-family:'Bebas Neue', cursive; font-size:2rem; color:var(--color-primary); position:absolute; bottom:45px; left:0; z-index:99; box-shadow:0 10px 15px -7px rgba(0,0,0,0.2);overflow: hidden;}
.right-ribbon { width:0; height:0; position:absolute; right:-35px; bottom:30px; border-top:24px solid var(--warning); border-bottom:24px solid var(--warning); border-left:10px solid var(--warning); border-right:25px solid transparent; transition:all ease .3s; }
.left-ribbon { width:0; height:0; position:absolute; left:-35px; bottom:30px; border-top:24px solid var(--warning); border-bottom:24px solid var(--warning); border-left:25px solid transparent; border-right:10px solid var(--warning); transition:all ease .3s; }
.result-card { padding: 15px; margin-top: 20px; border-radius: 14px; background: #ffffff; box-shadow: 0 4px 12px rgba(0,0,0,0.1); font-family: "Arial", sans-serif; }
.result-card .line { display: flex; align-items: center; margin: 8px 0; font-size: 16px; color: #444; }
.result-card .line span, .result-card .line .icon { flex: 1; text-align: center; flex-wrap: wrap; }
.result-card .icon { font-size: 20px; color: #6b7280; display: inline-block; }
.result-card .final { font-weight: bold; font-size: 18px; color: #0074ff; }

/* Mobile Responsive Styles */
@media (max-width: 768px) {
  .random-bg {
    gap: 2rem; /* smaller spacing */
    padding: 1rem;
    justify-content: center;
  }

  .winner-wrap {
    width: 90%; /* flexible width for smaller screens */
    height: auto; /* allow content to define height */
    padding: 1rem;
    margin-bottom: 2rem; /* spacing between cards */
  }
  .medal-box {
    width: 120px;
    height: 120px;
    margin: 0.5rem auto 1rem;
  }

  .winner-ribbon {
    font-size: 1.4rem;
    height: 40px;
    bottom: 35px;
  }

  .right-ribbon, .left-ribbon {
    border-top: 18px solid var(--warning);
    border-bottom: 18px solid var(--warning);
    bottom: 25px;
  }

  /* Disable hover effects for touch devices */
  .winner-wrap:hover {
    transform: none;
    box-shadow: 0 8px 20px rgba(0,0,0,0.25);
  }
}


/* company */
.company-card {background: var(--bg-surface); border-radius: 16px; box-shadow: 0 4px 12px rgba(0,0,0,0.08); padding: 20px;  text-align: center; transition: transform 0.3s, box-shadow 0.3s; }
.company-card:hover { transform: translateY(-5px); box-shadow: 0 8px 20px rgba(0,0,0,0.12); }
.company-image { width: 100px; height: 100px; object-fit: cover; border-radius: 50%; margin: 0 auto 12px;}
.company-name { font-size: 1.25rem; font-weight: 600; margin: 8px 0; }
.company-sector, .company-representative, .company-description, .company-votes { font-size: 0.95rem; margin: 4px 0; color: var(--text-secondary); }



/* Forms */
form{margin:0}
input[type="text"],input[type="password"],input[type="number"],textarea,select{
  width:100%;padding:10px 12px;border-radius:8px;border:1px solid rgba(15,23,42,0.06);background:var(--bg-surface);color:var(--text);box-sizing:border-box
}
input:focus,textarea:focus,select:focus{outline:none;box-shadow:0 6px 18px rgba(11,95,255,0.08);border-color:var(--color-primary-light)}
.sector-select:focus {border-color: var(--color-primary);box-shadow: 0 0 4px rgba(0, 123, 255, 0.4);}

/* Voting & evaluation forms */
.criteria-rating{display:flex;gap:8px;align-items:center;margin:6px 0}
.criteria-rating input[type="text"]{flex:1}
.rate { float:left; height:46px; padding:0 10px; }
.rate:not(:checked) > input { position:absolute; opacity: 0;width: 0;height: 0; }
.rate:not(:checked) > label { float:right; width:1em; overflow:hidden; white-space:nowrap; cursor:pointer; font-size:30px; color:var(--muted); }
.rate:not(:checked) > label:before { content:'★ '; }
.rate > input:checked ~ label { color:var(--warning); }
.rate:not(:checked) > label:hover, .rate:not(:checked) > label:hover ~ label { color:var(--warning); }
.rate > input:checked + label:hover, .rate > input:checked + label:hover ~ label, .rate > input:checked ~ label:hover, .rate > input:checked ~ label:hover ~ label, .rate > label:hover ~ input:checked ~ label { color:var(--warning); }
.evaluation-form {display: flex;flex-direction: column;justify-content: space-between; }

/* Login container (registration/login.html) */
.login-container{max-width:420px;margin:72px auto;background:var(--card);padding:28px;border-radius:12px;box-shadow:0 10px 30px rgba(2,6,23,0.06)}
.login-container h2{text-align:center;margin-bottom:12px}
.error{color:var(--danger);text-align:center;margin-bottom:12px}

/* Footer */
.site-footer{padding:28px 0;text-align:center;color:var(--muted);border-top:1px solid rgba(2,6,23,0.04);margin-top:40px}

/* Utility */
.md-muted{font-size:1.4rem;color:var(--muted)}
.small-muted{font-size:0.95rem;color:var(--muted)}
.text-center{text-align:center}
.mt-2{margin-top:8px}
.mb-2{margin-bottom:8px}

/* Accessibility tweaks */
@media (prefers-reduced-motion: reduce){*{transition:none!important}}

/* minor responsive fixes */
@media (max-width:520px){
  .sector-title{font-size:1rem}
  .criteria-rating{flex-direction:column;align-items:flex-start}
}

/* end of stylesheet */


/* Buttons */
.prev, .next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.5);
  color: var(--text-on-primary);
  border: none;
  font-size: 2rem;
  padding: 5px 10px;
  cursor: pointer;
  z-index: 10;
}

.prev { left: 10px; }
.next { right: 10px; }

/* Responsive */
@media (max-width: 768px) { .carousel-item { min-width: 50%; } }
@media (max-width: 480px) { .carousel-item { min-width: 100%; } }


/* embla slider */
.embla {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  margin-top:100px;
}
.embla__viewport {
  overflow: hidden;
  width: 100%;
}
.embla__container {
  display: flex;
}
.embla__slide {
  flex: 0 0 100%;
  min-width: 0;
  color: var(--text-on-primary);
  font-size: 2rem;
  text-align: center;
  border-radius: 12px;
}
.embla__slide_sm {
  flex: 0 0 40%;
  min-width: 0;
  color: var(--text-on-primary);
  font-size: 2rem;
  text-align: center;
  border-radius: 12px;
}

/* Buttons */
.embla__button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.5);
  color: white;
  border: none;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  cursor: pointer;
  font-size: 1.5rem;
  z-index: 5;
}

.embla__button--prev { left: 10px; }
.embla__button--next { right: 10px; }

.embla__button:hover {
  background: rgba(0,0,0,0.8);
}


/* Footer */
.site-footer{
  background: linear-gradient(90deg,var(--color-primary-light),var(--color-primary));
  color: var(--text-on-primary);
  padding: 24px 20px;
  margin-top: 100px;
}

.footer-container{
  max-width: var(--container-width);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.footer-brand{
  display: flex;
  align-items: center;
  font-weight: 700;
  font-size: 1.15rem;
}

.footer-logo{
  height: 100px;
  width: 100px;
  margin-right: 10px;
  border-radius: 8px;
  object-fit: cover;
}

.footer-links{
  display: flex;
  gap: 1rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-links a{
  color: rgba(255,255,255,0.95);
  font-weight: 600;
  padding: 6px 8px;
  border-radius: 8px;
  text-decoration: none;
}

.footer-links a:hover{
  background: rgba(255,255,255,0.06);
}

.footer-bottom{
  margin-top: 12px;
  font-size: 0.85rem;
  opacity: 0.9;
}

.footer-bg {
  position: relative;
  width: 100%;
  background-image: linear-gradient(90deg, rgba(25,84,90,0.8), rgba(0,57,63,0.8)), url("/media/Untitled.png");
  background-size: cover;
  background-position: center;
}
.footer {color: white; padding: 50px 0;}
.footer-container {position: relative; z-index: 2; max-width: var(--container-width); margin: 0 auto; padding: 0 20px;}
.footer-grid {display: grid; grid-template-columns: 1fr 1fr; gap: 40px; margin-bottom: 40px;}
.footer-col {display: flex; flex-direction: column;}
.footer-title {font-size: 20px; font-weight: 600; margin-bottom: 20px;}
.footer-list {list-style: none; padding: 0; margin: 0;}
.footer-list li {margin-bottom: 10px;}
.footer-link {color: #ccc; text-decoration: none; transition: color .3s;}
.footer-link:hover {color: #4da3ff;}
.footer-text {color: #ccc; line-height: 1.7; margin-bottom: 20px;}
.footer-image {height: 140px; width: 200px; margin-bottom: 10px;}
.footer-divider {border-top: 1px solid #444; margin: 30px 0;}
.footer-bottom {display: flex; flex-direction: column; align-items: center; gap: 20px;}
.footer-social {display: flex; gap: 20px;}
.social-link {color: #bfbfbf; font-size: 24px; transition: color .3s;}
.social-link:hover {color: white;}
.footer-policy {display: flex; gap: 20px; flex-wrap: wrap; justify-content: center;}
.policy-link {color: #bfbfbf; font-size: 14px; text-decoration: none; transition: color .3s;}
.policy-link:hover {color: white;}
.footer-copy {color: #bfbfbf; font-size: 14px;}



.toast {position: fixed;left: 50px;bottom: 50px;min-width: 260px;padding: 12px 16px;border-radius: 6px;color: var(--text-on-primary);
background: var(--overlay);opacity: 0;transform: translateY(-20px);pointer-events: none;transition: opacity .3s, transform .3s;z-index: 99999;}
.toast.show {opacity: 1;transform: translateY(0);pointer-events: auto;}
.toast.success { background: var(--success); }
.toast.error   { background: var(--error); }
.toast.info    { background: var(--info); }
.toast.warning { background: var(--warning); }
.redirect-box {background: #fff; padding: 30px 40px; border-radius: 12px; box-shadow: 0 4px 20px rgba(0,0,0,0.1); text-align: center; max-width: 400px;}
.redirect-box h1 {font-size: 1.5em; color: #333; margin-bottom: 15px;}
.redirect-box p {font-size: 1em; color: #555; margin-bottom: 20px;}
.redirect-box a {display: inline-block; padding: 10px 20px; background: #007bff; color: white; text-decoration: none; border-radius: 6px;}
.redirect-box a:hover {background: #0056b3;}




.settings-row {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 15px;
    background: #f5f5f5;
    border-radius: 10px;
    width: fit-content;
}

/* Toggle Switch */
.switch {
    position: relative;
    width: 50px;
    height: 24px;
    display: inline-block;
}
.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    border-radius: 20px;
    transition: .3s;
}
.slider:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background-color: white;
    border-radius: 50%;
    transition: .3s;
}
input:checked + .slider {
    background-color: #007b5e;
}
input:checked + .slider:before {
    transform: translateX(26px);
}

.label-text {
    font-size: 16px;
}

/*** preloader ***/

#preloader {
    position       : fixed;
    display        : flex;
    top: 0;
    left: 0;
    flex-flow      : row wrap;
    justify-content: center;
    align-items    : center;
    background     : var(--color-primary);
    z-index        : 9999;
    height         : 100vh;
    width          : 100%;
    opacity        : 1;
    overflow       : hidden;
}

#preloader.hide {
    opacity: 0;
    visibility: hidden;
}

.spinner {
    width: 200px;
    height: 200px;
    margin: 100px auto;
    position: relative;
    animation: vibrate 1s linear infinite alternate;
}

/* الاهتزاز */
@keyframes vibrate {
    0% { transform: translateX(0); }
    25% { transform: translateX(-5px); }
    50% { transform: translateX(5px); }
    75% { transform: translateX(-5px); }
    100% { transform: translateX(5px); }
}


@media (max-width: 768px) {
  .hero { height: 500px; }
  .navbar-brand .logo { height: 28px; width: 28px; margin-right:8px; }
  .btn { font-size: 14px; padding: 8px 12px; }
  .card img { height: 120px; }
  .winner-wrap { width: 100%; height: auto; padding-bottom: 4rem; }
  .footer-grid { grid-template-columns: 1fr; gap: 20px; }
  .footer-logo { height: 80px; width: 80px; }
  input, textarea, select {font-size: 15px;}
  h1{font-size: 28px;line-height: 1.3;}
  h2{font-size: 24px;line-height: 1.35;}
  h3{font-size: 20px;line-height: 1.4;}
  .md-muted{font-size: 20px;}
  .small-muted{font-size: 14px;}
 .back-link{display:none;}
 .card-title{font-weight:700;}
 .card-title2{font-size: 15px; font-weight:400;}
}