@font-face {
  font-family: "Open Sans";
  src: url("/layout/assets/dist/fonts/opensans-italic-webfont._Yp8bP4X.eot");
  src: url("/layout/assets/dist/fonts/opensans-italic-webfont._Yp8bP4X.eot?#iefix") format("embedded-opentype"), url("/layout/assets/dist/fonts/opensans-italic-webfont.ot3qY23w.woff2") format("woff2"), url("/layout/assets/dist/fonts/opensans-italic-webfont.B-dMs0J5.woff") format("woff"), url("/layout/assets/dist/fonts/opensans-italic-webfont.BtmE0uhU.ttf") format("truetype"), url("/layout/assets/dist/img/opensans-italic-webfont.BZiZQ6Hl.svg#open_sansitalic") format("svg");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Open Sans";
  src: url("/layout/assets/dist/fonts/opensans-semibold-webfont.9i8RtbAy.eot");
  src: url("/layout/assets/dist/fonts/opensans-semibold-webfont.9i8RtbAy.eot?#iefix") format("embedded-opentype"), url("/layout/assets/dist/fonts/opensans-semibold-webfont.BmnjBuk_.woff2") format("woff2"), url("/layout/assets/dist/fonts/opensans-semibold-webfont.Dq3NM6rW.woff") format("woff"), url("/layout/assets/dist/fonts/opensans-semibold-webfont.j81dkhIk.ttf") format("truetype"), url("/layout/assets/dist/img/opensans-semibold-webfont.CCVRpqxK.svg#open_sanssemibold") format("svg");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Open Sans-fallback";
  size-adjust: 105.44%;
  src: local("Arial");
}
@font-face {
  font-family: "calendarr";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/layout/assets/dist/fonts/calendarr.CZqF53v6.eot?8eb8efdcd1c4032c5da6cfbe94aa10d7#iefix") format("embedded-opentype"), url("/layout/assets/dist/fonts/calendarr.Cqt6SDtv.woff2?8eb8efdcd1c4032c5da6cfbe94aa10d7") format("woff2"), url("/layout/assets/dist/fonts/calendarr.DzGjmmF1.woff?8eb8efdcd1c4032c5da6cfbe94aa10d7") format("woff"), url("/layout/assets/dist/fonts/calendarr.BPWa5Mev.ttf?8eb8efdcd1c4032c5da6cfbe94aa10d7") format("truetype"), url("/layout/assets/dist/img/calendarr.BOhx0FDZ.svg?8eb8efdcd1c4032c5da6cfbe94aa10d7#calendarr") format("svg");
}
.icon-print_new:before, .icon-reset:before, .icon-filter:before, .icon-correct-circle:before, .icon-chevron-down:before, .icon-group:before, .icon-sg-social-whatsapp:before, .icon-sg-social-twitter:before, .icon-sg-social-sms:before, .icon-sg-social-pinterest:before, .icon-sg-social-fbmessenger:before, .icon-sg-social-facebook:before, .icon-sg-social-email:before, .icon-clock:before, .day-counter--detail > .day-counter--btn i.countdown:before, .icon-mail:before, .newsletter .title span:before, .icon-chevron-right:before, .calendar-pagination a.pull-right .icon:before, .day-counter--input-custom .field-input--month i:before, .breadcrumb li:not(:last-of-type):before, .icon-chevron-left:before, .calendar-pagination a.pull-left .icon:before, .icon-list:before, .icon-calendar:before, .day-counter--detail > .day-counter--btn i.daycount:before, .icon-print:before, .icon-menu:before, .icon-magnifier:before, .icon-close:before, .icon-calendar-add:before, .vertical-menu-box--ics .icon:before, .icon-correct:before, [class^=icon-], [class*=" icon-"] {
  font: normal normal normal 14px/1 "calendarr";
  font-size: inherit;
  text-decoration: none;
  text-transform: none;
  line-height: inherit;
  display: block;
  vertical-align: middle;
  min-width: 1em;
  text-rendering: auto;
  user-select: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-correct:before {
  content: "\f101";
  display: block;
}

.icon-calendar-add:before, .vertical-menu-box--ics .icon:before {
  content: "\f102";
  display: block;
}

.icon-close:before {
  content: "\f103";
  display: block;
}

.icon-magnifier:before {
  content: "\f104";
  display: block;
}

.icon-menu:before {
  content: "\f105";
  display: block;
}

.icon-print:before {
  content: "\f106";
  display: block;
}

.icon-calendar:before, .day-counter--detail > .day-counter--btn i.daycount:before {
  content: "\f107";
  display: block;
}

.icon-list:before {
  content: "\f108";
  display: block;
}

.icon-chevron-left:before, .calendar-pagination a.pull-left .icon:before {
  content: "\f109";
  display: block;
}

.icon-chevron-right:before, .calendar-pagination a.pull-right .icon:before, .day-counter--input-custom .field-input--month i:before, .breadcrumb li:not(:last-of-type):before {
  content: "\f10a";
  display: block;
}

.icon-mail:before, .newsletter .title span:before {
  content: "\f10b";
  display: block;
}

.icon-clock:before, .day-counter--detail > .day-counter--btn i.countdown:before {
  content: "\f10c";
  display: block;
}

.icon-calendar:before, .day-counter--detail > .day-counter--btn i.daycount:before {
  content: "\f10d";
  display: block;
}

.icon-sg-social-email:before {
  content: "\f10e";
  display: block;
}

.icon-sg-social-facebook:before {
  content: "\f10f";
  display: block;
}

.icon-sg-social-fbmessenger:before {
  content: "\f110";
  display: block;
}

.icon-sg-social-pinterest:before {
  content: "\f111";
  display: block;
}

.icon-sg-social-sms:before {
  content: "\f112";
  display: block;
}

.icon-sg-social-twitter:before {
  content: "\f113";
  display: block;
}

.icon-sg-social-whatsapp:before {
  content: "\f114";
  display: block;
}

.icon-group:before {
  content: "\f115";
  display: block;
}

.icon-chevron-down:before {
  content: "\f116";
  display: block;
}

.icon-correct-circle:before {
  content: "\f117";
  display: block;
}

.icon-filter:before {
  content: "\f118";
  display: block;
}

.icon-reset:before {
  content: "\f119";
  display: block;
}

.icon-print_new:before {
  content: "\f11a";
  display: block;
}

.icon-clock:before, .day-counter--detail > .day-counter--btn i.countdown:before {
  content: "\f11b";
  display: block;
}

@font-face {
  font-family: "Droid Sans Mono";
  src: url("/layout/assets/dist/fonts/DroidSansMono-webfont.BCAU44bi.eot");
  src: url("/layout/assets/dist/fonts/DroidSansMono-webfont.BCAU44bi.eot?#iefix") format("embedded-opentype"), url("/layout/assets/dist/fonts/DroidSansMono-webfont.BPMoOnBd.woff2") format("woff2"), url("/layout/assets/dist/fonts/DroidSansMono-webfont.uYcBeu42.woff") format("woff"), url("/layout/assets/dist/fonts/DroidSansMono-webfont.JgnOhDhI.ttf") format("truetype"), url("/layout/assets/dist/img/DroidSansMono-webfont.Cq5UXrxQ.svg#droid_sans_monoregular") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* COLORS */
/* BANNERS  */
.visually-hidden {
  border: 0;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.clearfix, .art-share-2 {
  clear: left;
}

.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mt10 {
  margin-top: 10px;
}

.mt20 {
  margin-top: 20px;
  margin-bottom: 20px;
  overflow: hidden;
}

.mt25 {
  margin-top: 25px;
}

.mt30 {
  margin-top: 30px;
}

.mt40 {
  margin-top: 40px;
}

.ph-30 {
  padding-left: 30px;
  padding-right: 30px;
}

.align-center {
  text-align: center;
}

@media (max-width: 768px) {
  .hidden-xs {
    display: none;
  }
}

.visible-xs, .art-share-2 > li:last-child {
  display: none;
}
@media (max-width: 767px) {
  .visible-xs, .art-share-2 > li:last-child {
    display: block;
  }
}

h1, h2, h3, h4 {
  line-height: 1.3;
}

.btn-print {
  box-shadow: 0 0 2px 0 rgba(0, 0, 0, 0.12), 0 2px 2px 0 rgba(0, 0, 0, 0.24);
  transition: background-color linear 0.1s;
}
.btn-print:hover, .btn-print:focus {
  color: #ffffff;
  text-decoration: none;
  background-color: rgb(42.905027933, 64.3575418994, 85.094972067);
}

form .keyword:focus {
  border: 1px solid #3D75AC;
  border-right: none;
  background: #fff;
  box-shadow: none;
}

form.form-year:hover .form-year-container,
form.form-year .form-year-container:hover,
form.form-year .form-year-input:focus ~ .form-year-container {
  background: #fff;
  height: fit-content;
  border: 1px solid #3D75AC;
  box-shadow: none;
  padding-top: 33px;
  overflow: hidden;
}
form.form-year:hover .form-year-container .form-year-submenu,
form.form-year .form-year-container:hover .form-year-submenu,
form.form-year .form-year-input:focus ~ .form-year-container .form-year-submenu {
  display: block;
}
form.form-year:hover .form-year-container .form-year-submenu::before,
form.form-year .form-year-container:hover .form-year-submenu::before,
form.form-year .form-year-input:focus ~ .form-year-container .form-year-submenu::before {
  position: absolute;
  border-top: 1px solid #DDE5ED;
  content: "";
  top: 33px;
  left: 3px;
  right: 3px;
}
form.form-year .form-year-submit:hover {
  background-color: rgb(249.3289473684, 91.6736842105, 45.1710526316);
}
form.form-year .form-year-submenu li {
  list-style: none;
  line-height: 28px;
}
form.form-year .form-year-submenu li a {
  display: list-item;
  text-decoration: none;
  color: #333333;
  transition: ease-in-out 200ms;
}
form.form-year .form-year-submenu li a:hover {
  background-color: #DDE5ED;
}
form.form-year .form-year-submenu li a:hover .span-icon {
  color: #778BA0;
}
form.form-year .form-year-submenu li .span-icon {
  position: relative;
  display: inline-block;
  font-size: 0.625rem;
  color: #BCBCBC;
  margin-right: 5px;
  margin-left: 8px;
}
form.form-year .form-year-submenu li .current-year {
  background-color: #DDE5ED;
  font-weight: 700;
}
form.form-year .form-year-submenu li .current-year .span-icon {
  font-size: 0.75rem;
  color: #ACBFD2 !important;
}

input:focus,
textarea:focus {
  outline: 0;
  box-shadow: inset 0 0 2px #d5d6db;
}

/**
 *
 * index.php
 *
 */
.home-calendar-search a:hover {
  background: #d5d6db;
  color: #000;
}
.home-calendar-search .calendar-select select:hover {
  cursor: pointer;
}
.home-calendar-search .calendar-select:after {
  width: 18px;
  height: 25px;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAeCAYAAABE4bxTAAAABHNCSVQICAgIfAhkiAAAAKpJREFUWIXt1b0Nw0AIhmE+ZRUGcctUOU91rbMHu1wqS1YUJ/xcfgreDgmhp4Oo+kIi0kSkzbh1yR4QkQbgCmBhZqjq9jPQjtnnGagw6BEzCxUCnWFmoNygd5gsygWyYjIoM8iLyaCqqqqqfw7WxejrICIaY6y992bZNf8yVd2YGQCWT2FcoAjKi3GDPKgIJgSyoKKYMOgVKoNJgZ6hspg06IgiolsWU1m6AxljeBq6Dfy+AAAAAElFTkSuQmCC);
  margin-top: -8px;
  right: 8px;
}
.home-calendar-search .calendar-select:hover {
  border: none;
}
.home-calendar-search button {
  transition: all 0.15s linear;
}
.home-calendar-search button:hover {
  background: rgb(77.094972067, 115.6424581006, 152.905027933);
  border-bottom-color: #3c5a77;
}
.home-calendar-search button:focus {
  outline: 0;
}

/**
 *
 * yearCalendar.php
 *
 */
.holidays-search .holiday-month {
  font-family: "Droid Sans Mono", sans-serif;
}

.holiday-sidebar .vertical-menu h3 {
  margin-top: 0;
  height: 32px;
}

.yearCalendarSliderLink:focus, .yearCalendarSliderLink:active, .yearCalendarSliderLink:hover {
  color: #888;
  text-decoration: none;
}
.yearCalendarSliderLink.disabled {
  color: #e7e7e7;
}

.vertical-menu-box--ics a:hover, .vertical-menu-box--ics a:focus {
  background: rgb(81.3373493976, 118.2228915663, 154.1626506024);
}

.info .box-info .box-info-title a:hover {
  text-decoration: none;
}

.list-holidays a:hover, .list-holidays a:focus, .list-holidays a:active {
  text-decoration: none;
}
.list-holidays .list-holiday-box .label {
  margin-left: 5px;
}
.list-holidays .list-holiday-box .list-holiday-dayweek, .list-holidays .list-other-box .list-holiday-dayweek, .list-holidays .list-optional-box .list-holiday-dayweek {
  font-family: "Droid Sans Mono", sans-serif;
}

@media (max-width: 425px) {
  .holiday-content .h-image img {
    height: auto;
    margin: 0 -15px;
    width: calc(100% + 30px);
    max-width: initial;
    display: inline-block;
    border: 0;
    border-radius: 0;
    background: #f7f7f7;
  }
}
.holiday-content ul.list-holidays {
  padding-left: 0;
}

.loader {
  display: inline-block;
  width: var(--loader-size, 22px);
  height: var(--loader-size, 22px);
  border-radius: 50%;
  position: relative;
  animation: rotate var(--loader-rotation-time, 1s) linear infinite;
}
.loader::before {
  content: "";
  box-sizing: border-box;
  position: absolute;
  inset: 0px;
  border-radius: 50%;
  border: var(--loader-width, 3px) solid var(--loader-color, #fff);
  animation: prixClipFix var(--loader-animation-time, 2s) linear infinite;
}
@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}
@keyframes prixClipFix {
  0% {
    clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0);
  }
  25% {
    clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0);
  }
  50% {
    clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%);
  }
  75% {
    clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%);
  }
  100% {
    clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0);
  }
}

/* ads */
/*banners*/
.home-ad-holder {
  text-align: center;
}
@media (min-width: 480px) {
  .home-ad-holder {
    margin-top: 5em;
  }
}
@media (min-width: 769px) {
  .home-ad-holder {
    margin-top: 1em;
  }
}

.pub-mrecs {
  padding-top: 30px;
  overflow: hidden;
  padding-bottom: 30px;
  text-align: center;
}
.pub-mrecs > div {
  margin-left: auto;
  margin-right: auto;
}

.pub-mrec {
  width: 336px;
  min-height: 250px;
  margin: 30px auto;
}

.search-container .pub-mrec {
  margin-top: 0;
}

.pub-mrec-content-mobile {
  margin-top: -0.5em;
  min-width: 300px;
  min-height: 250px;
  text-align: center;
}
.pub-mrec-content-mobile > div {
  display: inline-block;
  margin: 0 -5px;
}

.pub-leaderboard {
  width: 728px;
  min-height: 90px;
  margin: 20px auto;
}

.pub-superleaderboard {
  width: 970px;
  min-height: 90px;
  margin: 20px auto;
}

.pub-halfpage {
  width: 300px;
  min-height: 250px;
  margin: 20px auto;
}
.pub-halfpage.no-margin {
  margin: 0;
}

.pub-footer {
  margin: 20px 0;
  min-width: 300px;
  min-height: 250px;
  text-align: center;
}
.pub-footer > div {
  display: inline-block;
  margin: 0 -5px;
}

@media (min-width: 769px) {
  .adslot_detail {
    width: 720px;
  }
  .pub-mrecs {
    text-align: left;
  }
  .pub-mrecs > div {
    margin-left: 0;
    margin-right: 0;
  }
  .pub-mrecs > div.pub-left {
    float: left !important;
  }
  .pub-mrecs > div.pub-right {
    float: right !important;
  }
  .pub-footer {
    margin-bottom: 0;
    margin-right: -80px;
  }
}
@media (max-width: 320px) {
  .pub-mrec-content-mobile, .pub-footer {
    margin-left: -5px;
    margin-right: -5px;
  }
  .pub-footer {
    max-width: 300px;
  }
  .pub-footer > div {
    width: 300px !important;
  }
}
.adslot_detail {
  display: none;
}

.ad-unit > div {
  background-color: #fafafa;
}
.ad-unit > div:before {
  content: "";
  font-size: 9px;
  color: #6c7882;
  text-align: center;
  display: block;
  height: 20px;
  line-height: 20px;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
}
.ad-unit--no-background > div {
  background-color: transparent;
}
.ad-unit[class*="--pt"] > div:before {
  content: "PUBLICIDADE";
}
.ad-unit[class*="--en"] > div:before {
  content: "ADVERTISEMENT";
}
.ad-unit[class*="--es"] > div:before {
  content: "PUBLICIDAD";
}

.ad-unit-sticky--footer {
  padding: 0;
}
.ad-unit-sticky--footer > div:before {
  content: "";
}

@media (min-width: 769px) {
  .flex-sticky-wrap .sidebar-sticky {
    position: sticky;
    display: inline-block;
    width: 100%;
    top: 0;
  }
}

.ad-unit-sticky {
  top: 0;
  position: sticky;
}

.articles h2.no-border {
  border: 0;
  padding: 0;
}
.articles h2.h2-big {
  font-size: 18px;
}

.art-share-2 {
  list-style: none;
  padding: 0;
  margin: 0 0 20px 0;
}
.art-share-2 > li {
  display: inline-block;
  vertical-align: top;
  margin: 0 5px;
}
.art-share-2 .total-shares {
  text-transform: uppercase;
  display: inline-block;
  text-align: center;
  padding: 0 5px 0 0;
  line-height: 1;
  min-width: 40px;
  height: 40px;
  position: relative;
}
.art-share-2 .numbers {
  display: block;
  font-weight: 300;
  color: #404040;
  padding: 0;
  height: 25px;
  font-family: Helvetica, Arial, sans-serif;
}
.art-share-2 .text-shares {
  font-size: 0.65em;
  font-weight: 700;
  color: #7F7F7F;
  display: block;
  font-family: Helvetica, Arial, sans-serif;
}
.art-share-2 a {
  color: #FFF;
  min-width: 40px;
  line-height: 40px;
  display: block;
  white-space: nowrap;
  text-decoration: none;
  text-align: center;
  border-radius: 3px;
}
.art-share-2 .fb {
  background: #3B5998;
  font-size: 1.1em;
}
.art-share-2 .fb:hover {
  background: rgb(47.5914691943, 71.790521327, 122.6085308057);
}
.art-share-2 .gplus {
  background: #DC4E41;
}
.art-share-2 .gplus:hover {
  background: rgb(206.2133333333, 52.096, 37.9866666667);
}
.art-share-2 .twitter {
  background: #55acee;
  font-size: 1.4em;
}
.art-share-2 .twitter:hover {
  background: rgb(47.9090909091, 153.8909090909, 234.2909090909);
}
.art-share-2 .pin {
  background: #E33538;
  font-size: 1.2em;
}
.art-share-2 .pin:hover {
  background: rgb(210.08, 29.12, 32.24);
}
.art-share-2 .whatsapp {
  background: #25D366;
  font-size: 1.2em;
}
.art-share-2 .whatsapp:hover {
  background: rgb(30.9129032258, 176.2870967742, 85.2193548387);
}

div.art-share-2 .sg-social > div {
  display: inline;
}
div.art-share-2 .sg-social > div button {
  height: 40px;
  width: 40px;
  border-radius: 3px;
  position: relative;
  font-size: 0;
}
div.art-share-2 .sg-social > div button span.icon-sg-social {
  font-size: 21px;
  text-indent: 0;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  line-height: 40px;
}
div.art-share-2 .sg-social > div button span.text-sg-social {
  display: none;
  visibility: hidden;
}
div.art-share-2 .sg-social > div:not(:last-child) {
  margin-right: 10px;
}
div.art-share-2 .sg-shares {
  float: left;
  height: 40px;
  line-height: 40px;
  border: 0;
  border-radius: 0;
  vertical-align: bottom;
  margin-right: 10px;
  font-family: Helvetica, arial, sans-serif;
  color: #5D5D5D;
  font-size: 25px !important;
  bottom: 3px;
}
div.art-share-2 .sg-shares:after {
  content: "SHARES";
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
  font-size: 0.42em;
  font-weight: 700;
  color: #7F7F7F;
  display: block;
  font-family: Helvetica, Arial, sans-serif;
  /* overwrite das propriedades anteriores */
  background: none;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  border: 0;
  width: auto;
  line-height: 1em;
  height: auto;
}

.content-img {
  position: relative;
}
.content-img img:hover + .sg-social, .content-img .sg-social:hover {
  opacity: 1;
  transform: translateX(-60px);
}
.content-img img {
  z-index: 1;
  position: relative;
}
@media (max-width: 425px) {
  .content-img .sg-social {
    display: none;
  }
}
.content-img .sg-social {
  position: absolute;
  display: block;
  zoom: 1;
  width: 60px;
  height: 100%;
  top: 0;
  left: 0;
  padding-top: 15px;
  transform: translateX(0);
  transition: all 0.2s ease !important;
  opacity: 0;
}
.content-img .sg-social > div button {
  display: inline-block;
  float: left;
  width: 60px;
  height: 60px;
  line-height: 60px;
  color: #FFF;
  text-align: center;
  text-decoration: none;
  border-radius: 0;
}
.content-img .sg-social > div button span.icon-sg-social {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  font-size: 2em;
}
.content-img .sg-social > div button span.text-sg-social {
  display: none;
  visibility: hidden;
}
.content-img .sg-social > div:not(:last-child) {
  margin-bottom: 0;
}

.article-footer .social-links {
  padding-top: 4px;
}
.article-footer {
  position: relative;
}

#art-relac,
.art-relac {
  margin: 30px 0 0;
}
#art-relac:not(.home),
.art-relac:not(.home) {
  border-top: 1px solid #EEE;
}
#art-relac h4,
.art-relac h4 {
  padding: 0;
}
#art-relac ul,
.art-relac ul {
  list-style: none;
  padding: 0;
  margin: 0 -10px;
}
#art-relac ul li,
.art-relac ul li {
  width: 33.3333%;
  padding: 0 10px 20px;
  display: inline-block;
  vertical-align: top;
}
#art-relac ul li a,
.art-relac ul li a {
  color: #404040;
  font-weight: 700;
  display: block;
}
#art-relac ul li a img,
.art-relac ul li a img {
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}
#art-relac ul li span,
.art-relac ul li span {
  display: block;
  padding-top: 0.3em;
}

#sidebar-relac ul {
  list-style: none;
  padding: 0;
  float: left;
}
#sidebar-relac ul li {
  display: block;
  float: left;
  margin: 10px 0;
}
#sidebar-relac ul li a {
  color: #404040;
  font-weight: 700;
  display: block;
  font-size: 90%;
}
#sidebar-relac ul li a img {
  float: left;
  width: 120px;
  height: auto;
  display: inline-block;
  margin-right: 10px;
}
#sidebar-relac ul li a span {
  display: inline;
}

.gooad.article {
  margin-top: 20px;
}

.related-card-1 {
  background-color: #f7f7f7;
  border-radius: 4px;
  overflow: hidden;
  padding-right: 10px;
  display: block;
}
.related-card-1:before, .related-card-1:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}
.related-card-1:after {
  clear: both;
}
.related-card-1 {
  *zoom: 1;
}
@media (min-width: 1024px) {
  .related-card-1:hover {
    text-decoration: none;
  }
  .related-card-1:hover .img-wrapper img {
    transform: scale(1.05) translate(-50%, -50%);
  }
  .related-card-1:hover .title {
    text-decoration: none;
    color: #266ab3;
  }
  .related-card-1:focus {
    text-decoration: none;
  }
}
.related-card-1 .img-wrapper {
  float: left;
  width: 105px;
  height: 105px;
  margin: 0;
  overflow: hidden;
  position: relative;
}
.related-card-1 .img-wrapper img {
  position: absolute;
  left: 50%;
  top: 50%;
  margin: 0;
  height: auto;
  width: auto;
  min-height: 100%;
  min-width: 100%;
  max-width: initial;
  max-height: 100%;
  transform: scale(1) translate(-50%, -50%);
  transform-origin: 0% 0%;
  transition: all 0.2s ease-in-out;
  border-radius: 0;
}
.related-card-1 .title {
  transition: all 0.1s ease-in-out;
  color: #3c5a77;
  text-decoration: underline;
  font-weight: bold;
  font-size: 18px;
  margin: 0;
  padding: 10px;
}
.related-card-1 .description {
  color: #333;
  font-size: 14px;
  margin-bottom: 10px;
}
.related-card-1.sidebar {
  display: table;
  width: 100%;
}
.related-card-1.sidebar .title {
  font-size: 14px;
  display: table-cell;
  width: 100%;
  vertical-align: middle;
}
.related-card-1.sidebar .img-wrapper {
  width: 80px;
  height: 100%;
  padding: 0;
  position: relative;
  overflow: hidden;
  display: block;
}
.related-card-1.sidebar .img-wrapper:before {
  display: block;
  content: "";
  width: 100%;
}
.related-card-1.sidebar .img-wrapper img {
  position: absolute;
  left: 0;
  right: 0;
  top: -100%;
  bottom: -100%;
  margin: auto 0;
  width: 100%;
  height: auto;
}
.related-card-1.sidebar .img-wrapper:before {
  padding-top: 100%;
}
.related-card-1.sidebar .img-wrapper img {
  transform: scale(1);
}
@media (min-width: 1024px) {
  .related-card-1.sidebar:hover img {
    transform: scale(1.05) translate(-2px, -2px);
  }
}

.articles {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
}
.articles h2 {
  width: 100%;
}
.articles.related-new-layout h2 {
  border-bottom: unset;
}

.related-card-2 {
  background-color: #f7f7f7;
  border-radius: 4px;
  overflow: hidden;
  margin-bottom: 10px;
  float: left;
  box-shadow: 0 4px 4px -4px rgba(0, 0, 0, 0.3);
  width: calc(50% - 7px);
}
.related-card-2:nth-child(even) {
  margin-right: 10px;
}
@media (min-width: 1024px) {
  .related-card-2 {
    width: calc(33.3333333333% - 7px);
    margin-right: 10px;
  }
  .related-card-2:nth-child(3n+1) {
    margin-right: 0;
  }
}
@media (min-width: 1024px) {
  .related-card-2:hover {
    text-decoration: none;
  }
  .related-card-2:hover .img-wrapper img {
    transform: scale(1.05);
  }
  .related-card-2:hover .title {
    text-decoration: none;
    color: #266ab3;
  }
  .related-card-2:focus {
    text-decoration: none;
  }
}
.related-new-layout .related-card-2 {
  border-radius: 8px;
  background-color: #FFF;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.07), 0px 4px 15px 0px rgba(0, 0, 0, 0.05);
}
.related-new-layout .related-card-2 .title {
  color: #3B5875;
}
.related-new-layout .related-card-2 .title:hover {
  color: rgb(41.9034090909, 62.5, 83.0965909091);
  text-decoration: underline;
}
.related-new-layout .related-card-2 .img-wrapper img {
  background-color: #EEE;
}
.related-card-2 .img-wrapper {
  margin-top: 0;
  position: relative;
  overflow: hidden;
  display: block;
}
.related-card-2 .img-wrapper:before {
  display: block;
  content: "";
  width: 100%;
}
.related-card-2 .img-wrapper img {
  position: absolute;
  left: 0;
  right: 0;
  top: -100%;
  bottom: -100%;
  margin: auto 0;
  width: 100%;
  height: auto;
}
.related-card-2 .img-wrapper:before {
  padding-top: 56.25%;
}
.related-card-2 .img-wrapper img {
  max-width: 100%;
  transition: all 0.2s ease-in-out;
}
.related-card-2 .title {
  transition: all 0.1s ease-in-out;
  color: #404040;
  font-weight: bold;
  font-size: 14px;
  padding: 10px 5px;
}
@media (min-width: 1024px) {
  .related-card-2 .title {
    font-size: 16px;
    padding: 10px;
  }
}
.related-card-2.sidebar {
  display: table;
  width: 100%;
}
.related-card-2.sidebar .title {
  font-size: 14px;
  display: table-cell;
  width: 100%;
  vertical-align: middle;
}
.related-card-2.sidebar .img-wrapper {
  width: 70px;
  height: 60px;
}
@media (max-width: 1024px) {
  .related-card-2--responsive {
    margin-right: 0 !important;
    display: table;
    width: 100%;
  }
  .related-card-2--responsive .title {
    font-size: 14px;
    display: table-cell;
    width: 100%;
    vertical-align: middle;
  }
  .related-card-2--responsive .img-wrapper {
    width: 70px;
    height: 60px;
  }
}

.author-article {
  position: relative;
  color: #757575;
  font-family: sans-serif;
  font-weight: normal;
  font-size: 0.75rem;
  margin: 10px 0 0;
  line-height: 1.4;
}
.author-article * {
  font-size: inherit;
  line-height: inherit;
}
.author-article time {
  width: auto;
}
.author-article--t__photo, .author-article--b__photo {
  position: relative;
  display: inline-block;
  float: left;
  border-radius: 100px;
  overflow: hidden;
  width: 36px;
  height: 36px;
}
.author-article--t__photo img, .author-article--b__photo img {
  width: 100%;
  height: 100%;
  margin: 0;
}
.author-article--t {
  margin: 20px 0 0;
  display: table;
}
.author-article--t__photo {
  display: table-cell;
  width: 36px;
  height: 36px;
  margin-right: 7px;
}
.author-article--t__photo + .author-article--t__info {
  min-height: 36px;
}
.author-article--t__info {
  display: table-cell;
  vertical-align: middle;
}
.author-article--t__info__reviewer, .author-article--t__info__name {
  display: inline;
}
.author-article--t__info__reviewer span, .author-article--t__info__name span {
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
}
.author-article--t__info__job-title {
  display: inline-block;
  width: 100%;
}
.author-article--t__info__date {
  font-size: inherit;
  display: inline-block;
  width: 100%;
}
.author-article--t__info__reviewer + .author-article--t__info__name {
  display: inline-block;
  width: 100%;
}
@media (min-width: 768px) {
  .author-article--t__info-recent .author-article--t__info__reviewer + .author-article--t__info__name {
    display: inline;
    width: auto;
  }
  .author-article--t__info-recent .author-article--t__info__reviewer + .author-article--t__info__name:before {
    content: " ? ";
  }
}
@media (min-width: 768px) {
  .author-article--t__info-recent .author-article--t__info__job-title {
    display: inline;
    width: auto;
  }
  .author-article--t__info-recent .author-article--t__info__job-title:before {
    content: " ? ";
  }
}
.author-article--b {
  border-top: 1px solid #EEE;
  padding: 0;
  margin: 20px 0 0;
  width: 100%;
}
.author-article--b__photo {
  top: 4px;
  margin-right: 10px;
}
.author-article--b__info {
  margin-top: 8px;
}
.author-article--b__info__reviewer {
  font-weight: normal;
}
.author-article--b__info__reviewer a {
  display: inline;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  text-decoration: none;
  word-break: break-word;
}
.author-article--b__bio p {
  margin: 0;
  padding: 0;
}
.author-article--b__bio p:first-child {
  display: inline;
}
.author-article--b__bio p:last-child {
  padding-bottom: 0;
}

.time-b--wrapper, .author-article--b__wrapper {
  padding-top: 7px;
}
.time-b--wrapper + .author-article--b__wrapper, .author-article--b__wrapper + .author-article--b__wrapper {
  border-top: 1px solid #EEE;
  margin-top: 10px;
}

.time-b--published, .time-b--updated {
  display: inline-block;
  width: 100%;
}
@media (min-width: 768px) {
  .time-b--published, .time-b--updated {
    padding-bottom: 0;
    width: auto;
  }
}
@media (min-width: 768px) {
  .time-b--updated + .time-b--published:before {
    content: " ? ";
  }
}

.author-page--wrapper {
  margin: 20px 0 30px;
}
@media (min-width: 1024px) {
  .author-page--wrapper {
    margin: 0 0 30px;
  }
}
.author-page--header {
  display: table;
  margin-bottom: 10px;
}
.author-page--header .author-photo {
  float: left;
  margin-right: 15px;
  overflow: hidden;
  padding: 0;
  border-radius: 100%;
  width: 80px;
  height: 80px;
  background: #EEE;
  text-align: center;
}
.author-page--header .author-photo img {
  width: 100%;
  height: auto;
}
@media (min-width: 1024px) {
  .author-page--header .author-photo {
    width: 120px;
    height: 120px;
  }
}
.author-page--header .author-info {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
}
.author-page--header .author-info h1 {
  padding: 0;
  margin: 0;
}
.author-page--header .author-name--job-title {
  padding: 0;
  margin: 0;
  font-size: 16px;
}
@media (min-width: 1024px) {
  .author-page--header .author-name--job-title {
    font-size: 20px;
  }
}
.author-page--bio {
  padding: 0;
  margin: 0;
  font-size: 16.5px;
  line-height: 1.6;
  max-width: 570px;
}
.author-page--bio p {
  line-height: 1.5;
  margin-bottom: 15px;
}
.author-list h2 {
  margin: 0;
  padding: 0;
}
.author-list ul {
  list-style: none;
  margin: 10px 0;
  padding: 0;
}
.author-list--recent {
  margin: 30px 0;
}
.author-list--recent h2 {
  border: 0;
  font-size: 16px;
  font-weight: bold;
  margin: 0;
  padding: 5px 15px;
  color: rgb(121.9, 121.9, 121.9);
  text-transform: uppercase;
}
.author-list--recent ul {
  background: #FAFAFA;
  border: 1px solid #f5f5f5;
  border-radius: 4px;
  padding: 15px;
  margin-top: 0;
}
.author-list--recent li {
  border-bottom: 1px solid #eee;
  font-size: 16px;
  line-height: 1.3;
}
.author-list--recent li a {
  padding: 10px 0;
  display: inline-block;
  width: 100%;
}
.author-list--recent li:first-child a {
  padding-top: 0;
}
.author-list--recent li:last-child a {
  padding-bottom: 0;
  border-bottom: none;
}
.author-list--popular h2 {
  font-size: 20px;
  padding-bottom: 5px;
}
.author-list--popular ul li {
  margin-bottom: 20px;
  border: 1px solid #EEE;
  border-radius: 3px;
}
.author-list--popular ul li a {
  display: table;
  color: #404040;
  width: 100%;
  background: #FAFAFA;
}
.author-list--popular ul li a:hover {
  background: rgb(242.35, 242.35, 242.35);
}
.author-list--popular ul li img {
  display: table-cell;
  max-width: 100px;
  height: auto;
}
@media (min-width: 1024px) {
  .author-list--popular ul li img {
    max-width: 160px;
  }
}
.author-list--popular ul li .list-title {
  display: table-cell;
  vertical-align: top;
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  width: 100%;
  font-size: 0.90625rem;
  padding: 7px;
  line-height: 1.3;
}
@media (min-width: 1024px) {
  .author-list--popular ul li .list-title {
    padding: 15px 10px;
    font-size: 16px;
  }
}

.widget-box--brand-blue .widget-box--title {
  background: #7A98B6;
  color: #FFFFFF;
  margin: 0;
  padding: 5px 5px 3px;
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
  border: 0;
}
.widget-box--brand-blue .widget-box--info {
  display: inline-block;
  background: #fff;
  border: 1px solid #7a98b6;
  padding: 7px 10px 10px;
  border-radius: 0;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

.breadcrumb li:not(:last-of-type):before {
  position: absolute;
  font-size: 7px;
  top: 50%;
  transform: translateY(-50%);
  left: auto;
  right: 0;
}

.social-links .icon {
  font-size: 18px;
  color: white;
  position: relative;
}
.social-links .social-plugins {
  display: inline-block;
  cursor: pointer;
  width: 40px;
  height: 25px;
  line-height: 25px;
  margin-right: 4px;
  margin-top: 0px;
  text-align: center;
}
.social-links .social-plugins:hover {
  text-decoration: none;
}
.social-links .social-plugins .description {
  display: none;
  margin-bottom: 0;
  margin-top: 0;
  font-size: 13px;
  letter-spacing: 0.5px;
}
.social-links .social-plugins:hover {
  transition: background-color 0.2s;
}
.social-links .social-plugins.fb {
  background: none;
  text-indent: inherit;
  position: relative;
  width: auto;
  font-size: 0;
}
.social-links .social-plugins.fb .fb__text {
  display: inline-block;
  float: left;
  background: #4B68BA;
  font-size: 13px;
  color: white;
  text-decoration: none;
  font-family: Helvetica;
  font-weight: 300;
  height: 25px;
  padding: 0 10px 0 5px;
}
.social-links .social-plugins.fb .fb__text .icon, .social-links .social-plugins.fb .fb__text .description {
  float: left;
}
.social-links .social-plugins.fb .fb__text .icon {
  margin-right: 5px;
  vertical-align: middle;
}
.social-links .social-plugins.fb .fb__text .description {
  display: inline-block;
}
.social-links .social-plugins.fb .fb__text:hover {
  background-color: rgb(61.0192771084, 86.665060241, 159.1807228916);
}
.social-links .social-plugins.fb .fb__counter {
  cursor: default;
  font-family: helvetica, arial;
  background: white;
  text-align: center;
  display: inline-block;
  border-top: 1px solid #DCDCDC;
  border-bottom: 1px solid #DCDCDC;
  border-right: 1px solid #DCDCDC;
  border-top-right-radius: 0px;
  border-bottom-right-radius: 0px;
  text-align: center;
  vertical-align: top;
  height: 100%;
  min-width: 30px;
  font-size: 13px;
  line-height: 25px;
  color: #666;
  font-weight: 400;
  padding-left: 5px;
  padding-right: 5px;
  float: left;
}
.social-links .social-plugins.gplus {
  background-color: #DC4E41;
}
.social-links .social-plugins.gplus:hover {
  background-color: rgb(197.6, 49.92, 36.4);
}

.moon-section #social {
  margin: 15px 0 0;
}

.clock-info a:hover {
  text-decoration: none;
}
.clock-detail {
  border-top: 1px solid #e7e7e7;
  font-size: 16px;
}
.clock-detail ul {
  margin: -5px 0 20px;
  padding-left: 30px;
}
.clock-detail ul li {
  margin: 0 0 10px;
}
.clock-detail--list .widget-box--title {
  padding: 5px 6px 3px;
}
.clock-detail--list .widget-box--info {
  margin: 0;
  padding: 0;
}
.clock-detail--list .widget-box--info li {
  list-style: none;
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 5px 10px 5px 5px;
}
.clock-detail--list .widget-box--info li:not(:last-child) {
  border-bottom: 1px solid rgb(187.854368932, 203, 218.145631068);
}
.clock-detail--list .widget-box--info li a {
  text-decoration: underline;
}
.clock-detail--list .widget-box--info li a:hover {
  text-decoration: none;
}
@media (min-width: 600px) {
  .clock-detail--list .widget-box--info li {
    width: 50%;
    float: left;
  }
  .clock-detail--list .widget-box--info li:nth-child(odd) {
    border-right: 1px solid rgb(187.854368932, 203, 218.145631068);
  }
}
.clock-detail--list .widget-box--info li span[data-timezone] {
  position: relative;
  float: right;
  text-align: center;
  display: inline-block;
}
.clock-detail--list .widget-box--info li span[data-timezone] > span {
  width: 8px;
  height: 8px;
  background-color: #3c5a77;
  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
.clock-detail--list .widget-box--info li span[data-timezone] .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.clock-detail--list .widget-box--info li span[data-timezone] .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
@-webkit-keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
  }
}
@keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
.clock-detail--list .widget-box--info li span[data-timezone] {
  min-width: 40px;
}
@media (min-width: 600px) {
  .clock-detail--list .widget-info--even li:nth-last-child(2) {
    border-bottom: 0;
  }
}

.day-counter--title {
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
}
.day-counter--title a:hover {
  text-decoration: none;
}
.day-counter--input-custom input:active, .day-counter--input-custom input:focus, .day-counter--input-custom select:active, .day-counter--input-custom select:focus {
  outline: none;
  border: 1px solid #7A98B6;
}
.day-counter--input-custom .field-input--month select {
  cursor: pointer;
}
.day-counter--input-custom .field-input--month i {
  opacity: 1;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  z-index: 10;
  color: rgb(187.854368932, 203, 218.145631068);
  right: 8px;
  text-align: center;
  pointer-events: none;
}
.day-counter--input-custom .invalid input, .day-counter--input-custom .invalid select {
  background: #fff0f0;
  border: 1px solid #ffbdbd;
  color: #bd0000;
}
.day-counter--input-custom .invalid input::placeholder, .day-counter--input-custom .invalid select::placeholder {
  color: #bd0000;
}
.day-counter--btn {
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
}
.day-counter--btn:hover, .day-counter--btn:focus {
  text-decoration: none;
  color: #FFFFFF;
  background: rgb(237.0921052632, 58.9526315789, 6.4078947368);
}
.day-counter--alert {
  text-align: center;
  padding: 10px;
  background: #fff0f0;
  border: 1px solid #ffbdbd;
  border-radius: 5px;
  color: #bd0000;
  margin: 20px 0 0 0;
}

.day-counter--detail > .day-counter--btn {
  margin: 10px 0;
  padding-left: 35px;
}
.day-counter--detail > .day-counter--btn i {
  opacity: 1;
  font-size: 18px;
  left: 12px;
  top: 5px;
}
.img-wrapper {
  position: relative;
  height: 0;
  padding-top: 66.0869565217%;
}
.img-wrapper img {
  opacity: 1;
  border-radius: 3px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  max-width: 100%;
  height: auto;
}

.countdown-wrapper > img {
  opacity: 1;
  position: absolute;
  top: 0;
  max-width: 100%;
  height: auto;
  border-radius: 3px;
  box-shadow: 0 1px 5px rgba(0, 0, 0, 0.2);
}
.countdown-wrapper--text {
  opacity: 1;
  display: inline-block;
  position: absolute;
  width: 100%;
  color: #FFFFFF;
  text-align: center;
  font-size: 1.25rem;
  left: 0;
  top: 50%;
  transform: translateY(-50%) scale(0.8);
}
.countdown-wrapper--text .value--text {
  color: #FFFFFF;
}
@media (min-width: 360px) {
  .countdown-wrapper--text {
    transform: translateY(-50%) scale(0.9);
  }
}
@media (min-width: 400px) {
  .countdown-wrapper--text {
    transform: translateY(-50%) scale(1);
  }
}
@media (min-width: 500px) {
  .countdown-wrapper--text {
    transform: translateY(-50%) scale(1.2);
  }
}
@media (min-width: 560px) {
  .countdown-wrapper--text {
    transform: translateY(-50%) scale(1.5);
  }
}
@media (min-width: 768px) {
  .countdown-wrapper--text {
    transform: translateY(-50%) scale(1.7);
  }
}

#contador {
  display: block;
  height: 75px;
  margin: 3px 0 0;
  text-shadow: none;
}
@media (max-width: 375px) {
  #contador {
    margin: 3px -20px 5px;
  }
}
#contador .value {
  display: inline-block;
  width: 75px;
  height: 75px;
  overflow: hidden;
  border-radius: 5px;
}
#contador .value:not(:first-of-type) {
  margin-left: 5px;
}
#contador .value--numeric {
  display: block;
  background: #FFFFFF;
  width: 100%;
  height: calc(75px - 25px);
  color: #404040;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.3;
}
#contador .value--text {
  display: block;
  background: #404040;
  width: 100%;
  height: 25px;
  font-size: 13px;
  line-height: 1.7;
}

.countdown-wrapper--text > span {
  display: block;
  line-height: 1.3;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}
.countdown-wrapper--text > span b {
  font-size: 2.5rem;
  line-height: 0.9;
}
.countdown-wrapper--text.default, .countdown-wrapper--text.fathers {
  color: #404040;
}
.countdown-wrapper--text.default span, .countdown-wrapper--text.fathers span {
  text-shadow: none;
}
.countdown-wrapper--text.easter-usa b {
  font-size: 2.125rem;
}
.countdown-wrapper--text.xmas-usa b {
  font-size: 1.875rem;
}
.countdown-wrapper--text.fathers-mex b, .countdown-wrapper--text.fathers-esp b, .countdown-wrapper--text.fathers-col b, .countdown-wrapper--text.fathers-arg b, .countdown-wrapper--text.fathers-ecu b, .countdown-wrapper--text.fathers-per b, .countdown-wrapper--text.fathers-chl b {
  font-size: 1.875rem;
}
.countdown-wrapper--text.fathers-usa b {
  line-height: 0.7;
  font-size: 2rem;
}
.countdown-wrapper--text.mothers, .countdown-wrapper--text.woman, .countdown-wrapper--text.valentine {
  color: #E7294C;
}
.countdown-wrapper--text.mothers-mex b, .countdown-wrapper--text.mothers-esp b, .countdown-wrapper--text.mothers-col b, .countdown-wrapper--text.mothers-arg b, .countdown-wrapper--text.mothers-ecu b, .countdown-wrapper--text.mothers-per b, .countdown-wrapper--text.mothers-chl b {
  font-size: 2rem;
}
.countdown-wrapper--text.woman-mex b, .countdown-wrapper--text.woman-esp b, .countdown-wrapper--text.woman-col b, .countdown-wrapper--text.woman-arg b, .countdown-wrapper--text.woman-ecu b, .countdown-wrapper--text.woman-per b, .countdown-wrapper--text.woman-chl b {
  font-size: 1.4375rem;
}
.countdown-wrapper--text.independence-day-ind b {
  font-size: 1.875rem;
}
.countdown-wrapper--text.valentine b {
  font-size: 27px;
}
.countdown-wrapper--text.valentine-usa b {
  font-size: 2rem;
}
.countdown-wrapper--text.abuelos {
  color: #AA512E;
}
.countdown-wrapper--text.abuelos span {
  text-shadow: none;
}
.countdown-wrapper--text.abuelos b {
  font-size: 32px;
  line-height: 1.1;
}
.countdown-wrapper--text.muertos {
  margin-top: -20px;
}
.countdown-wrapper--text.muertos span {
  font-size: 16px;
}
.countdown-wrapper--text.muertos b {
  font-size: 30px;
}
.countdown-wrapper--text.guadalupe {
  margin-top: -10px;
  color: #404040;
  font-size: 16px;
}
.countdown-wrapper--text.guadalupe span {
  text-shadow: none;
}
.countdown-wrapper--text.guadalupe b {
  font-size: 20px;
  line-height: 1.3;
}
.countdown-wrapper--text.independence {
  color: #1f56a8;
}
.countdown-wrapper--text.independence .value {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}
.countdown-wrapper--text.independence span {
  text-shadow: none;
}
.countdown-wrapper--text.independence b {
  font-size: 1.78125rem;
}
.countdown-wrapper--text.thanksgiving {
  margin-top: -25px;
  color: #843418;
}
.countdown-wrapper--text.thanksgiving span {
  text-shadow: none;
}
.countdown-wrapper--text.thanksgiving b {
  font-size: 1.875rem;
}
.countdown-wrapper--text.inverno {
  margin-top: -5px;
}
.countdown-wrapper--text.inverno b {
  line-height: 0.7;
}
.countdown-wrapper--text.invernoneve {
  color: #0066ae;
}
.countdown-wrapper--text.invernoneve span {
  text-shadow: none;
}
.countdown-wrapper--text.invernoneve b {
  line-height: 0.7;
}
.countdown-wrapper--text.verao {
  margin-top: 20px;
  color: #b92221;
}
.countdown-wrapper--text.verao span {
  text-shadow: none;
}
.countdown-wrapper--text.verao b {
  line-height: 0.7;
}
.countdown-wrapper--text.outono {
  margin-top: -30px;
}
.countdown-wrapper--text.ramadan {
  margin-top: -10px;
}
.countdown-wrapper--text.ramadan > span:last-child {
  max-width: 250px;
  display: block;
  margin: 0 auto;
}
.countdown-wrapper--text.ramadan b {
  font-size: 2.375rem;
}

#footer {
  background: rgb(42.905027933, 64.3575418994, 85.094972067);
  color: #fff;
  font-size: 0.8125rem;
  margin-top: 30px;
  padding: 0 0 15px;
}

.footer-list-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 0;
}
@media (min-width: 769px) {
  .footer-list-wrapper {
    padding: 30px 0 20px;
  }
}
.footer-list-wrapper:after {
  content: "";
  position: absolute;
  top: auto;
  bottom: 0;
  display: inline-block;
  height: 1px;
  background: rgba(255, 255, 255, 0.3);
  left: 15px;
  width: calc(100% - 30px);
}

.footer-list {
  list-style: none;
  margin: 0;
  font-size: 0.8125rem;
  line-height: 1.3;
  padding-left: 0;
}
.footer-list--title {
  font-weight: bold;
  -webkit-font-smoothing: antialiased;
  text-transform: uppercase;
  font-size: 0.875rem;
  margin-top: 30px;
  margin-bottom: 5px;
}
@media (min-width: 769px) {
  .footer-list--title {
    margin-top: 0;
  }
}
.footer-list--next-year {
  margin-top: 54px;
}
@media (min-width: 769px) {
  .footer-list--next-year {
    margin-top: 30px;
  }
}
.footer-list li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
@media (min-width: 769px) {
  .footer-list li {
    border: none;
  }
}
.footer-list--this-year li:last-child, .footer-list--next-year li:last-child, .footer-list--tools li:last-child, .footer-list--about li:last-child {
  border: none;
}
.footer-list a {
  display: inline-block;
  width: 100%;
  padding: 15px 0;
  color: #fff;
}
@media (min-width: 769px) {
  .footer-list a {
    padding: 10px 0;
  }
}
.footer-list a:hover {
  color: #fff;
  text-decoration: underline;
}

@media (min-width: 769px) {
  .footer-country-wrapper {
    float: right;
  }
}

.footer-country {
  position: relative;
  margin-top: 15px;
  text-align: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  padding-bottom: 20px;
}
@media (min-width: 769px) {
  .footer-country {
    margin-top: 12px;
    text-align: right;
    border: none;
    padding: 0;
  }
}
.footer-country--logo {
  position: relative;
  left: -10px;
  text-decoration: none;
  color: #3c5a77;
}
@media (min-width: 769px) {
  .footer-country--logo {
    left: 0;
  }
}
.footer-country--logo:hover {
  color: #3c5a77;
  text-decoration: none;
}
.footer-country--logo img {
  transform: scale(1.2);
}
@media (min-width: 769px) {
  .footer-country--logo img {
    transform: none;
  }
}
.footer-country .header-country {
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 3px;
  color: white;
  margin-left: 5px;
  top: 0;
  padding-right: 20px;
  padding-left: 5px;
  font-size: 0.8125rem;
}
@media (min-width: 769px) {
  .footer-country .header-country {
    font-size: 0.75rem;
  }
}
.footer-country .header-country__submenu > .trigger:checked + label.header-country {
  background: #3c5a77;
  border-radius: 3px;
}
.footer-country .header-country__submenu-list {
  top: auto;
  bottom: 50px;
  border-radius: 5px;
  text-align: left;
}
@media (max-width: 359px) {
  .footer-country .header-country__submenu-list {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
  }
}
@media (min-width: 769px) {
  .footer-country .header-country__submenu-list {
    bottom: 30px;
    left: auto;
    right: 0;
    width: max-content;
  }
}
.footer-country .header-country__submenu-list:before {
  left: auto;
  top: 100%;
  transform: rotate(-45deg);
  right: calc(50% - 50px);
}
@media (min-width: 769px) {
  .footer-country .header-country__submenu-list:before {
    right: 9px;
  }
}

.footer-country .header-country__submenu .trigger + label:before, .footer-country .header-country__submenu .trigger + label:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: auto;
  right: 9px;
  box-sizing: border-box;
  border-style: solid;
  border-width: 2px;
  transform: rotate(45deg);
  z-index: 1;
}
.footer-country .header-country__submenu .trigger + label:before {
  top: 9px;
  border-color: #fff transparent transparent #fff;
}
.footer-country .header-country__submenu .trigger + label:after {
  top: 13px;
  border-color: transparent #fff #fff transparent;
}

.footer-copy {
  color: #fff;
  font-size: 0.8125rem;
  text-align: center;
}
@media (min-width: 769px) {
  .footer-copy {
    text-align: left;
  }
}
.footer-copy strong {
  -webkit-font-smoothing: antialiased;
}
.footer-copy span {
  display: inline-block;
  margin-top: 5px;
}
.footer-copy .logo-7g {
  position: relative;
  display: inline-block;
  background: url("data:image/svg+xml,%3csvg%20width='42'%20height='11'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M11.363%206.797h1.769v3.156c-.418.309-.931.56-1.54.752a5.742%205.742%200%200%201-1.729.288c-.79%200-1.505-.179-2.144-.537A3.95%203.95%200%200%201%206.214%208.98c-.366-.626-.549-1.327-.549-2.104a3.949%203.949%200%200%201%202.122-3.552c.66-.354%201.397-.532%202.21-.532a5.01%205.01%200%200%201%201.747.323%204.528%204.528%200%200%201%201.478.865l-1.165%201.448a3.263%203.263%200%200%200-.98-.645%202.756%202.756%200%200%200-1.09-.237c-.419%200-.795.102-1.131.305-.336.204-.601.483-.795.837-.194.355-.291.75-.291%201.188%200%20.445.097.847.29%201.205.195.358.464.639.807.842.343.204.724.306%201.142.306.395%200%20.847-.128%201.354-.385V6.797zM0%200h6.894v1.434L3.428%208.882H1.331l3.34-7.207h-2.9l-.013%201.243H0V0zm41.62%207.224c.253.327.38.754.38%201.281%200%20.527-.138.977-.413%201.35-.276.372-.654.652-1.134.84a4.367%204.367%200%200%201-1.604.282%205.743%205.743%200%200%201-1.938-.344%205.389%205.389%200%200%201-1.486-.793c.319-.525.53-1.122.607-1.761l.002-.003c.394.354.862.644%201.402.87.54.225%201.018.338%201.436.338.305%200%20.545-.056.72-.17a.554.554%200%200%200%20.263-.496.59.59%200%200%200-.196-.452%201.44%201.44%200%200%200-.491-.288%2011.517%2011.517%200%200%200-.833-.254c-.536-.15-.98-.303-1.33-.457a2.355%202.355%200%200%201-.899-.7c-.25-.312-.374-.728-.374-1.247%200-.49.128-.919.385-1.287.257-.37.622-.653%201.095-.853.473-.2%201.023-.299%201.648-.299.566%200%201.125.081%201.676.243a5.489%205.489%200%200%201%201.453.649l-.771%201.648a6.844%206.844%200%200%200-1.335-.61c-.473-.157-.87-.236-1.19-.236-.254%200-.453.047-.598.14a.46.46%200%200%200-.218.413c0%20.173.063.318.19.434.127.117.283.211.47.283.185.071.461.163.826.276.544.158.993.316%201.346.474.354.158.658.401.911.729zM30.644%208.787c.29.301.659.452%201.106.452.44%200%20.795-.149%201.067-.446.272-.297.408-.698.408-1.202V2.939h2.044v4.652c0%20.685-.143%201.285-.43%201.8a2.925%202.925%200%200%201-1.23%201.191c-.532.279-1.155.418-1.87.418-.716%200-1.343-.14-1.883-.418a2.978%202.978%200%200%201-1.252-1.19c-.294-.516-.44-1.116-.44-1.801V2.939h2.044v4.652c0%20.496.145.895.436%201.196zm-7.68-.914h2.167L24.058%205.05l-1.095%202.823zm2.2-4.934l3.285%207.914h-2.178l-.537-1.4H22.35l-.548%201.4-1.255-1.989%202.518-5.925h2.1zM16%207.015h1.486c.417%200%20.739-.106.966-.316.227-.211.341-.516.341-.915%200-.384-.114-.679-.34-.886-.228-.207-.55-.31-.967-.31h-1.486v2.427zm2.659%203.838l-1.14-2.19h-1.52v2.19h-2.044V2.94h3.52c1.035%200%201.838.243%202.407.728.57.486.855%201.169.855%202.05%200%20.594-.12%201.108-.357%201.54-.239.433-.585.77-1.04%201.01l1.632%202.586h-2.313z'%20fill='%23fff'%20fill-rule='evenodd'/%3e%3c/svg%3e") no-repeat;
  height: 12px;
  width: 42px;
  text-indent: -9999em;
  margin-left: 2px;
  top: 3px;
}

.header-user {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

@media (max-width: 600px) {
  .header-user--inline {
    margin-left: 6px;
  }
}

#header.container970 {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 12px;
}
#header.container970 > .header-logo-container {
  flex: 1 1 auto;
  min-width: 0;
  width: auto !important;
  float: none;
}

.header-user--floating {
  position: relative;
  flex: 0 0 auto;
  margin-left: auto;
}

.form-search-holder {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
}
.form-search-holder > .form-search {
  flex: 1 1 0;
  min-width: 0;
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.form-search-holder > .form-year {
  flex: 0 0 auto;
  min-width: 160px;
}
.form-search-holder > .header-user {
  flex: 0 0 auto;
}
@media (max-width: 768px) {
  .form-search-holder {
    gap: 6px;
    padding: 0 10px;
    justify-content: flex-end;
    pointer-events: none;
  }
  .form-search-holder > .form-search {
    order: 0;
    position: static;
    top: auto;
    right: auto;
    flex: 0 0 auto;
    width: auto !important;
    margin: 0;
    padding: 0 !important;
    pointer-events: auto;
  }
  .form-search-holder > .form-search.active {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    margin: 0;
    z-index: 4;
  }
  .form-search-holder .sliding-menu {
    order: 1;
    margin: 0;
    pointer-events: auto;
  }
  .form-search-holder .sliding-menu .btn-menu {
    position: static;
    top: auto;
    right: auto;
    pointer-events: auto;
  }
  .form-search-holder > .header-user {
    order: 2;
    pointer-events: auto;
  }
}

.header-user__login-btn,
.header-user__avatar-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid #ece5d9;
  border-radius: 50%;
  background: #ffffff;
  cursor: pointer;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.12s ease;
  box-shadow: 0 1px 2px rgba(42, 38, 34, 0.05);
}
.header-user__login-btn:hover,
.header-user__avatar-btn:hover {
  border-color: #fa6f46;
  box-shadow: 0 2px 8px rgba(250, 111, 70, 0.18), 0 0 0 3px #fdece2;
  transform: translateY(-1px);
}
.header-user__login-btn:focus-visible,
.header-user__avatar-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(250, 111, 70, 0.28);
}
.header-user__login-btn:active,
.header-user__avatar-btn:active {
  transform: translateY(0);
}

.header-user__avatar {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.header-user__avatar--initials {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #fa6f46 0%, #d8542c 100%);
  color: #ffffff;
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
  letter-spacing: 0.02em;
}

.header-user__login-icon {
  width: 18px;
  height: 18px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e5750' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='8' r='4'/><path d='M4 21c0-4.418 3.582-8 8-8s8 3.582 8 8'/></svg>");
}

.header-user__dropdown {
  position: absolute;
  top: calc(36px + 10px);
  right: 0;
  min-width: 220px;
  margin: 0;
  padding: 6px;
  list-style: none;
  background: #ffffff;
  border: 1px solid #ece5d9;
  border-radius: 12px;
  box-shadow: 0 4px 10px -2px rgba(42, 38, 34, 0.12), 0 24px 48px -12px rgba(42, 38, 34, 0.22);
  animation: huDropIn 0.16s cubic-bezier(0.2, 0.8, 0.2, 1);
  transform-origin: top right;
}
.header-user__dropdown[hidden] {
  display: none;
}
.header-user__dropdown::before {
  content: "";
  position: absolute;
  top: -7px;
  right: 10px;
  width: 12px;
  height: 12px;
  background: #ffffff;
  border-top: 1px solid #ece5d9;
  border-left: 1px solid #ece5d9;
  transform: rotate(45deg);
}
.header-user__dropdown li {
  padding: 0;
  margin: 0;
}

@keyframes huDropIn {
  from {
    opacity: 0;
    transform: translateY(-6px) scale(0.96);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.header-user__dropdown-name {
  padding: 10px 14px 8px;
  color: #5e5750;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 280px;
}
.header-user__dropdown-name::before {
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  background: #fa6f46;
  margin-bottom: 6px;
  border-radius: 2px;
}

.header-user__link,
.header-user__logout {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 12px;
  text-align: left;
  color: #2a2622;
  font-family: inherit;
  font-size: 14px;
  font-weight: 500;
  background: none;
  border: 0;
  border-radius: 8px;
  cursor: pointer;
  text-decoration: none;
  transition: background-color 0.12s ease, color 0.12s ease;
}
.header-user__link:hover, .header-user__link:focus-visible,
.header-user__logout:hover,
.header-user__logout:focus-visible {
  background: #fdfaf4;
  outline: none;
}

.header-user__link::before {
  content: "";
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e5750' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='4' width='18' height='18' rx='2'/><line x1='16' y1='2' x2='16' y2='6'/><line x1='8' y1='2' x2='8' y2='6'/><line x1='3' y1='10' x2='21' y2='10'/></svg>");
}

.header-user__logout {
  color: #5e5750;
  border-top: 1px solid #ece5d9;
  border-radius: 0 0 8px 8px;
  margin-top: 4px;
  padding-top: 12px;
  padding-bottom: 12px;
}
.header-user__logout::before {
  content: "";
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e5750' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/><polyline points='16 17 21 12 16 7'/><line x1='21' y1='12' x2='9' y2='12'/></svg>");
}
.header-user__logout:hover {
  color: #d8542c;
  background: #fdece2;
}
.header-user__logout:hover::before {
  filter: hue-rotate(-10deg) brightness(0.8);
}

.user-login-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
}
.user-login-modal[hidden] {
  display: none;
}

.user-login-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(42, 38, 34, 0.52);
  backdrop-filter: blur(3px);
  animation: ulmFade 0.2s ease-out;
}

.user-login-modal__panel {
  position: relative;
  max-width: 420px;
  margin: 80px auto 40px;
  padding: 40px 32px 28px;
  background: #fdfaf4;
  border-radius: 18px;
  box-shadow: 0 10px 24px -6px rgba(42, 38, 34, 0.14), 0 32px 64px -16px rgba(42, 38, 34, 0.24);
  text-align: center;
  animation: ulmIn 0.24s cubic-bezier(0.2, 0.8, 0.2, 1);
  overflow: hidden;
}
.user-login-modal__panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 6px;
  background: linear-gradient(90deg, #fa6f46 0%, #d8542c 100%);
}
@media (max-width: 520px) {
  .user-login-modal__panel {
    margin: auto 0 0;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: none;
    border-radius: 20px 20px 0 0;
    padding: 40px 24px 32px;
  }
  .user-login-modal__panel::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    width: 44px;
    height: 4px;
    border-radius: 2px;
    background: #ece5d9;
  }
}

@keyframes ulmFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes ulmIn {
  from {
    opacity: 0;
    transform: translateY(20px) scale(0.97);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.user-login-modal__close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  line-height: 1;
  color: #5e5750;
  background: none;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  transition: background-color 0.14s ease, color 0.14s ease;
}
.user-login-modal__close:hover {
  background: #f4efe7;
  color: #2a2622;
}
.user-login-modal__close:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(250, 111, 70, 0.28);
}

.user-login-modal__brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin: 0 auto 18px;
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 1px 2px rgba(42, 38, 34, 0.06), 0 6px 16px -6px rgba(42, 38, 34, 0.12);
}

.user-login-modal__brand-mark {
  width: 32px;
  height: 32px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fa6f46' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='5' width='18' height='16' rx='2'/><line x1='16' y1='3' x2='16' y2='7'/><line x1='8' y1='3' x2='8' y2='7'/><line x1='3' y1='11' x2='21' y2='11'/><circle cx='12' cy='16' r='1.5' fill='%23fa6f46' stroke='none'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

.user-login-modal__title {
  margin: 0 0 8px;
  font-family: inherit;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #2a2622;
  line-height: 1.2;
}

.user-login-modal__subtitle {
  margin: 0 auto 28px;
  max-width: 320px;
  color: #5e5750;
  font-size: 14px;
  line-height: 1.5;
}

.user-login-modal__actions {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}

.user-login-modal__gbtn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 44px;
}
.user-login-modal__gbtn iframe {
  margin: 0 !important;
}

.user-login-modal__gbtn-fallback[hidden] {
  display: none;
}

.user-login-modal__fallback-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 22px 10px 18px;
  background: #ffffff;
  border: 1px solid #ece5d9;
  border-radius: 999px;
  font-family: inherit;
  font-weight: 600;
  font-size: 14px;
  color: #2a2622;
  cursor: pointer;
  transition: border-color 0.14s ease, box-shadow 0.14s ease, transform 0.12s ease;
  box-shadow: 0 1px 2px rgba(42, 38, 34, 0.05);
}
.user-login-modal__fallback-btn:hover {
  border-color: #8b8377;
  box-shadow: 0 2px 6px rgba(42, 38, 34, 0.08);
}
.user-login-modal__fallback-btn:active {
  transform: translateY(1px);
}

.user-login-modal__fallback-glogo {
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'><path fill='%234285F4' d='M45.12 24.5c0-1.56-.14-3.06-.4-4.5H24v8.51h11.84c-.51 2.75-2.06 5.08-4.39 6.64v5.52h7.11c4.16-3.83 6.56-9.47 6.56-16.17z'/><path fill='%2334A853' d='M24 46c5.94 0 10.92-1.97 14.56-5.33l-7.11-5.52c-1.97 1.32-4.49 2.1-7.45 2.1-5.73 0-10.58-3.87-12.31-9.07H4.34v5.7C7.96 41.07 15.4 46 24 46z'/><path fill='%23FBBC04' d='M11.69 28.18c-.44-1.32-.69-2.72-.69-4.18s.25-2.86.69-4.18v-5.7H4.34C2.85 17.1 2 20.45 2 24s.85 6.9 2.34 9.88l7.35-5.7z'/><path fill='%23EA4335' d='M24 10.75c3.23 0 6.13 1.11 8.41 3.29l6.31-6.31C34.91 4.18 29.93 2 24 2 15.4 2 7.96 6.93 4.34 14.12l7.35 5.7C13.42 14.62 18.27 10.75 24 10.75z'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  flex-shrink: 0;
}

.user-login-modal__note {
  margin: 0;
  color: #8b8377;
  font-size: 12px;
  line-height: 1.5;
}
.user-login-modal__note a {
  color: #5e5750;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.user-login-modal__note a:hover {
  color: #d8542c;
}

/* NEWSLETTER */
.newsletter {
  background: #D6DDE5;
  color: #3c5a77;
  border-radius: 3px;
  margin-bottom: 30px;
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.08);
  padding: 20px 5px 0;
}
.newsletter .title {
  margin: 0;
  font-size: 1.2em;
  font-weight: 700;
  margin-bottom: 10px;
}
.newsletter .title span {
  border-radius: 50px;
  margin-bottom: 10px;
  text-align: center;
  margin-right: 10px;
  display: block;
}
.newsletter .txt, .newsletter .btn {
  display: table-cell;
  width: 100%;
}
.newsletter .txt input, .newsletter .btn input {
  line-height: 35px;
  padding: 0 10px;
  box-shadow: inset 0 0 2px 0 rgba(0, 0, 0, 0.3);
  border: 1px solid #c0cfde;
  border-radius: 3px;
  height: 40px;
}
.newsletter .txt {
  margin-bottom: 5px;
  padding: 10px;
  text-align: left;
}
.newsletter .txt.success {
  border-color: #29ad3f;
}
.newsletter .txt.error {
  border-color: #D23535;
}
.newsletter .btn {
  white-space: nowrap;
  color: #FFF;
  background: #fa6f46;
  border-radius: 0 3px 3px 0;
}
.newsletter .btn:hover {
  background: rgb(249.3289473684, 91.6736842105, 45.1710526316);
}
.newsletter .btn.loading {
  background: url(/layout/assets/dist/img/loading.Bkm8zaqY.gif) 235px 4px no-repeat;
  box-shadow: 0 0 0 #999;
}
.newsletter .btn.disabled {
  background: #dcdcdc;
  box-shadow: 0 0 0 #999;
  cursor: not-allowed;
}
.newsletter .msg {
  font-size: 13px;
  border-radius: 2px;
  color: #FFF;
}
.newsletter .msg.error, .newsletter .msg.success {
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 10px;
  margin-top: 0px;
}
.newsletter .msg.error {
  color: #D23535;
}
.newsletter .msg.success {
  padding: 10px 7px;
  background: #e3ede5;
  color: gray;
  border: 1px solid #c9e3cb;
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.1);
}
.newsletter .msg.success .detail {
  font-weight: 300;
  border-top: 1px solid #bfdec2;
  margin-top: 5px;
}
.newsletter .gdpr-consent {
  font-size: 13px;
  color: #7f7f7f;
  display: block;
  margin: 2px 0 15px;
}
.newsletter .gdpr-consent input#newsletter-gdpr-consent {
  float: left;
  height: auto;
  margin: 3px 0 0 2px;
}
.newsletter .gdpr-consent label {
  display: inline-block;
  color: #3c5a77;
  margin: 0 0 0 5px;
  font-size: 12px;
  width: 90%;
}
.newsletter #newsletter-btn {
  border: 0;
  border-radius: 3px;
  box-shadow: 0 3px 0 0 #d73204;
}
.newsletter .news-info-wrapper {
  color: #7f7f7f;
  padding: 10px 0;
  font-size: 12px;
  border-top: 1px solid #b2b2b2;
  margin-top: 20px;
}
.newsletter .news-info-wrapper p {
  margin: 0;
  padding: 0;
}
.newsletter.newsletter-unsubscribe {
  text-align: left;
  padding: 20px 10px;
}
.newsletter.newsletter-unsubscribe .form input {
  height: 40px;
  border: 0;
}

.news-confirm {
  color: #5a5a5a;
  background-color: #ececec;
  position: relative;
  margin-bottom: 1rem;
  border: 0;
  border-radius: 0.25rem;
  padding: 20px 10px;
  margin-top: 15px;
  font-size: 17px;
}
.news-confirm p {
  padding: 0;
  margin: 0;
}
.news-confirm p strong {
  margin-bottom: 10px;
  display: block;
}

/*PAGINATION*/
.pagination {
  display: inline-block;
  margin-top: 30px;
}

.pagination a, .pagination span {
  margin: 0 3px;
  font-size: 16px;
  text-decoration: none;
  font-weight: bold;
  border-radius: 2px;
  text-align: center;
  color: #FFF;
  float: left;
  width: 40px;
  height: 40px;
  line-height: 40px;
  margin-bottom: 10px;
}

.pagination a {
  background-color: #3c5a77;
}

.pagination a:hover, .pagination span {
  background-color: #6788AB;
}

.calendar-pagination {
  margin-top: 10px;
}
@media (min-width: 769px) {
  .calendar-pagination {
    margin-top: 30px;
  }
}
.calendar-pagination hr {
  margin-top: 0;
  margin-bottom: 10px;
}
.calendar-pagination a {
  display: flex;
  align-items: center;
  margin-top: 10px;
  padding: 10px;
  font-size: 12px;
  text-transform: uppercase;
  text-decoration: none;
  color: #FFF;
  background-color: #fa6f46;
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
  transition: all linear 0.2s;
  max-width: 315px;
  position: relative;
}
@media (min-width: 769px) {
  .calendar-pagination a {
    min-width: 150px;
    width: auto;
  }
  .calendar-pagination a .pull-right {
    padding-right: 30px;
  }
  .calendar-pagination a .pull-left {
    padding-left: 30px;
  }
}
.calendar-pagination a:hover, .calendar-pagination a:focus {
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.3);
  background-color: rgb(249.3289473684, 91.6736842105, 45.1710526316);
}
.calendar-pagination a .icon {
  font-size: 18px;
  color: rgb(252.0131578947, 168.9789473684, 144.4868421053);
  vertical-align: middle;
  display: inline-block;
}
.calendar-pagination a.pull-left .icon {
  margin-right: 3px;
}
.calendar-pagination a.pull-right {
  text-align: right;
}
.calendar-pagination a.pull-right .icon {
  margin-left: 10px;
}

/* The container */
.radio-label:hover {
  text-decoration: underline;
}

/* Hide the browser's default radio button */
.radio-label input {
  cursor: pointer;
}

/* Create a custom radio button */
.checkmark {
  opacity: 1;
  position: absolute;
  top: 2px;
  left: 0;
  height: 16px;
  width: 16px;
  background-color: #FAFAFA;
  border-radius: 50%;
  border: 1px solid rgb(89.6553398058, 126.5, 163.3446601942);
}

/* On mouse-over, add a grey background color */
.radio-label:hover input ~ .checkmark {
  background-color: #EEE;
}

/* When the radio button is checked, add a blue background */
.radio-label input:checked ~ .checkmark {
  background-color: rgb(89.6553398058, 126.5, 163.3446601942);
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.radio-label input:checked ~ .checkmark:after {
  display: block;
}

/* Style the indicator (dot/circle) */
.radio-label .checkmark:after {
  top: 3px;
  left: 3px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #FFFFFF;
}

/* Custom arrow sits on top of the select - could be an image, SVG, icon font, etc. or the arrow could just baked into the bg image on the select. Note this si a 2x image so it will look bad in browsers that don't support background-size. In production, you'd handle this resolution switch via media query but this is a demo. */
.custom-select::after {
  content: "";
  position: absolute;
  width: 9px;
  height: 8px;
  top: 50%;
  right: 1em;
  margin-top: -4px;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAAPCAYAAADphp8SAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAMJJREFUeNpinDRlugMDAwMIUwRYgPgBEOcDsQAlBjHl5WSCDJpIoYM2MMJYQC/eB1IKZBjyAYgNmZAEEsl0zUSQrxiRRYCuWg+kAkgw5ALQEENwGKFJJEKdSiwohAc2sijQdJAhjUQasgCo/gBWg6CGTQA5mYgALkSJfhwKCQV8I9T1+A0CKgK5aAIOQw5AXc1AjIsYoGH1AV8AE2UQ1OnomiZAXctAiotAhi0AeQXKfYAvRpmIiGZYwBeiBzAyAAgwAO6ENKpThEdEAAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-size: 100%;
  z-index: 1;
  /* This hack make the select behind the arrow clickable in some browsers */
  pointer-events: none;
}

/* Hover style */
.custom-select:hover {
  border: 1px solid #888;
}

/* Focus style */
.custom-select select:focus {
  outline: none;
  box-shadow: 0 0 1px 3px rgb(180, 222, 250);
  background-color: transparent;
  color: #222;
  border: 1px solid #aaa;
}

/* Set options to normal weight */
.custom-select option {
  font-weight: normal;
}

/* ------------------------------------  */
/* START OF UGLY BROWSER-SPECIFIC HACKS */
/* ----------------------------------  */
/* OPERA - Pre-Blink nix the custom arrow, go with a native select button to keep it simple. Targeted via this hack http://browserhacks.com/#hack-a3f166304aafed524566bc6814e1d5c7 */
x:-o-prefocus, .custom-select::after {
  display: none;
}

/* IE 10/11+ - This hides native dropdown button arrow so it will have the custom appearance, IE 9 and earlier get a native select - targeting media query hack via http://browserhacks.com/#hack-28f493d247a12ab654f6c3637f6978d5 - looking for better ways to achieve this targeting */
/* The second rule removes the odd blue bg color behind the text in the select button in IE 10/11 and sets the text color to match the focus style's - fix via http://stackoverflow.com/questions/17553300/change-ie-background-color-on-unopened-focused-select-box */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .custom-select select::-ms-expand {
    display: none;
  }
  .custom-select select:focus::-ms-value {
    background: transparent;
    color: #222;
  }
}
/* FIREFOX won't let us hide the native select arrow, so we have to make it wider than needed and clip it via overflow on the parent container. The percentage width is a fallback since FF 4+ supports calc() so we can just add a fixed amount of extra width to push the native arrow out of view. We're applying this hack across all FF versions because all the previous hacks were too fragile and complex. You might want to consider not using this hack and using the native select arrow in FF. Note this makes the menus wider than the select button because they display at the specified width and aren't clipped. Targeting hack via http://browserhacks.com/#hack-758bff81c5c32351b02e10480b5ed48e */
/* Show only the native arrow */
@-moz-document url-prefix() {
  .custom-select {
    overflow: hidden;
  }
  .custom-select select {
    width: 120%;
    width: -moz-calc(100% + 3em);
    width: calc(100% + 3em);
  }
}
/* Firefox focus has odd artifacts around the text, this kills that. See https://developer.mozilla.org/en-US/docs/Web/CSS/:-moz-focusring */
.custom-select select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}

/* ------------------------------------  */
/*  END OF UGLY BROWSER-SPECIFIC HACKS  */
/* ------------------------------------  */
.article-footer .social-links .sg-social > div:not(:last-child) {
  margin-right: 0;
}
.article-footer .social-links .sg-social > div:not(:first-child) {
  margin-left: 5px;
}
.article-footer .social-links button {
  line-height: initial;
  border-radius: 40px;
}
@media (min-width: 768px) {
  .article-footer .social-links {
    position: absolute;
    top: -2px;
    right: 0;
  }
  .article-footer .social-links button {
    height: auto;
    padding-left: 25px;
  }
  .article-footer .social-links .icon-sg-social {
    top: 5px;
    left: 7px;
  }
  .article-footer .social-links .icon-sg-social-twitter {
    font-size: 13px;
    top: 6px;
  }
}

.social-links--round .sg-social > div {
  margin-right: 5px;
}
.social-links--round .sg-social > div button.sg-icon-only {
  border-radius: 36px;
  height: 36px;
}
@media (min-width: 768px) {
  .social-links--round .sg-social > div button.sg-icon-only {
    height: 29px;
  }
  .social-links--round .sg-social > div button.sg-icon-only span {
    line-height: 14px;
  }
}
.social-links--round .sg-social > div button.sg-icon-only span {
  top: 50%;
  transform: translateY(-50%);
  line-height: 16px;
}

.holiday-content .table-responsive,
.article-body .table-responsive {
  margin: 1em 0;
  position: relative;
  overflow: hidden;
  margin-left: -15px;
  margin-right: -15px;
}
.holiday-content .table-responsive .table-shadow,
.article-body .table-responsive .table-shadow {
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  z-index: 2;
  background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.25) 100%);
  width: 15px;
}
.holiday-content .table-responsive .table-wrapper,
.article-body .table-responsive .table-wrapper {
  overflow-x: auto;
  overflow-y: hidden;
  min-height: 0.01%;
}
.holiday-content .table-responsive .table-wrapper table,
.article-body .table-responsive .table-wrapper table {
  margin: 0;
}
.holiday-content .table-normal,
.article-body .table-normal {
  width: calc(100% + 14px);
  margin: 0 -7px;
}
.holiday-content table,
.article-body table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  margin: 0;
  border: 0;
  text-align: left;
  line-height: 1.3;
  font-size: 14px;
}
@media (min-width: 1024px) {
  .holiday-content table,
  .article-body table {
    word-wrap: break-word;
    table-layout: fixed;
  }
}
.holiday-content table thead,
.article-body table thead {
  margin: 0;
  padding: 0;
}
.holiday-content table thead tr th,
.article-body table thead tr th {
  background-color: rgb(229.25, 229.25, 229.25);
  font-weight: bold;
  text-align: left;
}
.holiday-content table tbody tr,
.article-body table tbody tr {
  color: #404040;
  background-color: rgb(250.75, 250.75, 250.75);
}
.holiday-content table tbody tr:nth-child(even),
.article-body table tbody tr:nth-child(even) {
  background-color: rgb(243.1, 243.1, 243.1);
}
.holiday-content table * > tr > th, .holiday-content table * > tr > td,
.article-body table * > tr > th,
.article-body table * > tr > td {
  padding: 5px 5px 5px 9px;
  border: 1px solid rgb(216.5, 216.5, 216.5);
  word-wrap: inherit;
  line-height: 1.4;
}

.vertical-menu-box--ics {
  position: relative;
}
.vertical-menu-box--ics a {
  position: relative;
  padding-left: 52px;
  transition: background 0.2s;
}
.vertical-menu-box--ics a:hover {
  background: #3c5a77;
}
.vertical-menu-box--ics .icon {
  position: absolute;
  display: inline-block;
  top: 0;
  left: 0;
  background: #3c5a77;
  width: 42px;
  height: 100%;
  border-radius: 4px 0 0 4px;
  text-align: center;
  font-size: 1.5625rem;
}
.vertical-menu-box--ics .icon:before {
  display: inline-block;
  top: 45%;
  transform: translateY(-50%);
  position: relative;
}
.vertical-menu-box--ics .android-info {
  display: inline-block;
  width: 100%;
  padding: 5px;
  font-size: 12px;
  color: #6c7882;
}

@media (max-width: 359px) {
  #sg-feedback .sg-feedback__rating-title {
    width: 100%;
  }
}

.campaign-dialog__overlay {
  opacity: 0;
  transition: opacity 0.3s ease;
  max-width: unset;
  max-height: unset;
  border: none;
  width: 100%;
  height: 100%;
  background: transparent;
}
.campaign-dialog__overlay::backdrop {
  background: rgba(0, 0, 0, 0.5);
}
.campaign-dialog__overlay[open] {
  opacity: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.campaign-dialog__overlay[open]::backdrop {
  animation: backdrop-fade-in 0.3s ease-out forwards;
}
.campaign-dialog__overlay[open] .campaign-dialog__container {
  animation: dialog-slide-in 0.3s ease-out forwards;
}
.campaign-dialog__container {
  position: relative;
  width: 600px;
  height: 400px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  opacity: 0;
  transform: scale(0.8) translateY(30%);
  transition: all 0.3s ease-out;
}
.campaign-dialog__link {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
  line-height: 0;
}
.campaign-dialog__link:focus-visible {
  outline: none;
}
.campaign-dialog__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  line-height: 1;
}
.campaign-dialog__close {
  position: absolute;
  top: 6px;
  right: 6px;
  background: #fff;
  border: none;
  border-radius: 50%;
  font-size: 24px;
  width: 36px;
  height: 36px;
  cursor: pointer;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.campaign-dialog__close:hover {
  background: #f5f5f5;
}
.campaign-dialog__close:focus {
  outline: 2px solid #007bff;
  outline-offset: 2px;
}
@media (max-width: 767px) {
  .campaign-dialog__container {
    max-width: 320px;
    width: 90%;
    height: auto;
    min-height: 200px;
  }
  .campaign-dialog__image {
    height: auto;
    min-height: 200px;
  }
}
@keyframes dialog-slide-in {
  from {
    opacity: 0;
    transform: scale(0.8) translateY(30%);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}
@keyframes backdrop-fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.campaign-dialog__overlay:focus-within {
  outline: none;
}
.campaign-dialog--body-scroll-locked {
  overflow: hidden;
}

:root {
  --ue-cream: #fdfaf4;
  --ue-paper: #ffffff;
  --ue-ink: #2a2622;
  --ue-ink-2: #5e5750;
  --ue-ink-3: #8b8377;
  --ue-ink-4: #c4bcaf;
  --ue-rule: #ece5d9;
  --ue-rule-soft: #f4efe7;
  --ue-accent: #fa6f46;
  --ue-accent-deep: #d8542c;
  --ue-accent-soft: #fdece2;
  --ue-danger: #b8351a;
  --ue-danger-soft: #f8e4df;
  --ue-shadow-sm: 0 1px 2px rgba(42, 38, 34, 0.06), 0 2px 8px rgba(42, 38, 34, 0.06);
  --ue-shadow-md: 0 6px 16px -4px rgba(42, 38, 34, 0.12), 0 12px 40px -10px rgba(42, 38, 34, 0.16);
  --ue-shadow-lg: 0 10px 24px -6px rgba(42, 38, 34, 0.14), 0 32px 64px -16px rgba(42, 38, 34, 0.22);
  --ue-focus-ring: 0 0 0 3px rgba(250, 111, 70, 0.24);
  --ue-radius-sm: 4px;
  --ue-radius-md: 8px;
  --ue-radius-lg: 14px;
  --ue-stone: #f4f1ea;
  --ue-stone-rule: #e7e3d8;
}

td[data-day] {
  position: relative;
}

td.user-event-clickable:not(.last-month-days) {
  cursor: pointer;
}
td.user-event-clickable:not(.last-month-days)::before {
  content: "+";
  position: absolute;
  top: 2px;
  right: 4px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  color: var(--ue-accent-deep);
  opacity: 0;
  pointer-events: none;
  transform: translateY(-2px);
  transition: opacity 0.16s ease, transform 0.16s ease;
  z-index: 2;
}
td.user-event-clickable:not(.last-month-days):hover::before {
  opacity: 1;
  transform: translateY(0);
}
td.user-event-clickable:not(.last-month-days).holiday::before, td.user-event-clickable:not(.last-month-days).other::before, td.user-event-clickable:not(.last-month-days).optional::before, td.user-event-clickable:not(.last-month-days).today::before {
  content: none;
}

.user-event-corner {
  position: absolute;
  top: 0;
  right: 0;
  width: 10px;
  height: 10px;
  background: var(--ue-accent);
  clip-path: polygon(100% 0, 100% 100%, 0 0);
  pointer-events: none;
  z-index: 1;
}

.user-event-dots {
  position: absolute;
  bottom: 4px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  gap: 2px;
  width: calc(100% - 10px);
  max-width: 28px;
  pointer-events: none;
}

.user-event-dot {
  display: block;
  width: 100%;
  height: 2px;
  border-radius: 2px;
  background: var(--ev-color, var(--ue-ink-3));
}

.user-event-more {
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  color: var(--ue-ink-2);
  text-align: center;
}

tr.user-events-list-row > td.list-my-events {
  padding: 6px 12px 10px !important;
  border: 0 !important;
  background: none !important;
  text-align: left;
  font-size: 12px;
  line-height: 1.45;
  color: var(--ue-ink);
}

.list-my-event {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 3px 6px;
  margin: 0 -6px;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.12s ease;
}
.list-my-event:hover {
  background: var(--ue-rule-soft);
}
.list-my-event:hover .list-my-event__title {
  color: var(--ue-accent-deep);
  text-decoration: underline;
}

.list-my-event__mark {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  border-radius: 2px;
  background: var(--ev-color, var(--ue-ink-3));
}

.list-my-event__date {
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
  color: var(--ue-ink-2);
  font-weight: 600;
}

.list-my-event__sep {
  flex-shrink: 0;
  color: var(--ue-ink-3);
  padding: 0 2px;
}

.list-my-event__title {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--ue-ink);
  text-align: left;
}

tr.agenda-tr > td,
td.agenda-td {
  padding: 8px 8px 10px !important;
  border: 0 !important;
  background: none !important;
  text-align: left;
}

.agenda-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.agenda-list .agenda-row__link,
.agenda-row .agenda-row__link, .agenda-row--user,
.agenda-row--static {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 4px 6px;
}

.agenda-row {
  position: relative;
  font-size: 12px;
  line-height: 1.35;
  color: var(--ue-ink);
  border-radius: 4px;
  transition: background-color 0.12s ease;
}

.agenda-list .agenda-row__link,
.agenda-row .agenda-row__link {
  color: inherit;
  text-decoration: none;
}
.agenda-list .agenda-row__link:hover, .agenda-list .agenda-row__link:focus, .agenda-list .agenda-row__link:active,
.agenda-row .agenda-row__link:hover,
.agenda-row .agenda-row__link:focus,
.agenda-row .agenda-row__link:active {
  text-decoration: none;
  color: inherit;
}

.agenda-row__accent {
  flex-shrink: 0;
  width: 3px;
  align-self: stretch;
  min-height: 16px;
  background: var(--ev-color, var(--ue-accent));
  border-radius: 2px;
}

.agenda-row__date {
  flex-shrink: 0;
  min-width: 34px;
  font-weight: 600;
  color: var(--ue-ink-2);
  font-variant-numeric: tabular-nums;
  font-size: 11px;
  letter-spacing: 0.01em;
}

.agenda-row__title {
  flex: 1 1 auto;
  min-width: 0;
  text-align: left;
  overflow-wrap: anywhere;
  word-break: break-word;
  transition: color 0.15s ease;
}

.agenda-row__cat {
  flex-shrink: 0;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ue-ink-3);
}

.agenda-row--holiday .agenda-row__accent {
  background: var(--ue-accent);
}

.agenda-row--optional .agenda-row__accent,
.agenda-row--curious .agenda-row__accent,
.agenda-row--other .agenda-row__accent,
.agenda-row--dayof .agenda-row__accent {
  background: var(--ue-ink-3);
  opacity: 0.55;
}

.agenda-list .agenda-row__link,
.agenda-row .agenda-row__link {
  transition: background-color 0.24s ease;
}
.agenda-list .agenda-row__link .agenda-row__title,
.agenda-row .agenda-row__link .agenda-row__title {
  color: var(--ue-accent-deep);
  text-decoration: underline;
  text-decoration-color: currentColor;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  transition: color 0.22s ease, text-decoration-thickness 0.24s ease, text-underline-offset 0.24s ease;
}
.agenda-list .agenda-row__link:hover,
.agenda-row .agenda-row__link:hover {
  background: var(--ue-accent-soft);
}
.agenda-list .agenda-row__link:hover .agenda-row__title,
.agenda-row .agenda-row__link:hover .agenda-row__title {
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}
.agenda-list .agenda-row__link:focus-visible,
.agenda-row .agenda-row__link:focus-visible {
  outline: none;
  background: var(--ue-accent-soft);
}

.agenda-row--user {
  cursor: pointer;
}
.agenda-row--user:hover {
  background: rgba(var(--ev-color-rgb, 154, 160, 166), 0.09);
}
.agenda-row--user:hover .agenda-row__title {
  color: var(--ue-accent-deep);
}

tr.user-event-add-row > td {
  padding: 10px 14px 14px !important;
  border: 0 !important;
  background: linear-gradient(to bottom, rgba(236, 229, 217, 0) 0%, rgba(253, 236, 226, 0.35) 100%) !important;
  text-align: center;
}

.user-event-add-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: calc(100% - 8px);
  max-width: 360px;
  padding: 7px 14px;
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--ue-accent-deep);
  background: var(--ue-paper);
  border: 1px solid var(--ue-accent-soft);
  border-radius: 999px;
  cursor: pointer;
  text-align: center;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
  box-shadow: 0 1px 2px rgba(42, 38, 34, 0.04);
}
.user-event-add-btn:hover {
  background: var(--ue-accent-soft);
  border-color: rgba(250, 111, 70, 0.4);
  color: var(--ue-accent-deep);
  transform: translateY(-1px);
}
.user-event-add-btn:focus-visible {
  outline: none;
  box-shadow: var(--ue-focus-ring), 0 1px 2px rgba(42, 38, 34, 0.04);
}
.user-event-add-btn:active {
  transform: translateY(0);
}

.user-event-add-btn--monthly {
  padding: 12px 22px;
  font-size: 13px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  max-width: min(360px, 100%);
  width: auto;
  min-width: 0;
}
@media (min-width: 600px) {
  .user-event-add-btn--monthly {
    min-width: 260px;
  }
}

.calendar.calendar-month table tbody {
  table-layout: fixed;
}

.user-event-bars {
  display: flex;
  flex-direction: column;
  gap: 2px;
  margin-top: 3px;
  padding: 0 2px;
}

.user-event-bar {
  position: relative;
  display: flex;
  align-items: center;
  gap: 4px;
  min-width: 0;
  min-height: 18px;
  padding: 2px 6px 2px 8px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.25;
  color: var(--ue-ink);
  background: var(--ev-color, #9aa0a6);
  background: rgba(var(--ev-color-rgb, 154, 160, 166), 0.2);
  border-left: 3px solid var(--ev-color, #9aa0a6);
  cursor: pointer;
  overflow: hidden;
  transition: background-color 0.15s ease;
}
.user-event-bar:hover {
  background: var(--ev-color, #9aa0a6);
  background: rgba(var(--ev-color-rgb, 154, 160, 166), 0.32);
}
.user-event-bar.is-start, .user-event-bar.is-single {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
}
.user-event-bar.is-end, .user-event-bar.is-single {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
}
.user-event-bar.is-middle, .user-event-bar.is-end {
  border-left: none;
  padding-left: 4px;
  background: var(--ev-color, #9aa0a6);
  background: rgba(var(--ev-color-rgb, 154, 160, 166), 0.18);
}

.user-event-bar__recur {
  display: inline-flex;
  width: 12px;
  height: 12px;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  color: var(--ue-ink-2);
  flex-shrink: 0;
}

.user-event-bar__label {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.user-event-bar__more {
  margin-top: 2px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--ue-ink-2);
  cursor: pointer;
  text-align: left;
  padding: 1px 6px;
  background: var(--ue-rule-soft);
  border-radius: 2px;
  transition: background-color 0.15s ease;
}
.user-event-bar__more:hover {
  background: var(--ue-accent-soft);
  color: var(--ue-accent-deep);
}

.user-event-popover {
  position: absolute;
  z-index: 200;
  min-width: 260px;
  max-width: 320px;
  background: var(--ue-paper);
  border: 1px solid var(--ue-rule);
  border-radius: var(--ue-radius-md);
  box-shadow: var(--ue-shadow-md);
  color: var(--ue-ink);
  font-family: inherit;
  font-size: 13px;
  overflow: hidden;
  animation: uePopoverIn 0.16s ease-out;
}
.user-event-popover[hidden] {
  display: none;
}

@keyframes uePopoverIn {
  from {
    opacity: 0;
    transform: translateY(-4px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.user-event-popover__header {
  padding: 12px 16px 10px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ue-ink-2);
  background: var(--ue-cream);
  border-bottom: 1px solid var(--ue-rule);
}

.user-event-popover__list {
  list-style: none;
  margin: 0;
  padding: 4px 0;
  max-height: 280px;
  overflow-y: auto;
}

.user-event-popover__item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  cursor: pointer;
  border-left: 3px solid transparent;
  transition: background-color 0.12s ease, border-color 0.12s ease;
}
.user-event-popover__item:hover {
  background: var(--ue-rule-soft);
  border-left-color: var(--ev-color, var(--ue-accent));
}

.user-event-popover__dot {
  width: 10px;
  height: 10px;
  border-radius: 2px;
  background: var(--ev-color, var(--ue-ink-3));
  flex-shrink: 0;
}

.user-event-popover__body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.user-event-popover__title {
  overflow: hidden;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.user-event-popover__range {
  font-size: 11px;
  color: var(--ue-ink-3);
  font-variant-numeric: tabular-nums;
}

.user-event-popover__cat {
  color: var(--ue-ink-3);
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.user-event-popover__empty {
  padding: 18px 16px;
  color: var(--ue-ink-3);
  text-align: center;
  font-size: 12px;
}

.user-event-popover__add {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 12px 16px;
  border: 0;
  border-top: 1px solid var(--ue-rule);
  background: var(--ue-paper);
  color: var(--ue-accent-deep);
  font-family: inherit;
  font-weight: 700;
  letter-spacing: 0.02em;
  font-size: 12px;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.user-event-popover__add:hover {
  background: var(--ue-accent-soft);
}

.user-event-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
}
.user-event-modal[hidden] {
  display: none;
}

.user-event-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(42, 38, 34, 0.48);
  backdrop-filter: blur(2px);
  animation: ueFadeIn 0.18s ease-out;
}

.user-event-modal__panel {
  position: relative;
  max-width: 560px;
  max-height: calc(100vh - 80px);
  margin: 40px auto;
  background: var(--ue-paper);
  border-radius: var(--ue-radius-lg);
  box-shadow: var(--ue-shadow-lg);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  animation: uePanelIn 0.22s cubic-bezier(0.2, 0.8, 0.2, 1);
}
@media (max-width: 600px) {
  .user-event-modal__panel {
    margin: auto 0 0;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 92vh;
    border-radius: 18px 18px 0 0;
    animation: uePanelInMobile 0.26s cubic-bezier(0.2, 0.8, 0.2, 1);
  }
}

@keyframes uePanelInMobile {
  from {
    opacity: 0;
    transform: translateY(100%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes ueFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes uePanelIn {
  from {
    opacity: 0;
    transform: translateY(12px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
.user-event-modal__header {
  position: relative;
  flex-shrink: 0;
  padding: 18px 48px 16px;
  text-align: center;
  background: var(--ue-stone);
  border-bottom: 1px solid var(--ue-stone-rule);
}
@media (max-width: 600px) {
  .user-event-modal__header {
    padding: 18px 48px 20px;
  }
}

.user-event-modal__title {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: -0.005em;
  color: var(--ue-ink);
  line-height: 1.2;
}

.user-event-modal__title-tick {
  display: block;
  margin: 8px auto 0;
  width: 20px;
  height: 2px;
  background: var(--ue-accent);
  border-radius: 2px;
}

.user-event-modal__close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  background: none;
  border: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  color: var(--ue-ink-3);
  transition: background-color 0.12s ease, color 0.12s ease;
}
.user-event-modal__close:hover {
  background: var(--ue-rule-soft);
  color: var(--ue-ink);
}
.user-event-modal__close:focus-visible {
  outline: none;
  box-shadow: var(--ue-focus-ring);
}
@media (max-width: 600px) {
  .user-event-modal__close {
    top: 10px;
    right: 10px;
  }
}

.user-event-modal__form {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 18px 26px 22px;
  overflow-y: auto;
  flex: 1 1 auto;
  min-height: 0;
  background: var(--ue-paper);
}
@media (max-width: 600px) {
  .user-event-modal__form {
    padding: 16px 22px 20px;
  }
}

.user-event-modal__field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 13px;
  color: var(--ue-ink);
}
.user-event-modal__field > span:first-child {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ue-ink-2);
}
.user-event-modal__field input[type=text], .user-event-modal__field input[type=date], .user-event-modal__field textarea {
  width: 100%;
  padding: 10px 12px;
  background: var(--ue-paper);
  border: 1px solid var(--ue-rule);
  border-radius: var(--ue-radius-sm);
  font: inherit;
  font-size: 14px;
  color: var(--ue-ink);
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.user-event-modal__field input[type=text]::placeholder, .user-event-modal__field input[type=date]::placeholder, .user-event-modal__field textarea::placeholder {
  color: var(--ue-ink-4);
}
.user-event-modal__field input[type=text]:focus, .user-event-modal__field input[type=date]:focus, .user-event-modal__field textarea:focus {
  outline: none;
  border-color: var(--ue-accent);
  box-shadow: var(--ue-focus-ring);
}
.user-event-modal__field textarea {
  resize: vertical;
  min-height: 72px;
}
.user-event-modal__field input[type=date] {
  font-variant-numeric: tabular-nums;
}

.user-event-modal__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
@media (max-width: 480px) {
  .user-event-modal__row {
    grid-template-columns: 1fr;
  }
}

.user-event-modal__cats {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.user-event-modal__cat {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px 7px 10px;
  background: var(--ue-paper);
  border: 1px solid var(--ue-rule);
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  color: var(--ue-ink-2);
  cursor: pointer;
  transition: all 0.15s ease;
}
.user-event-modal__cat input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.user-event-modal__cat::before {
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--ev-color, var(--ue-ink-3));
}
.user-event-modal__cat:hover {
  border-color: color-mix(in srgb, var(--ev-color, var(--ue-ink-3)) 40%, var(--ue-rule));
  color: var(--ue-ink);
}

.user-event-modal__cat--active {
  background: var(--ev-color, var(--ue-accent));
  background: rgba(var(--ev-color-rgb, 250, 111, 70), 0.14);
  border-color: var(--ev-color, var(--ue-accent));
  color: var(--ue-ink);
  box-shadow: inset 0 0 0 1px var(--ev-color, var(--ue-accent));
}

.user-event-modal__segmented {
  display: flex;
  flex-wrap: wrap;
  padding: 3px;
  background: var(--ue-rule-soft);
  border: 1px solid var(--ue-rule);
  border-radius: 14px;
  gap: 2px;
}

.user-event-modal__seg {
  flex: 1 1 auto;
  min-width: 0;
  padding: 7px 10px;
  background: transparent;
  border: 0;
  border-radius: 10px;
  font: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--ue-ink-2);
  cursor: pointer;
  transition: background-color 0.12s ease, color 0.12s ease, box-shadow 0.12s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.user-event-modal__seg:hover {
  color: var(--ue-ink);
}
.user-event-modal__seg--active {
  background: var(--ue-paper);
  color: var(--ue-ink);
  box-shadow: 0 1px 2px rgba(42, 38, 34, 0.08);
}
@media (max-width: 420px) {
  .user-event-modal__seg {
    flex: 1 1 calc(50% - 2px);
  }
}

.user-event-modal__error {
  color: var(--ue-danger);
  font-size: 12px;
  min-height: 14px;
  line-height: 1.3;
}

.user-event-modal__error--global {
  margin-top: 4px;
  padding: 10px 12px;
  background: var(--ue-danger-soft);
  border-radius: var(--ue-radius-sm);
  border-left: 3px solid var(--ue-danger);
  font-weight: 600;
}
.user-event-modal__error--global:empty {
  display: none;
}

.user-event-modal__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 24px 18px;
  background: var(--ue-stone);
  border-top: 1px solid var(--ue-stone-rule);
  flex-shrink: 0;
}

.user-event-modal__actions {
  display: flex;
  gap: 8px;
  margin-left: auto;
}

.user-event-modal__cancel,
.user-event-modal__save,
.user-event-modal__delete {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 0 18px;
  border-radius: 8px;
  border: 1px solid transparent;
  font-family: inherit;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.02em;
  cursor: pointer;
  white-space: nowrap;
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease, transform 0.12s ease;
}
.user-event-modal__cancel:focus-visible,
.user-event-modal__save:focus-visible,
.user-event-modal__delete:focus-visible {
  outline: none;
  box-shadow: var(--ue-focus-ring);
}

.user-event-modal__cancel {
  background: var(--ue-paper);
  color: var(--ue-ink-2);
  border-color: var(--ue-rule);
}
.user-event-modal__cancel:hover {
  color: var(--ue-ink);
  border-color: var(--ue-ink-4);
}

.user-event-modal__save {
  background: var(--ue-accent);
  color: var(--ue-paper);
  box-shadow: 0 1px 2px rgba(216, 84, 44, 0.18);
}
.user-event-modal__save:hover:not(:disabled) {
  background: var(--ue-accent-deep);
  box-shadow: 0 2px 4px rgba(216, 84, 44, 0.22), 0 8px 18px -6px rgba(216, 84, 44, 0.35);
}
.user-event-modal__save:active {
  transform: translateY(1px);
}
.user-event-modal__save:disabled {
  opacity: 0.55;
  cursor: wait;
  transform: none;
}

.user-event-modal__delete {
  background: none;
  color: var(--ue-danger);
  border-color: transparent;
}
.user-event-modal__delete[hidden] {
  display: none;
}
.user-event-modal__delete:hover {
  background: var(--ue-danger-soft);
  border-color: rgba(184, 53, 26, 0.2);
}

.day-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
}
.day-modal[hidden] {
  display: none;
}

.day-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(42, 38, 34, 0.48);
  backdrop-filter: blur(2px);
  animation: ueFadeIn 0.18s ease-out;
}

.day-modal__panel {
  position: relative;
  max-width: 520px;
  max-height: calc(100vh - 80px);
  margin: 40px auto;
  background: var(--ue-paper);
  border-radius: var(--ue-radius-lg);
  box-shadow: var(--ue-shadow-lg);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  animation: uePanelIn 0.22s cubic-bezier(0.2, 0.8, 0.2, 1);
}
@media (max-width: 600px) {
  .day-modal__panel {
    margin: auto 0 0;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 88vh;
    border-radius: 18px 18px 0 0;
    animation: uePanelInMobile 0.26s cubic-bezier(0.2, 0.8, 0.2, 1);
  }
}

.day-modal__close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 3;
  background: none;
  border: 0;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  color: var(--ue-ink-3);
  transition: background-color 0.12s ease, color 0.12s ease;
}
.day-modal__close:hover {
  background: var(--ue-rule-soft);
  color: var(--ue-ink);
}
.day-modal__close:focus-visible {
  outline: none;
  box-shadow: var(--ue-focus-ring);
}
@media (max-width: 600px) {
  .day-modal__close {
    top: 10px;
    right: 10px;
  }
}

.day-modal__header {
  position: relative;
  flex-shrink: 0;
  padding: 18px 48px 16px;
  text-align: center;
  background: var(--ue-stone);
  border-bottom: 1px solid var(--ue-stone-rule);
}
@media (max-width: 600px) {
  .day-modal__header {
    padding: 18px 48px 22px;
  }
}

.day-modal__dateline {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.005em;
  color: var(--ue-ink);
  line-height: 1.3;
  font-variant-numeric: oldstyle-nums;
}
@media (max-width: 420px) {
  .day-modal__dateline {
    font-size: 13px;
  }
}

.day-modal__dateline-tick {
  display: block;
  margin: 10px auto 0;
  width: 20px;
  height: 2px;
  background: var(--ue-accent);
  border-radius: 2px;
}

.day-modal__body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding: 6px 0;
  background: var(--ue-paper);
  mask-image: linear-gradient(to bottom, transparent 0, #000 10px, #000 calc(100% - 10px), transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 10px, #000 calc(100% - 10px), transparent 100%);
}
@media (max-width: 600px) {
  .day-modal__body {
    padding: 12px 0 14px;
  }
}

.day-modal__body--empty {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 36px 24px;
  mask-image: none;
  -webkit-mask-image: none;
}

.day-modal__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  color: var(--ue-ink-3);
}

.day-modal__empty-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--ue-accent-soft);
  color: var(--ue-accent-deep);
  font-size: 22px;
  line-height: 1;
}

.day-modal__empty-text {
  font-size: 14px;
  font-style: italic;
  letter-spacing: 0.01em;
}

.day-modal__events {
  list-style: none;
  margin: 0;
  padding: 4px 0;
}

@keyframes dayModalItemIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.day-modal__event {
  position: relative;
  transition: background-color 0.15s ease;
  opacity: 0;
  animation: dayModalItemIn 0.32s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  animation-delay: calc(var(--i, 0) * 40ms + 60ms);
}

.day-modal__event-link, .day-modal__event--static, .day-modal__event--user {
  display: flex;
  align-items: stretch;
  gap: 12px;
  padding: 8px 24px;
}
@media (max-width: 600px) {
  .day-modal__event-link, .day-modal__event--static, .day-modal__event--user {
    padding: 8px 20px;
  }
}

.day-modal__event--user {
  cursor: pointer;
}
.day-modal__event--user:hover {
  background: rgba(var(--ev-color-rgb, 154, 160, 166), 0.08);
}
.day-modal__event--user:hover .day-modal__event-title {
  color: var(--ue-accent-deep);
}

.day-modal__event--holiday .day-modal__event-accent {
  background: var(--ue-accent);
  border-radius: 2px;
}
.day-modal__event--holiday.day-modal__event--optional .day-modal__event-accent, .day-modal__event--holiday.day-modal__event--curious .day-modal__event-accent, .day-modal__event--holiday.day-modal__event--other .day-modal__event-accent, .day-modal__event--holiday.day-modal__event--dayof .day-modal__event-accent {
  background: var(--ue-ink-3);
  opacity: 0.55;
}

.day-modal__event--static {
  cursor: default;
}

.day-modal__event--linked {
  padding: 0;
}
.day-modal__event--linked:hover {
  background: var(--ue-accent-soft);
}

.day-modal__event-link {
  text-decoration: none;
  color: inherit;
  cursor: pointer;
}
.day-modal__event-link, .day-modal__event-link:hover, .day-modal__event-link:focus, .day-modal__event-link:active {
  text-decoration: none;
}
.day-modal__event-link .day-modal__event-title {
  color: var(--ue-accent-deep);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: rgba(216, 84, 44, 0.35);
  transition: color 0.15s ease, text-decoration-color 0.15s ease, text-decoration-thickness 0.15s ease;
}
.day-modal__event-link:hover .day-modal__event-title {
  color: var(--ue-accent-deep);
  text-decoration-color: var(--ue-accent-deep);
  text-decoration-thickness: 2px;
}
.day-modal__event-link:hover .day-modal__event-chevron {
  opacity: 1;
  transform: translateX(2px);
  color: var(--ue-accent-deep);
}
.day-modal__event-link:focus-visible {
  outline: none;
  background: var(--ue-accent-soft);
}
.day-modal__event-link:focus-visible .day-modal__event-title {
  text-decoration-color: var(--ue-accent-deep);
}

.day-modal__event-chevron {
  flex-shrink: 0;
  align-self: center;
  width: 12px;
  font-size: 18px;
  line-height: 1;
  color: var(--ue-ink-3);
  opacity: 0.55;
  transform: translateX(0);
  transition: opacity 0.18s ease, transform 0.18s ease, color 0.15s ease;
}

.day-modal__event-accent {
  flex-shrink: 0;
  width: 3px;
  align-self: stretch;
  min-height: 24px;
  background: var(--ev-color, var(--ue-ink-3));
  border-radius: 2px;
}

.day-modal__event-body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
  padding: 1px 0;
}

.day-modal__event-title-row {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}

.day-modal__event-recur {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 14px;
  height: 14px;
  font-size: 10px;
  color: var(--ue-ink-3);
}

.day-modal__event-title {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 14px;
  font-weight: 500;
  color: var(--ue-ink);
  line-height: 1.35;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: color 0.15s ease;
}

.day-modal__event-range {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--ue-ink-3);
  font-variant-numeric: tabular-nums;
}

.day-modal__event-cat {
  flex-shrink: 0;
  align-self: center;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ue-ink-3);
}
@media (max-width: 460px) {
  .day-modal__event-cat {
    display: none;
  }
}

.day-modal__footer {
  flex-shrink: 0;
  padding: 14px 24px 18px;
  background: var(--ue-stone);
  border-top: 1px solid var(--ue-stone-rule);
}

.day-modal__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 42px;
  padding: 0 22px;
  border: 0;
  border-radius: 999px;
  background: var(--ue-accent);
  color: var(--ue-paper);
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(216, 84, 44, 0.2), 0 8px 20px -6px rgba(216, 84, 44, 0.3);
  transition: background-color 0.15s ease, transform 0.12s ease, box-shadow 0.15s ease;
}
.day-modal__cta:hover {
  background: var(--ue-accent-deep);
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(216, 84, 44, 0.25), 0 12px 28px -8px rgba(216, 84, 44, 0.4);
}
.day-modal__cta:active {
  transform: translateY(0);
}
.day-modal__cta:focus-visible {
  outline: none;
  box-shadow: var(--ue-focus-ring), 0 8px 20px -6px rgba(216, 84, 44, 0.3);
}

.day-modal__cta-plus {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
}

.my-events-page {
  background: linear-gradient(180deg, var(--ue-cream) 0%, #ffffff 400px);
}

.my-events {
  padding: 32px 0 48px;
}
.my-events h1 {
  margin: 0;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--ue-ink);
  line-height: 1.1;
}
@media (max-width: 600px) {
  .my-events h1 {
    font-size: 26px;
  }
}

.my-events__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 28px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--ue-rule);
}
@media (max-width: 600px) {
  .my-events__header {
    flex-direction: column;
    align-items: stretch;
  }
}

.my-events__titles {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.my-events__tick {
  display: block;
  width: 28px;
  height: 2px;
  background: var(--ue-accent);
  border-radius: 2px;
}

.my-events__create {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 11px 22px;
  border: 0;
  border-radius: 999px;
  background: var(--ue-accent);
  color: var(--ue-paper);
  font-family: inherit;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(216, 84, 44, 0.2), 0 8px 20px -6px rgba(216, 84, 44, 0.3);
  transition: background-color 0.15s ease, transform 0.12s ease, box-shadow 0.15s ease;
}
.my-events__create:hover {
  background: var(--ue-accent-deep);
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(216, 84, 44, 0.25), 0 12px 28px -8px rgba(216, 84, 44, 0.4);
}
.my-events__create:active {
  transform: translateY(0);
}

.my-events__list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.my-events__group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.my-events__group-title {
  margin: 0 0 4px;
  padding: 0;
  border: 0;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--ue-accent-deep);
  line-height: 1;
}
.my-events__group-title::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 1px;
  margin-left: 10px;
  background: var(--ue-rule);
}

.my-events__group--past .my-events__group-title {
  color: var(--ue-ink-3);
}

.my-events__group-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

@keyframes myEventsRowIn {
  from {
    opacity: 0;
    transform: translateY(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.my-events__item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 14px;
  background: var(--ue-paper);
  border: 1px solid var(--ue-rule);
  border-radius: var(--ue-radius-sm);
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
  opacity: 0;
  animation: myEventsRowIn 0.32s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  animation-delay: calc(var(--i, 0) * 28ms + 40ms);
}
.my-events__item:hover {
  background: var(--ue-cream);
  border-color: var(--ue-ink-4);
}
.my-events__item:hover .my-events__title {
  color: var(--ue-accent-deep);
}
.my-events__item:hover .my-events__actions {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}
@media (max-width: 600px) {
  .my-events__item {
    padding: 10px 12px;
    gap: 10px;
  }
}

.my-events__item--past {
  background: transparent;
  border-color: var(--ue-rule-soft);
  opacity: 0.78;
}
.my-events__item--past:hover {
  opacity: 1;
}

.my-events__accent {
  flex-shrink: 0;
  width: 3px;
  align-self: stretch;
  min-height: 20px;
  background: var(--ev-color, var(--ue-ink-3));
  border-radius: 2px;
}

.my-events__date {
  flex-shrink: 0;
  min-width: 58px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--ue-ink-2);
  font-variant-numeric: tabular-nums;
  line-height: 1.3;
}
@media (max-width: 600px) {
  .my-events__date {
    min-width: 48px;
  }
}

.my-events__body {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 6px;
}

.my-events__title {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 14px;
  font-weight: 500;
  color: var(--ue-ink);
  line-height: 1.35;
  overflow-wrap: anywhere;
  word-break: break-word;
  transition: color 0.15s ease;
}

.my-events__recur {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--ue-accent-soft);
  color: var(--ue-accent-deep);
}
.my-events__recur svg {
  width: 12px;
  height: 12px;
  display: block;
}

.my-events__cat {
  flex-shrink: 0;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ue-ink-3);
}
@media (max-width: 560px) {
  .my-events__cat {
    display: none;
  }
}

.my-events__actions {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 4px;
  opacity: 0;
  transform: translateX(4px);
  pointer-events: none;
  transition: opacity 0.15s ease, transform 0.15s ease;
}
@media (hover: none) {
  .my-events__actions {
    opacity: 1;
    transform: none;
    pointer-events: auto;
  }
}

.my-events__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 50%;
  color: var(--ue-ink-3);
  cursor: pointer;
  transition: background-color 0.12s ease, color 0.12s ease;
}
.my-events__action svg {
  width: 14px;
  height: 14px;
}
.my-events__action:hover {
  background: var(--ue-rule-soft);
  color: var(--ue-ink);
}
.my-events__action:focus-visible {
  outline: none;
  box-shadow: var(--ue-focus-ring);
}

.my-events__action--delete:hover {
  background: var(--ue-danger-soft);
  color: var(--ue-danger);
}

.my-events__confirm {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px 4px 2px 10px;
  background: var(--ue-danger-soft);
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  color: var(--ue-danger);
  animation: myEventsRowIn 0.18s ease-out;
}

.my-events__confirm-text {
  text-transform: uppercase;
}

.my-events__confirm-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 24px;
  padding: 0 10px;
  background: var(--ue-paper);
  border: 0;
  border-radius: 999px;
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color 0.12s ease, color 0.12s ease;
}
.my-events__confirm-btn--yes {
  color: var(--ue-danger);
}
.my-events__confirm-btn--yes:hover {
  background: var(--ue-danger);
  color: var(--ue-paper);
}
.my-events__confirm-btn--no {
  color: var(--ue-ink-2);
}
.my-events__confirm-btn--no:hover {
  background: var(--ue-rule-soft);
  color: var(--ue-ink);
}
.my-events__confirm-btn:focus-visible {
  outline: none;
  box-shadow: var(--ue-focus-ring);
}

.my-events__empty {
  margin: 32px 0;
  padding: 56px 24px 48px;
  text-align: center;
  background: var(--ue-paper);
  border: 1px dashed var(--ue-rule);
  border-radius: var(--ue-radius-lg);
  color: var(--ue-ink-2);
  font-size: 15px;
}

.my-events__empty-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  margin: 0 auto 18px;
  border-radius: 50%;
  background: var(--ue-accent-soft);
  color: var(--ue-accent-deep);
  font-size: 28px;
  line-height: 1;
}

.my-events__empty-title {
  display: block;
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 700;
  color: var(--ue-ink);
  letter-spacing: -0.005em;
}

.my-events__empty-text {
  margin: 0 auto 22px;
  max-width: 420px;
  font-style: italic;
  line-height: 1.5;
}

.my-events__empty-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 11px 22px;
  border: 0;
  border-radius: 999px;
  background: var(--ue-accent);
  color: var(--ue-paper);
  font-family: inherit;
  font-weight: 700;
  font-size: 13px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  cursor: pointer;
  box-shadow: 0 1px 2px rgba(216, 84, 44, 0.2), 0 8px 20px -6px rgba(216, 84, 44, 0.3);
  transition: background-color 0.15s ease, transform 0.12s ease, box-shadow 0.15s ease;
}
.my-events__empty-cta:hover {
  background: var(--ue-accent-deep);
  transform: translateY(-1px);
  box-shadow: 0 2px 4px rgba(216, 84, 44, 0.25), 0 12px 28px -8px rgba(216, 84, 44, 0.4);
}
.my-events__empty-cta:active {
  transform: translateY(0);
}

.year-calendar-print .user-event-bars,
.year-calendar-print .user-event-add-btn,
.year-calendar-print tr.user-event-add-row,
.month-calendar-print .user-event-bars,
.month-calendar-print .user-event-add-btn,
.month-calendar-print tr.user-event-add-row {
  display: none !important;
}
.year-calendar-print .agenda-row--user,
.month-calendar-print .agenda-row--user {
  display: none !important;
}
.year-calendar-print tr.agenda-tr:has(> td.agenda-td > ul.agenda-list:empty),
.month-calendar-print tr.agenda-tr:has(> td.agenda-td > ul.agenda-list:empty) {
  display: none !important;
}
.year-calendar-print .user-event-dots,
.month-calendar-print .user-event-dots {
  gap: 3px;
  bottom: 3px;
  max-width: 34px;
}
.year-calendar-print .user-event-dot,
.month-calendar-print .user-event-dot {
  height: 3px;
  background: var(--ev-color, #9aa0a6) !important;
}
.year-calendar-print tr.user-events-list-row > td.list-my-events,
.month-calendar-print tr.user-events-list-row > td.list-my-events {
  border-top: 1px dashed var(--ue-rule) !important;
  padding-top: 8px !important;
}
.year-calendar-print .list-my-event,
.month-calendar-print .list-my-event {
  cursor: default;
}
.year-calendar-print .list-my-event:hover,
.month-calendar-print .list-my-event:hover {
  background: transparent;
}
.year-calendar-print .list-my-event__title,
.month-calendar-print .list-my-event__title {
  color: var(--ue-ink) !important;
  text-decoration: none !important;
}

.year-calendar-print .user-events-print-page {
  margin-top: 18px;
}
.year-calendar-print .user-events-print-page .calendar-page-print-page-header {
  margin-bottom: 12px;
}
.year-calendar-print .user-events-print-page .user-events-print-list-box {
  background: #fff;
  border: 1px solid #e9eaeb;
  border-radius: 8px;
  overflow: hidden;
}
.year-calendar-print .user-events-print-page .user-events-print-list-box__title {
  padding: 14px 18px 10px;
}
.year-calendar-print .user-events-print-page .user-events-print-list-box__title h2 {
  margin: 0;
  font-size: 14pt;
  font-weight: 700;
  line-height: 1.2;
  color: #2a2622;
}
.year-calendar-print .user-events-print-page .user-events-print-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.year-calendar-print .user-events-print-page .user-events-print-list-month {
  display: block;
  margin: 0;
  padding: 10px 18px 6px;
  border-top: 1px solid #ece5d9;
  font-size: 9pt;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5e5750;
  page-break-after: avoid;
  break-after: avoid-page;
}
.year-calendar-print .user-events-print-page .user-events-print-list-month:first-child {
  border-top: 0;
}
.year-calendar-print .user-events-print-page .user-events-print-list-item {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 7px 18px;
  border-bottom: 1px solid #f1ede5;
  page-break-inside: avoid;
  break-inside: avoid;
  font-size: 10.5pt;
  line-height: 1.3;
}
.year-calendar-print .user-events-print-page .user-events-print-list-item:nth-child(odd of .user-events-print-list-item) {
  background-color: #fafafa;
}
.year-calendar-print .user-events-print-page .user-events-print-list-item:last-child {
  border-bottom: 0;
}
.year-calendar-print .user-events-print-page .user-events-print-list-item__date {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 3px 8px;
  background: var(--ev-color, #9aa0a6) !important;
  color: #fff;
  font-size: 9.5pt;
  font-weight: 600;
  letter-spacing: 0.01em;
  border-radius: 3px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.year-calendar-print .user-events-print-page .user-events-print-list-item__title {
  color: #2a2622;
  font-weight: 500;
  min-width: 0;
  overflow-wrap: anywhere;
}
.year-calendar-print .user-events-print-page .user-events-print-list-item__cat {
  font-size: 8.5pt;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #5e5750;
  background: rgba(var(--ev-color-rgb, 154, 160, 166), 0.18) !important;
  padding: 3px 8px;
  border-radius: 999px;
  white-space: nowrap;
}

@media print {
  .user-event-dot,
  .list-my-event__mark,
  .user-events-print-list-item__date,
  .user-events-print-list-item__cat,
  .user-events-print-list-item:nth-child(odd of .user-events-print-list-item) {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }
}