/* Ayvalık Vibes 5.0.6 — Minimal and separated calendar language. */

/* Header and hero need a visible breathing line without changing the hero layout. */
body.ayv-final-5020 .ayvibes-wrap > .ayvibes-hero-banner{
  margin-top:20px!important;
}

/* Shared minimal calendar surface. */
body.ayv-final-5020 :is(.ayvibes-seasonal-banner.is-calendar-layout,.ayvibes-events-section){
  border-color:rgba(76,112,95,.16)!important;
  box-shadow:0 12px 32px rgba(42,67,56,.055)!important;
}
body.ayv-final-5020 .ayvibes-seasonal-banner.is-calendar-layout{
  padding:18px!important;
  gap:14px!important;
  border-radius:24px!important;
  background:#fbfcfa!important;
}
body.ayv-final-5020 .ayvibes-seasonal-copy-title{
  padding:22px 24px!important;
  border-radius:19px!important;
  background:#eef5f1!important;
}
body.ayv-final-5020 .ayvibes-seasonal-copy-title h2{
  max-width:680px!important;
  margin-bottom:8px!important;
  font-size:clamp(31px,3.5vw,45px)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
}
body.ayv-final-5020 .ayvibes-seasonal-copy-title p{
  max-width:760px!important;
  margin-bottom:0!important;
  color:#637269!important;
  font-size:12.5px!important;
  line-height:1.6!important;
}
body.ayv-final-5020 .ayvibes-seasonal-eyebrow{
  color:#6f8e7e!important;
  font-size:9px!important;
  letter-spacing:.13em!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda{
  padding:14px!important;
  border-radius:18px!important;
  border-color:rgba(76,112,95,.14)!important;
  background:#fff!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-head{
  margin-bottom:9px!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-head strong{
  color:#344a40!important;
  font-size:17px!important;
  font-weight:700!important;
}
body.ayv-final-5020 .ayvibes-calendar-nav{
  width:32px!important;
  height:32px!important;
  border-color:rgba(76,112,95,.14)!important;
  background:#f1f6f3!important;
  color:#597466!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-grid{
  gap:3px!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-grid :is(.weekday,.empty,.day){
  min-height:43px!important;
  padding:5px!important;
  border-radius:9px!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-grid .weekday{
  min-height:21px!important;
  color:#8a958f!important;
  font-size:8px!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-grid .day{
  border-color:rgba(76,112,95,.1)!important;
  background:#fcfdfc!important;
  color:#3b4c44!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-grid .day.has-event{
  background:color-mix(in srgb,var(--event-color) 12%,#fff)!important;
  border-color:color-mix(in srgb,var(--event-color) 24%,#fff)!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-list{
  max-height:156px!important;
  gap:5px!important;
  margin-top:9px!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-list button{
  padding:7px!important;
  border-radius:11px!important;
  border-color:rgba(76,112,95,.1)!important;
  background:#fbfcfb!important;
}

/* The weekly area is one compact calendar, not a second dark-green campaign block. */
body.ayv-final-5020 .ayvibes-weekly-local-calendar{
  width:min(1320px,calc(100% - 36px))!important;
  margin:28px auto 38px!important;
  padding:clamp(18px,2.6vw,30px)!important;
  border:1px solid rgba(76,112,95,.15)!important;
  border-radius:24px!important;
  background:#f3f7f4!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-sec-head{
  margin-bottom:14px!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-sec-head h2{
  color:#32473e!important;
  font-size:clamp(27px,3vw,38px)!important;
  letter-spacing:-.035em!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-sec-head p{
  max-width:760px!important;
  color:#6b7770!important;
  font-size:12px!important;
  line-height:1.6!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-events-layout{
  gap:14px!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-events-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-event-item{
  min-height:82px!important;
  padding:11px!important;
  gap:10px!important;
  border:1px solid rgba(76,112,95,.12)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#34473e!important;
  box-shadow:none!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-event-date{
  min-width:49px!important;
  border-radius:11px!important;
  background:#e5efe9!important;
  color:#5e7b6d!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-event-item em{
  display:block!important;
  margin:0 0 3px!important;
  color:#789184!important;
  font-size:8px!important;
  font-style:normal!important;
  font-weight:800!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-event-item strong{
  color:#34473e!important;
  font-size:12px!important;
  line-height:1.28!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-event-item small{
  color:#78827d!important;
  font-size:9.5px!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-section-calendar{
  padding:12px!important;
  border-radius:17px!important;
  border-color:rgba(76,112,95,.13)!important;
  background:#fff!important;
  box-shadow:none!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-section-calendar-head strong{
  color:#34473e!important;
  font-size:16px!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-section-calendar-head .ayvibes-calendar-nav{
  background:#edf3ef!important;
  color:#647f71!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-menu-calendar-grid .day{
  border-color:rgba(76,112,95,.1)!important;
  background:#fbfcfb!important;
  color:#42544b!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-menu-calendar-list button{
  border-color:rgba(76,112,95,.1)!important;
  background:#fbfcfb!important;
  box-shadow:none!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-event-actions{
  margin-top:12px!important;
}
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-event-actions .ayvibes-btn-primary,
body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-btn-more{
  background:#dceae2!important;
  color:#496558!important;
  border-color:rgba(76,112,95,.12)!important;
}

@media(max-width:760px){
  body.ayv-final-5020 .ayvibes-wrap > .ayvibes-hero-banner{margin-top:12px!important}
  body.ayv-final-5020 .ayvibes-seasonal-banner.is-calendar-layout{width:calc(100% - 20px)!important;padding:11px!important;border-radius:19px!important}
  body.ayv-final-5020 .ayvibes-seasonal-copy-title{padding:18px!important;border-radius:15px!important}
  body.ayv-final-5020 .ayvibes-seasonal-copy-title h2{font-size:29px!important}
  body.ayv-final-5020 .ayvibes-weekly-local-calendar{width:calc(100% - 20px)!important;padding:16px!important;border-radius:19px!important}
  body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-events-grid{grid-template-columns:1fr!important}
  body.ayv-final-5020 .ayvibes-weekly-local-calendar .ayvibes-event-item{min-height:76px!important}
}

/* Dedicated seven-day calendar for local, small-scale weekly activity. */
body.ayv-final-5020 .ayvibes-week-strip-calendar{
  padding:12px!important;
  border:1px solid rgba(76,112,95,.13)!important;
  border-radius:17px!important;
  background:#fff!important;
}
body.ayv-final-5020 .ayvibes-week-strip-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:12px!important;
  margin-bottom:10px!important;
}
body.ayv-final-5020 .ayvibes-week-strip-head small{
  display:block!important;
  margin-bottom:3px!important;
  color:#85928b!important;
  font-size:8px!important;
  font-weight:800!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}
body.ayv-final-5020 .ayvibes-week-strip-head strong{
  color:#34473e!important;
  font-size:16px!important;
  line-height:1!important;
}
body.ayv-final-5020 .ayvibes-week-strip-head a{
  padding:7px 10px!important;
  border-radius:999px!important;
  background:#e5efe9!important;
  color:#536f61!important;
  font-size:9px!important;
  font-weight:800!important;
  text-decoration:none!important;
}
body.ayv-final-5020 .ayvibes-week-strip-scroll{overflow-x:auto!important;padding-bottom:3px!important}
body.ayv-final-5020 .ayvibes-week-strip-grid{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(58px,1fr))!important;
  gap:5px!important;
  min-width:480px!important;
}
body.ayv-final-5020 .ayvibes-week-day{
  display:flex!important;
  min-height:84px!important;
  padding:9px 7px!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  border:1px solid rgba(76,112,95,.1)!important;
  border-radius:12px!important;
  background:#fafcfb!important;
  color:#53635b!important;
  text-align:left!important;
}
body.ayv-final-5020 button.ayvibes-week-day{cursor:pointer!important}
body.ayv-final-5020 .ayvibes-week-day small{color:#87928d!important;font-size:8px!important;font-weight:800!important;text-transform:uppercase!important}
body.ayv-final-5020 .ayvibes-week-day strong{margin:5px 0 auto!important;color:#35483f!important;font-size:20px!important;line-height:1!important}
body.ayv-final-5020 .ayvibes-week-day span{color:#8a958f!important;font-size:8px!important;line-height:1.25!important}
body.ayv-final-5020 .ayvibes-week-day.has-event{
  background:color-mix(in srgb,var(--event-color) 12%,#fff)!important;
  border-color:color-mix(in srgb,var(--event-color) 23%,#fff)!important;
}
body.ayv-final-5020 .ayvibes-week-day.is-today{box-shadow:0 0 0 2px rgba(105,143,124,.13)!important}
body.ayv-final-5020 .ayvibes-week-strip-list{display:grid!important;gap:5px!important;margin-top:9px!important}
body.ayv-final-5020 .ayvibes-week-strip-list button{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  gap:2px 8px!important;
  align-items:center!important;
  min-height:42px!important;
  padding:7px 9px!important;
  border:1px solid rgba(76,112,95,.1)!important;
  border-radius:11px!important;
  background:#fbfcfb!important;
  color:#34473e!important;
  text-align:left!important;
}
body.ayv-final-5020 .ayvibes-week-strip-list button>span{grid-row:1/3;color:#6d8779!important;font-size:9px!important;font-weight:800!important}
body.ayv-final-5020 .ayvibes-week-strip-list strong{font-size:10.5px!important;line-height:1.25!important}
body.ayv-final-5020 .ayvibes-week-strip-list small{grid-column:2;color:#87918c!important;font-size:8.5px!important}


/* 5.0.7 — Seasonal calendar repaired: list on left, month grid on right, cleaner August–September programme. */
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-calendar-month{
  display:grid!important;
  grid-template-columns:minmax(280px,.9fr) minmax(0,1.15fr)!important;
  grid-template-areas:"head head" "list grid" "dots dots"!important;
  gap:14px 16px!important;
  align-items:start!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-head{grid-area:head!important;margin-bottom:0!important}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-list{
  grid-area:list!important;
  margin-top:0!important;
  max-height:418px!important;
  overflow:auto!important;
  align-content:start!important;
  padding-right:4px!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-grid{
  grid-area:grid!important;
  align-self:start!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-grid .day{
  cursor:default;
  min-height:58px!important;
  position:relative!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-grid .day.has-event{
  cursor:pointer!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-grid .day.has-event:hover,
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-list button:hover{
  border-color:rgba(55,109,84,.28)!important;
  box-shadow:0 8px 22px rgba(42,67,56,.07)!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-list button{
  min-height:68px!important;
  align-items:flex-start!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-list button em{
  width:34px!important;height:34px!important;border-radius:50%!important;display:grid!important;place-items:center!important;
  background:#eef5f1!important;color:#375b4c!important;font-style:normal!important;font-weight:700!important;font-size:12px!important;
}
body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-calendar-dots{margin-top:12px!important}

@media(max-width:980px){
  body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-calendar-month{
    grid-template-columns:1fr!important;
    grid-template-areas:"head" "list" "grid"!important;
  }
  body.ayv-final-5020 .ayvibes-seasonal-agenda-carousel .ayvibes-seasonal-agenda-list{max-height:none!important}
}
