/*
   Fixed-size web application
   Uses rem units for proportional scaling during development
   Layout is intentionally non-responsive
*/

/*   **********    SETUP OF DOCUMENT     **********     */

html {
  font-size: 16px;
}

body {
  font-family: Roboto;
  background-color: #000;
}

/*   **********    MAIN ELEMENTS     **********     */


.wall {
  width: 100vw;
  height: 100vh;
  background: url("../../wall.jpg") center/cover no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* ********** TV FRAME ********** */

.tv-frame {
  background: #000;
  border-radius: 1.2rem;
  padding: 0.8rem;

  box-shadow: 0 20px 50px rgba(0,0,0,0.6);

  display: flex;
  justify-content: center;
  align-items: center;

  transform: scale(0.68);   /* 🔥 PERFECT FIT FOR YOUR SCREEN */
  transform-origin: center;
}

/* ********** MAIN GRID ********** */

main {
  width: 120rem;
  height: 67.5rem;

  display: grid;
  grid-template-columns: 42rem 78rem;
  grid-template-rows: 62.5rem 5rem;

  background: #000;
  overflow: hidden;
}


/*   **********    Container ELEMENTS     **********     */

.left-side {
  background-color: #BBB;
  display: grid;
  grid-template-rows: 12.5rem 12.5rem 37.5rem;
}

.right-side {
  background-color: #AAA;
  display: grid;
  grid-template-rows: 43.875rem 18.625rem;
}

.bottom {
  grid-column: 1 / -1;
  background-color: #ABABAB;
}

/*   **********    Content ELEMENTS     **********     */

main > div > div, .bottom {
  color: #000;
  font-size: 2.0rem;
}

/* LEFT */

.left-side-top {
position: relative;
background: #fff;
overflow: hidden;
}

.left-side-top::before {
content: "";
position: absolute;
left: 2rem;
top: 1rem;
width: 30rem;
height: 8rem;
background: url("../assets/logo.png") no-repeat left center;
background-size: contain;
}

#time-date {
position: absolute;
bottom: 0;
left: 0;
right: 0;

height: 5.2rem;
background: #6a1f3b;
color: #fff;

display: flex;
align-items: center;
padding-left: 2rem;

font-size: 1.7rem;
font-family: 'Lato', sans-serif;

z-index: 5;
}

.left-side-middle {
  height: 12.5rem;
  background-color: #909090;
}

.left-side-bottom {
  height: 37.5rem;
  background-color: #bdbdbd;
}

/* RIGHT */

.right-side-top {
  width: 100%;
  height: 43.875rem; /* match your layout row */
  overflow: hidden;
}

.right-side-bottom {
  height: 18.625rem;
  background-color: #fff;
  overflow: hidden;
  width: 78rem;
}

/* IFRAME */

#gsap-iframe {
  width: 100%;
  height: 100%;
}

/* ========================= */
/* 🔥 NEWS FINAL FIX */
/* ========================= */

#news-slider {
width: 100%;
height: 100%;
}

.news-slide {
display: flex;
align-items: center;
justify-content: space-between;

width: 100%;
height: 100%;

padding: 1rem;
box-sizing: border-box;
}

.news-slide > div {
width: 60%;
overflow: hidden;
}

.news-slide > img {
width: 35%;
height: auto;
object-fit: cover;
}
/* 🔥 MAKE NEWS FILL FULL AREA */

#news-slider {
width: 320%;
height: 100%;
}

/* stretch slick wrapper */
#news-slider .slick-list,
#news-slider .slick-track {
height: 100%;
}

/* make slide fill full box */
#news-slider .slick-slide {
height: 100%;
display: flex !important;
align-items: center;
}

/* 🔥 SCALE CONTENT PROPERLY */
.news-slide {
width: 100%;
height: 100%;

display: flex;
align-items: center;
justify-content: space-between;

padding: 3rem;   /* bigger spacing */
box-sizing: border-box;
}

/* TEXT AREA */
.news-slide > div {
width: 65%;
}

/* IMAGE AREA */
.news-slide > img {
width: 30%;
height: auto;
}
/* FORCE HIDE HEADINGS */
#news-slider h2,
#news-slider h1 {
display: none !important;
}

/* SLICK HEIGHT FIX */
#news-slider .slick-list,
#news-slider .slick-track,
#news-slider .slick-slide {
height: 100%;
}

/* DOTS */

.slick-dots {
  bottom: 1rem;
}

.slick-dots li button:before {
  color: green;
}

.slick-dots li.slick-active button:before {
  color: green;
}

/* ========================= */
/* 🔥 TICKER FINAL FIX */
/* ========================= */
/* 🔥 TICKER FINAL FIX */
/* ========================= */
#weather-container {
  height: 9.375rem; /* 150px */
  background: #0f6a44;
  display: flex;
  justify-content: center;
  overflow: hidden;
  width: 100%;
  }
  
  .weather-row {
  display: flex;
  justify-content: space-evenly;
  width: 100%;
  }
  
  .weather-card {
  background: #f4a621;
  width: 5.625rem; /* 90px */
  height: 7.5rem; /* 120px */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: 0.9375rem; /* 15px */
  }
  
  .weather-card .day {
  font-size: 0.875rem; /* 14px */
  font-weight: bold;
  }
  
  .weather-card .icon img {
  width: 3.3125rem; /* 53px */
  height: 3.0625rem; /* 49px */
  }
  
  .weather-card .temp {
  font-size: 0.8125rem; /* 13px */
  font-weight: bold;
  }
.weather-pane {
background: #0f6a44;
}
#ticker-tape-container {
position: relative;
display: flex;
align-items: center;
height: 100%;
overflow: hidden;

background: #f5a623;
border-radius: 0.5rem;
border: 0.2rem solid #fff;
}
#ticker-tape-container::before {
content: "DC EATS MENU";

position: absolute;   /* 🔥 KEY FIX */
left: 0;
top: 0;

height: 100%;
width: 20rem;         /* adjust if needed */

background: #6a1f3b;
color: #fff;

font-weight: bold;
font-size: 1.6rem;

display: flex;
align-items: center;
justify-content: center;

z-index: 5;           /* 🔥 ABOVE ticker */
}
#news-slider .news-slide > div > p {
display: none !important;
}
.marquee {
  position: absolute;
  left: 20rem;          /* EXACT width of label */
  top: 0;

  height: 100%;
  width: calc(100% - 20rem);  /* 🔥 KEY FIX */

  display: flex;
  align-items: center;

  white-space: nowrap;
  overflow: hidden;

  gap: 3rem;

  font-size: 12px;   /* slightly smaller */
  font-weight: 500;
  color: #000;
}
.marquee span {
  white-space: nowrap;
}

.meal {
font-weight: bold;
color: #006400;
}

.meals {
margin-right: 2rem;
}
#youtube-iframe {
  width: 100%;
  height: 100%;
  border: none;
  transform: scale(1.0);
  transform-origin: center;
}