@media (min-width: 768px) and (max-width: 1024px) {
  .site-wrap {
    padding: 0 40px;
  }
  .contest-section--prizes {
    padding: 42px 0 32px;
  }

  .contest-site-footer__inner {
    padding: 72px 40px;
  }

  .contest-site-footer__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 26px;
  }

  .contest-site-footer__col--address {
    grid-column: 1 / -1;
  }

  .contest-site-footer__title {
    font-size: 24px;
  }

  .contest-site-footer__text {
    font-size: 16px;
  }

  .contest-site-footer__logo--canon img {
    max-height: 60px;
  }

  .contest-site-footer__logo--travellive img {
    max-height: 60px;
  }

  .contest-site-footer__social {
    width: 24px;
    height: 24px;
  }

  .contest-site-footer__social svg {
    width: 24px;
    height: 24px;
  }

  .contest-site-footer__bottom-note {
    font-size: 18px;
  }

  .contest-section--news {
    padding-top: 30px;
  }

  .contest-section--news .contest-section__heading {
    font-size: 2.15rem;
  }

  .contest-news {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 16px;
  }

  .contest-news__thumb {
    height: 205px;
  }

  .contest-news__title {
    font-size: 1.42rem;
  }

  .contest-section--partners {
    padding-bottom: 28px;
  }

  .contest-partners {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .contest-partners__card {
    min-height: 70px;
  }

  .contest-judges__grid {
    gap: 0;
  }

  .contest-judges__photo-wrap {
    min-height: 290px;
  }

  .contest-judges__photo {
    max-height: 300px;
  }

  .contest-judges__card:nth-child(1) .contest-judges__photo {
    max-height: 256px;
  }

  .contest-judges__card:nth-child(2) .contest-judges__photo {
    max-height: 276px;
  }

  .contest-judges__card:nth-child(3) .contest-judges__photo {
    max-height: 292px;
  }

  .contest-judges__meta {
    padding-top: 14px;
    border-top-width: 3px;
  }

  .contest-judges__name {
    font-size: 24px;
    margin-bottom: 20px;
  }

  .contest-judges__role {
    font-size: 14px;
    max-width: 220px;
    line-height:1.5;
	font-size:300;
  }

  .contest-judges__heading {
	  font-size:30px
  }

  .contest-judges {
    background-position: center;
    background-repeat: no-repeat;
    background-size: 130%;
  }

  .contest-section--prizes .contest-section__heading {
    font-size: 30px;
  }

  .contest-section--prizes .contest-section__heading::after {
    width: 100px;
    height: 5px;
    margin-top: 10px;
  }

  .contest-prizes__strategic {
    margin-top: 26px;
    padding: 0 40px;
  }

  .contest-prizes__strategic-title {
    font-size: 30px;
  }

  .contest-prizes__strategic-title::after {
    width: 100px;
    height: 5px;
    margin-top: 10px;
  }

  .contest-prizes__strategic-note {
    margin-top: 16px;
    font-size: 14px;
  }

  .contest-prizes__strategic-grid {
    margin-top: 22px;
  }

  .contest-prizes__strategic-item {
    padding: 16px 12px;
  }

  .contest-prizes__strategic-badge {
    min-width: 104px;
    padding: 6px 10px;
    font-size: 20px;
    border-radius: 6px;
  }

  .contest-prizes__strategic-amount {
    margin: 10px 0 6px;
    font-size: 42px;
  }

  .contest-prizes__strategic-item-note {
    font-size: 14px;
    line-height: 1.35;
  }

  .contest-prizes__surface {
     max-width: 100%;
     margin-top: 60px;
     padding: 40px;
  }

  .contest-prizes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }

  .contest-prize,
  .contest-prize:nth-child(4),
  .contest-prize:nth-child(5) {
    grid-column: auto;
  }

  .contest-prize:nth-child(2) {
    transform: none;
    order: -1;
    grid-column: 1 / -1;
  }

  .contest-prize {
    padding: 24px;
  }

  .contest-prize--no-medal {
    padding-top: 24px;
  }

  .contest-prize__badge {
    min-height: 28px;
    font-size: 24px;
    line-height: 28px;
  }

  .contest-prize__medal {
    height: 200px;
  }

  .contest-prize__amount {
    font-size: 40px;
  }

  .contest-prize__content {
    font-size: 16px;
    line-height: 28px;
  }

  .contest-section--rules {
    padding: 40px 0 28px;
  }

  .contest-rules__list {
    margin-top: 16px;
    gap: 10px;
  }

  .contest-rules__summary {
    font-size: 18px;
    padding: 14px 48px 14px 24px;
  }

  .contest-rules__summary::after {
    right: 18px;
    width: 12px;
    height: 12px;
    border-right-width: 3px;
    border-bottom-width: 3px;
  }

  .contest-rules__panel {
    padding: 10px 0 20px;
    font-size: 14px;
  }

  .contest-rules__download {
    min-height: 40px;
    padding: 0 16px;
    font-size: 14px;
  }
   .contest-section--rules .contest-section__heading {
     font-size:30px;
	}

  .contest-section--intro {
    grid-template-columns: minmax(0, 1.08fr) minmax(380px, 0.92fr);
    align-items: start;
    gap: 40px;
  }

  .contest-intro__content {
    max-width: none;
  }

  .contest-intro__content .contest-section__heading {
    display: inline-block;
    margin: 0;
    font-size: 30px;
  }

  .contest-intro__content .contest-section__heading::after {
    width: 100px;
    height: 5px;
    margin-top: 10px;
  }

  .contest-intro__content .contest-section__note {
    margin-top: 20px;
    font-size: 14px;
    line-height: 20px;
  }

  .contest-intro__organizers-title {
    margin-bottom: 20px;
    font-size: 18px;
  }

  .contest-intro__organizer-card {
    width: 154px;
    height: 62px;
  }

  .contest-intro__visual {
    max-width: 454px;
    width: 100%;
    margin: 12px 0 0 auto;
    aspect-ratio: 612 / 511;
    height: auto;
  }

  .contest-intro__grid {
    grid-template-columns: 239px 208px;
    grid-template-rows: 182px 186px;
    gap: 12px;
  }

  .contest-intro__card--a {
    width: 239px;
    height: 182px;
  }

  .contest-intro__card--b {
    width: 208px;
    height: 186px;
    margin-left: 29px;
  }

  .contest-intro__card--c {
    height: 282px;
    margin-top: 71px;
  }

  .contest-intro__dot--top {
    width: 53px;
    height: 42px;
    top: 22px;
    left: 251px;
  }

  .contest-intro__dot--middle {
    width: 19px;
    height: 37px;
    top: 195px;
    left: -1px;
  }

  .contest-intro__play {
    width: 103px;
    height: 103px;
  }

  .contest-intro__play::before {
    inset: 9px;
  }

  .contest-intro__play-icon {
    margin-left: 7px;
    border-top-width: 15px;
    border-bottom-width: 15px;
    border-left-width: 25px;
  }

  /* .contest-section--timeline {
    padding: 52px 16px 64px;
  } */

  .contest-timeline {
    padding: 56px 0 84px;
  }

  .contest-timeline__inner {
    max-width: 640px;
    padding: 0 20px;
  }

  .contest-timeline__track {
    display: none;
  }

  .contest-timeline__cards {
    --timeline-card-width: 300px;
    --timeline-circle-size: 86px;
    --timeline-axis-gap: 102px;
    position: relative;
    grid-template-columns: 1fr;
    gap: 26px;
    margin-top: 28px;
    padding-right: 0;
  }

  .contest-timeline__cards::before {
    content: "";
    position: absolute;
    left: 440px;
    top: 100px;
    bottom: 100px;
    width: 10px;
    transform: translateX(-50%);
    background: #fff;
    border-radius: 999px;
  }

  .contest-timeline__card {
    max-width: var(--timeline-card-width);
    min-height: 242px;
    padding: 32px 22px 22px;
    border-radius: 10px;
    box-shadow: 0 9px 18px rgb(10 29 50 / 16%);
  }

  .contest-timeline__card::before {
    content: "";
    left: auto;
    right: -42px;
    top: 50%;
    width: 0;
    height: 0;
    transform: translateY(-50%);
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-left: 26px solid rgb(239 239 240 / 94%);
  }

  .contest-timeline__card::after {
    content: attr(data-step);
    position: absolute;
    left: auto;
    right: calc(
      -1 * (var(--timeline-axis-gap) + (var(--timeline-circle-size) / 2))
    );
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--timeline-circle-size);
    height: var(--timeline-circle-size);
    border-radius: 999px;
    border: 6px solid #d5d5d5;
    background: #f0f0f0;
    color: #8d8d8d;
    font-family: "Tungsten";
    font-size: 52px;
    box-shadow: 0 6px 10px rgb(11 31 53 / 12%);
  }

  .contest-timeline__card.is-active::after {
    background: var(--canon-red);
    border-color: #ffffff;
    color: #ffffff;
  }

  .contest-timeline__card.is-active::before {
    border-bottom-color: transparent;
    border-left-color:#fff;
  }


  .contest-timeline__heading {
    margin-bottom: 60px;
    font-size: 30px;
  }

  .contest-timeline__heading::after {
    width: 104px;
    height: 5px;
    margin-top: 10px;
  }

  .contest-timeline__card-title {
    text-align: left;
    font-size: 22px;
    line-height: 1.3;
    white-space: nowrap;
  }

  .contest-timeline__card-title-line {
    display: inline;
  }

  .contest-timeline__card-title-line + .contest-timeline__card-title-line {
    margin-top: 0;
    margin-left: 0.26em;
  }

  .contest-timeline__card-line {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.3;
  }

  .contest-timeline__card-line.is-label {
    margin-top: 16px;
  }

  .contest-timeline__card-line.is-label:not(:first-of-type) {
    border-top: 1px solid #d2d6dc;
    padding-top: 10px;
  }

  .contest-timeline__card-btn {
    position: static;
    left: auto;
    right: auto;
    bottom: auto;
    margin-top: 20px;
    min-height: 46px;
    align-self: stretch;
    padding: 0 18px;
    font-size: 18px;
  }
  
  .contest-hero__countdown-title {
     font-size:20px
   }

   .contest-hero__countdown-range {
     font-size:14px
   }

  .contest-hero__countdown {
    grid-template-columns: minmax(330px, 42%) minmax(0, 1fr);
    grid-template-areas:
      "meta clock"
      "cta clock";
    gap: 10px 20px;
    width: 876px;
    padding: 14px 18px;
	bottom: 70px;
  }

  .contest-hero__countdown-meta {
    grid-area: meta;
    border-right: 0;
    border-bottom: 0;
    padding-right: 0;
    padding-bottom: 0;
  }

  .contest-hero__countdown-clock {
    grid-area: clock;
    align-items: flex-start;
    justify-content: flex-end;
    gap: 8px;
  }

  .contest-hero__clock-item {
    min-width: 52px;
  }

  .contest-hero__clock-value {
    width: 58px;
    padding: 13px 0;
    font-size: 56px;
  }

  .contest-hero__clock-label {
    margin-top: 12px;
    font-size: 14px;
  }

  .contest-hero__clock-sep {
    height: 58px;
    padding: 13px 0;
    font-size: 30px;
  }

  .contest-hero__countdown-cta {
    grid-area: cta;
    justify-self: stretch;
    min-width: 0;
    min-height: 48px;
    width: 370px;
    margin-top: 2px;
    font-size: 18px;
  }

  .contest-hero__headline {
    top: clamp(126px, 16vw, 190px);
    width: min(92vw, 700px);
  }

  .contest-hero__headline-title {
    font-size: clamp(20px, 3.2vw, 34px);
  }

  .contest-hero__headline-badge-image {
    max-width: min(70vw, 360px);
    max-height: clamp(34px, 4.8vw, 64px);
  }

  .contest-hero__menu-inner {
    grid-template-columns: auto auto;
    grid-template-areas: "brand menu submit";
    gap: 8px 16px;
    min-height: 62px;
    padding: 0 30px;
  }

  .contest-hero__menu-brand {
    grid-area: brand;
  }

  .contest-hero__menu-list {
    grid-area: menu;
    justify-content: center;
    gap: 16px;
  }

  .contest-hero__menu-list a {
    font-size: 14px;
  }

  .contest-hero__menu-submit {
    grid-area: submit;
    justify-self: end;
    min-height: 26px;
    padding: 0 12px;
    font-size: 14px;
  }

  .contest-hero__menu-brand .custom-logo {
    max-height: 28px;
  }
}
