/* Shared article rhythm, readable metadata and purpose-specific widgets. */
/* A low-specificity fallback also covers links inserted by shared widgets.
   Component rules keep their own navigation, card and button presentation. */
:where(a[href]) {
  color:#294536;
  text-decoration-line:underline;
  text-decoration-color:#a98933;
  text-decoration-thickness:1px;
  text-underline-offset:.2em;
  overflow-wrap:anywhere;
}
:where(a[href]:hover) {
  color:#1c3828;
  text-decoration-color:currentColor;
  text-decoration-thickness:2px;
}
:where(a[href]:focus-visible) {
  outline:2px solid #294536;
  outline-offset:3px;
}
/* Shared reading lists and companion routes also appear outside <main>. */
@layer editorial {
  html { --ll-nav-height:64px; --ll-search-slot:80px; }
  body .site-nav .header-languages { display:flex!important; align-items:center!important; gap:0!important; margin:0!important; padding:0!important; }
  body .site-nav .header-languages a { display:flex!important; align-items:center!important; justify-content:center!important; min-width:44px!important; min-height:44px!important; padding:0 5px!important; color:#294536!important; font-size:14px!important; font-weight:400!important; line-height:1.4!important; text-decoration:none!important; border-radius:0!important; border-bottom:2px solid transparent!important; }
  body .site-nav .header-languages a[aria-current] { border-bottom-color:#294536!important; font-weight:600!important; }
  body .site-nav .header-languages a:hover { background:#edf3ef!important; }
  body .site-nav .nav-right { top:var(--ll-nav-height)!important; }
  body .site-nav .nav-right .ddmenu { top:calc(var(--ll-nav-height) + var(--ll-search-slot))!important; }
  body .site-nav .nav-search-mobile { box-sizing:border-box!important; height:48px!important; min-height:48px!important; margin:16px 12px!important; padding:0 8px!important; border:1px solid #819487!important; border-radius:4px!important; background:#fff!important; flex-shrink:0!important; }
  body .site-nav .nav-search-mobile:focus-within { border-color:#294536!important; }
  body .site-nav .nav-search-mobile input { min-height:44px!important; padding:8px 4px!important; font-size:15px!important; line-height:1.4!important; }
  body .site-nav .nav-search-mobile button { display:flex!important; align-items:center!important; justify-content:center!important; min-width:44px!important; min-height:44px!important; padding:0!important; }
  body .site-nav .nav-main { padding:0 12px 12px!important; }
  body .site-nav .nav-main>.nav-btn[href*="search"] { display:none!important; }
  body .site-nav .nav-main>.nav-btn,body .site-nav .nav-main>.nav-dropdown>.nav-btn { font-size:16px!important; font-weight:600!important; border-radius:3px!important; }
  body .site-nav .ddmenu-back { gap:10px!important; padding-inline:18px!important; }
  body .site-nav .ddmenu-menu-icon { flex-shrink:0; color:#294536; }
  @media(max-width:1199px) {
    body .site-nav .header-primary { display:none!important; }
    body .site-nav .logo { margin-right:auto!important; }
  }
  @media(max-width:600px) {
    html { --ll-nav-height:108px; }
    body:has(.site-nav) { padding-top:var(--ll-nav-height)!important; }
    body .site-nav { height:var(--ll-nav-height)!important; min-height:var(--ll-nav-height)!important; flex-wrap:wrap!important; align-content:flex-start!important; gap:0!important; }
    body .site-nav .logo { height:64px!important; }
    body .site-nav .header-tools { order:5!important; flex:0 0 100%!important; width:100%!important; height:44px!important; justify-content:center!important; }
    body .site-nav .header-languages { justify-content:center!important; }
    body .site-nav .nav-scrim { inset:var(--ll-nav-height) 0 0!important; height:calc(100dvh - var(--ll-nav-height))!important; }
    html { scroll-padding-top:calc(var(--ll-nav-height) + 16px)!important; }
  }
  /* Desktop navigation stays beside the article; smaller screens use the drawer. */
  @media(min-width:1200px) {
    body:has(.site-nav) { padding-left:300px!important; }
    body .site-nav .nav-right { display:flex!important; left:0!important; right:auto!important; width:300px!important; border-left:0!important; border-right:1px solid #dce2de!important; }
    body .site-nav .nav-hamburger { display:none!important; }
    body .site-nav .nav-scrim { display:none!important; }
    body .site-nav .nav-main>.nav-btn[href*="search"] { display:none!important; }
    body .site-nav .nav-right .ddmenu { left:0!important; right:auto!important; width:300px!important; visibility:hidden!important; transform:none!important; transition:none!important; }
    body .site-nav .nav-right .panel-open>.ddmenu { visibility:visible!important; }
  }
  @media(min-width:1200px) and (max-width:1499px) {
    body .art-body.article-layout { grid-template-columns:minmax(0,1fr)!important; }
    body .art-body.article-layout .article-sidebar { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:1.5rem!important; }
    body .art-body.article-layout .article-sidebar>* { min-width:0; }
  }
  @media print {
    body:has(.site-nav) { padding-left:0!important; }
  }
  /* Navigation categories must be distinct from destination links and notes. */
  body .site-nav .ddmenu .dd-section-label {
    display:block!important; margin:0!important; padding:12px 18px!important;
    background:#edf3ef!important; border:0!important; border-block:1px solid #d4dfd8!important;
    color:#213b2b!important; font-family:'Source Sans 3',sans-serif!important;
    font-size:18px!important; font-weight:600!important; line-height:1.35!important;
    letter-spacing:normal!important; text-transform:none!important;
  }
  body .site-nav .ddmenu .dd-grid { background:#fff!important; }
  body .site-nav .ddmenu .dditem { display:block!important; min-height:44px!important; padding:12px 18px!important; }
  body .site-nav .ddmenu .dditem strong { font-size:16px!important; font-weight:400!important; line-height:1.4!important; }
  body .site-nav .ddmenu .dditem span { font-size:14px!important; font-weight:400!important; line-height:1.5!important; margin-top:4px!important; }
  body .site-nav .ddmenu .dd-section-label~.dd-section-label { margin-top:12px!important; }
  body .ll-official-resources .ll-resource-list,
  body .ll-official-resources .ll-resource-group .ll-resource-list {
    display:block!important; list-style:disc!important; padding-left:1.25rem!important; margin:1rem 0 0!important;
  }
  body .ll-official-resources .ll-resource-list li { margin:.45rem 0!important; padding:0!important; border:0!important; background:transparent!important; }
  body .ll-official-resources .ll-resource-list a {
    display:inline!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important;
    box-shadow:none!important; color:#294536!important; font-size:17px!important; font-weight:400!important; line-height:1.6!important;
    text-decoration:underline!important; text-decoration-color:#809487!important; text-underline-offset:3px!important; overflow-wrap:anywhere;
  }
  body .ll-official-resources .ll-resource-list a:hover { text-decoration-color:currentColor!important; }
  body .ll-official-resources .ll-resource-groups { gap:1.5rem 2rem!important; }
  body .ll-official-resources .ll-resource-group { padding:0!important; border:0!important; background:transparent!important; box-shadow:none!important; }
  body .ll-official-resources .ll-resource-group h3 { font-size:20px!important; font-weight:600!important; line-height:1.4!important; }
  body .cross-border-guide,body main aside.cross-border-guide {
    box-sizing:border-box!important; border:0!important; border-top:1px solid #ccd8cf!important; border-radius:0!important;
    box-shadow:none!important; background:transparent!important; padding:1.75rem 0!important; margin:2rem 0!important;
  }
  body>.cross-border-guide { width:min(1080px,calc(100% - 2.5rem))!important; margin:2rem auto!important; }
  body .cross-border-guide__eyebrow { margin:0 0 .5rem!important; color:#59665e!important; font-size:14px!important; font-weight:400!important; text-transform:none!important; letter-spacing:normal!important; }
  body .cross-border-guide h2 { font-family:'Source Sans 3',sans-serif!important; font-size:26px!important; font-weight:600!important; line-height:1.3!important; margin:0 0 .75rem!important; }
  body .cross-border-guide p { font-size:18px!important; line-height:1.6!important; }
  body .cross-border-guide__links { gap:.5rem 1.5rem!important; margin-top:.75rem!important; }
  body .cross-border-guide__links a {
    display:inline-flex!important; align-items:center!important; min-height:44px!important; padding:.35rem 0!important;
    border:0!important; border-radius:0!important; background:transparent!important; color:#294536!important; font-size:17px!important;
    font-weight:600!important; text-decoration:underline!important; text-decoration-color:#809487!important; text-underline-offset:4px!important;
  }
  body .cross-border-guide__links a:hover { text-decoration-color:currentColor!important; }
  body .page-meta--updated { box-sizing:border-box!important; display:block!important; width:min(1180px,calc(100% - 2.5rem))!important; max-width:1180px!important; margin:1.5rem auto!important; padding:0!important; border:0!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; color:#59665e!important; font-family:'Source Sans 3',sans-serif!important; font-size:15px!important; line-height:1.6!important; font-weight:400!important; text-align:left!important; }
  body .page-meta--updated :is(span,strong,time) { color:inherit!important; font-size:15px!important; font-weight:400!important; }
  body .page-meta--updated strong { font-weight:600!important; margin-right:.35rem!important; }
  body footer.site-footer :is(.footer-brand-desc,.footer-copy,.footer-bottom-link,.footer-share-label,.footer-small-label),
  body footer.site-footer .footer-full-directory .footer-links a,
  body footer.site-footer :is(.footer-community-intro p,.footer-menu-show,.footer-menu-hide,.footer-share>span) { font-size:14px!important; line-height:1.6!important; }
  body .ll-event-calendar-widget .ll-widget-kicker { font-size:14px!important; font-weight:400!important; text-transform:none!important; letter-spacing:normal!important; color:#59665e!important; }
  body .ll-event-calendar-widget .ll-event-stay-cta { padding:1rem 0 0!important; border:0!important; border-top:1px solid #ccd8cf!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; }
  body .ll-event-calendar-widget .ll-event-stay-cta__title { font-family:'Source Sans 3',sans-serif!important; font-size:18px!important; line-height:1.4!important; font-weight:600!important; }
  body .ll-event-calendar-widget .ll-event-stay-cta__text { font-size:15px!important; line-height:1.6!important; }
  body .ll-event-calendar-widget .ll-event-stay-cta__button { width:auto!important; padding:.35rem 0!important; border:0!important; border-radius:0!important; background:transparent!important; color:#294536!important; font-family:'Source Sans 3',sans-serif!important; font-size:16px!important; font-weight:600!important; line-height:1.5!important; min-height:44px!important; text-decoration:underline!important; text-underline-offset:3px!important; }
  @media(max-width:600px) {
    body>.cross-border-guide,body .page-meta--updated { width:calc(100% - 2rem)!important; }
    body .cross-border-guide h2 { font-size:24px!important; }
    body .cross-border-guide__links { display:flex!important; flex-direction:column!important; align-items:flex-start!important; }
  }
}
@layer editorial {
  body main h1[class],body main h1:not([class]),body main h1[class] *,body main h1:not([class]) * { font-family:'Source Serif 4',serif!important; font-weight:600!important; }
  body main :is(section,article,figure,fieldset,aside,div):not([class*="leaflet"]):not([class*="progress"]):not([class*="icon"]) { border-radius:0!important; box-shadow:none!important; }
  body main :is(img,picture,iframe) { border-radius:0!important; }
  body main :is(.art-hero,.fishing-hero):not(.has-hero-image) { min-height:0!important; padding:0!important; background:#fff!important; }
  body main .art-hero:not(.has-hero-image) .art-hero-inner { margin:2.25rem auto 1.75rem!important; }
  body main .fishing-hero::after { display:none!important; }
  body main :is(.art-eyebrow,.hero-eyebrow,.section-kicker,.section-label,.fishing-fact-badge,.fishing-author-badge,.art-meta,.art-byline,.art-meta-dot,.last-checked,.search-quick>span) { color:#59665e!important; background:transparent!important; opacity:1!important; font-size:14px!important; font-weight:400!important; text-transform:none!important; letter-spacing:normal!important; line-height:1.5!important; }
  body main .art-meta :is(span,a,time) { color:#59665e!important; opacity:1!important; text-transform:none!important; letter-spacing:normal!important; }
  body main .art-hero p { color:#425147!important; }
  body main .art-eyebrow a { color:#59665e!important; }
  body main .economy-hero-stat a { color:#294536!important; text-decoration:underline!important; text-underline-offset:4px!important; }
  body main .hotel-filter-nav a { color:#294536!important; background:#fff!important; border:1px solid #a9b6ad!important; min-height:44px!important; font-size:15px!important; font-weight:600!important; }
  body main .hotel-filter-nav a:hover { background:#edf3ee!important; }
  body main .section-divider-gold span { color:#59665e!important; font-weight:600!important; text-transform:none!important; letter-spacing:normal!important; }
  body main .art-meta { margin-top:1rem!important; }
  body main :is(.article-content,.article-copy,.fishing-content) p { line-height:1.65!important; }
  body main :is(.content-section,.section)>h2 { font-size:26px!important; font-weight:600!important; line-height:1.3!important; color:#213b2b!important; }
  body main :is(.article-content,.article-copy) .content-section+.content-section { border-top:1px solid #dce2de!important; }
  body main :is(.comparison-card,.plan-card,.guide-card,.stay-type-card,.region-card,.topic-card,.ll-decision-card,.ll-shortcut-card,.ll-plan-next-card) { background:transparent!important; border:0!important; border-top:1px solid #ccd8cf!important; padding:1.15rem 0!important; }
  body main :is(.comparison-card,.plan-card,.guide-card,.stay-type-card,.ll-decision-card,.ll-shortcut-card)>:is(h3,strong) { display:block!important; font-size:21px!important; line-height:1.35!important; color:#213b2b!important; font-weight:600!important; margin:0 0 .65rem!important; }
  body main :is(.comparison-card,.plan-card,.guide-card,.stay-type-card,.ll-shortcut-card)>:is(p,span,small) { color:#425147!important; font-size:16px!important; line-height:1.6!important; }
  body main :is(.comparison-grid,.ll-decision-grid,.ll-shortcut-grid) { gap:1.25rem 2rem!important; }
  body main :is(.weather-quick-grid,.weather-season-grid,.weather-region-grid,.weather-pack-grid,.weather-month-grid,.weather-history-grid,.weather-record-grid) { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:1.25rem 1.75rem!important; }
  body main :is(.weather-quick-card,.weather-season-card,.weather-region-card,.weather-pack-card,.weather-month-card,.weather-record-card,.weather-history-card) { border:0!important; border-top:1px solid #ccd8cf!important; background:transparent!important; padding:1.1rem 0!important; }
  body main :is(.weather-quick-card,.weather-season-card,.weather-region-card,.weather-pack-card,.weather-month-card,.weather-record-card,.weather-history-card) h3 { font-size:20px!important; font-weight:600!important; line-height:1.3!important; margin:0 0 .65rem!important; }
  body main :is(.weather-widget,.weather-decision-box,.weather-trip-check,.bw-widget,.city-quick-facts,.panevezys-facts) { background:#f1f5f2!important; border:1px solid #ccd8cf!important; padding:1.25rem!important; }
  body main :is(.weather-decision-list,.panevezys-facts dl)>div { border:0!important; border-top:1px solid #ccd8cf!important; border-radius:0!important; background:transparent!important; padding:.65rem 0!important; }
  body main :is(.weather-decision-list,.weather-season-card,.weather-metric,.panevezys-facts) dt { font-size:14px!important; line-height:1.5!important; color:#59665e!important; font-weight:400!important; letter-spacing:normal!important; text-transform:none!important; }
  body main :is(.weather-decision-list,.panevezys-facts) dd { font-size:16px!important; font-weight:600!important; }
  body main .fact-row :is(.fl,.fr) { color:#425147!important; font-size:15px!important; }
  body main .fact-row .fr { color:#213b2b!important; }
  body main .weather-tabs { flex-wrap:wrap!important; overflow:visible!important; padding-bottom:.25rem!important; }
  body main .weather-tab { font-size:15px!important; font-weight:600!important; letter-spacing:normal!important; }
  body main :is(.weather-current-main,.weather-metric) { border-radius:0!important; box-shadow:none!important; border:0!important; border-top:1px solid #ccd8cf!important; background:#fff!important; padding:1rem!important; }
  body main .weather-current-grid { grid-template-columns:repeat(3,minmax(0,1fr))!important; }
  body main .weather-current-main { grid-column:1 / -1!important; display:grid!important; grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important; align-items:center!important; gap:.5rem 1rem!important; }
  body main .weather-current-main h3 { grid-column:1!important; margin:0!important; font-size:23px!important; font-weight:600!important; letter-spacing:normal!important; text-transform:none!important; color:#213b2b!important; }
  body main .weather-current-main>p { grid-column:2!important; margin:0!important; font-size:15px!important; }
  body main .weather-metric dd { font-size:19px!important; line-height:1.4!important; font-weight:600!important; }
  body main .weather-day-row { border:0!important; border-top:1px solid #ccd8cf!important; background:transparent!important; padding:.8rem 0!important; }
  body main :is(.weather-day-row,.weather-day-row>span,.weather-day-row small,.weather-month-stat span,.weather-month-card p,.weather-widget-source,.weather-live-meta) { color:#425147!important; }
  body main .weather-month-stat { background:#f1f5f2!important; border:0!important; border-radius:0!important; padding:.7rem!important; }
  body main .weather-month-stat span { font-size:14px!important; line-height:1.4!important; text-transform:none!important; font-weight:400!important; }
  body main :is(.weather-source-note,.planning-checked,.planning-source,.city-source-date,.city-source-note,.fishing-photo-credit,.fishing-photo-limitation,.stay-search-disclosure,.economy-source-count,.fishing-chapter-link span,.fishing-photo-caption) { color:#59665e!important; font-size:14px!important; line-height:1.5!important; text-transform:none!important; letter-spacing:normal!important; }
  body main :is(.tip-box,.city-tip-box,.tldr-box,.weather-warning-note,.fishing-notice,.event-note) { background:#f8f6ef!important; border:0!important; border-left:3px solid #b99b47!important; padding:1rem 1.2rem!important; color:#425147!important; }
  body main :is(.tip-box,.city-tip-box,.tldr-box,.weather-warning-note,.event-note) :is(p,strong,span,small,a) { color:#425147!important; }
  body main .fishing-notice-legal { border-left-color:#a64535!important; background:#fff5f2!important; }
  body main .stay-base-chooser { background:transparent!important; border:0!important; border-top:3px solid #294536!important; padding:1.5rem 0!important; }
  body main .stay-base-chooser__grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:0 2rem!important; }
  body main .stay-base-chooser__grid a { border:0!important; border-top:1px solid #ccd8cf!important; border-radius:0!important; background:transparent!important; padding:1rem 0!important; min-height:0!important; }
  body main .stay-base-chooser__grid span { color:#59665e!important; font-size:14px!important; font-weight:400!important; letter-spacing:normal!important; }
  body main .stay-base-chooser__grid strong { font-size:20px!important; font-weight:600!important; }
  body main .stay-base-chooser__grid small { font-size:15px!important; color:#425147!important; line-height:1.5!important; }
  body main .accommodation-directory__grid a { background:transparent!important; border:0!important; border-bottom:1px solid #ccd8cf!important; border-radius:0!important; padding:.75rem 0!important; font-weight:600!important; }
  body main :is(.dish-card,.city-hub-card,.destination-card) { background:transparent!important; border:0!important; padding:0!important; }
  body main .dish-card-content { padding:1rem 0!important; }
  body main .dish-card-cta { color:#294536!important; font-size:15px!important; text-transform:none!important; letter-spacing:normal!important; text-decoration:underline!important; text-underline-offset:4px!important; }
  body main .recipe-stats-bar { background:#f1f5f2!important; border-block:1px solid #ccd8cf!important; padding:1rem!important; }
  body main :is(.recipe-stat-label,.recipe-rating-label,.ll-recipe-engagement label) { color:#59665e!important; font-size:14px!important; text-transform:none!important; letter-spacing:normal!important; }
  body main .rating-summary { color:#59665e!important; font-size:14px!important; }
  body main .fishing-start-selector { background:#f1f5f2!important; border:1px solid #ccd8cf!important; }
  body main .fishing-start-selector dl>div { border:0!important; border-top:1px solid #ccd8cf!important; border-radius:0!important; background:transparent!important; padding:.8rem 0!important; }
  body main .fishing-decision-grid { border:0!important; border-top:3px solid #294536!important; background:transparent!important; padding:1.4rem 0!important; }
  body main .fishing-guide-card { border:0!important; border-top:1px solid #ccd8cf!important; background:transparent!important; padding:1rem 0!important; }
  body main .fishing-guide-card>span { border-radius:0!important; color:#294536!important; background:transparent!important; font-size:16px!important; font-weight:600!important; }
  body main .fishing-guide-card strong { font-size:19px!important; font-weight:600!important; }
  body main .fishing-guide-card small { font-size:15px!important; color:#425147!important; }
  body main :is(.fishing-toc,.fishing-series,.page-toc) { border:0!important; border-block:1px solid #ccd8cf!important; background:transparent!important; padding:1rem 0!important; }
  body main .fishing-series-links span { color:#59665e!important; }
  body main :is(.event-stat-strip,.event-timing-section,.next-events,.events27-watch) { background:#f1f5f2!important; color:#425147!important; border:1px solid #ccd8cf!important; }
  body main .event-stat-strip :is(span,strong,time) { color:#425147!important; }
  body main .event-stat-strip .event-stat-number { color:#213b2b!important; font-weight:600!important; }
  body main .event-stat-strip :is(.event-stat-label,.event-stat-unit,.event-stat-period) { color:#425147!important; opacity:1!important; font-size:14px!important; line-height:1.5!important; text-transform:none!important; letter-spacing:normal!important; }
  body main :is(.event-meta .meta-label,.event-date-review,.event-date-review span,.christmas-date-label) { color:#59665e!important; font-size:14px!important; line-height:1.5!important; font-weight:400!important; text-transform:none!important; letter-spacing:normal!important; }
  body main :is(.event-card,.events27-card,.event-calendar-card) { background:transparent!important; border:0!important; border-top:1px solid #ccd8cf!important; padding:1.25rem 0!important; }
  body main :is(.event-card-button,.event-card-button--stay):not(.secondary) { background:#294536!important; color:#fff!important; border:1px solid #294536!important; }
  body main .event-card-button.secondary { background:#fff!important; color:#294536!important; border:1px solid #a9b6ad!important; }
  body main .event-card-button { display:inline-flex!important; align-items:center!important; min-height:44px!important; padding:.6rem .85rem!important; border-radius:4px!important; font-size:15px!important; font-weight:600!important; line-height:1.4!important; }
  body main :is(.event-card-button,.event-card-button--stay)>:is(span,strong) { color:inherit!important; }
  body main .events27-stay-box { background:#f1f5f2!important; border:1px solid #ccd8cf!important; color:#425147!important; }
  body main .events27-stay-box :is(p,span,h3,strong,a) { color:#294536!important; }
  body main .events27-reviewed { color:#59665e!important; font-size:14px!important; }
  body main .events27-reviewed :is(span,a,time) { color:#59665e!important; }
  body main :is(.vr-eyebrow,.vr-kicker,.vr-warning-label,.vr-review-box,.vr-transparency,.vr-authority-type) { color:#59665e!important; font-size:14px!important; text-transform:none!important; letter-spacing:normal!important; }
  body main :is(.vc-status-state,.vc-status-detail) :is(span,strong,time) { color:#425147!important; }
  body main .vc-status :is(small,span,strong,time) { font-size:14px!important; line-height:1.5!important; letter-spacing:normal!important; text-transform:none!important; }
  body #main-content.vc-page { background:#fff!important; }
  body #main-content.vc-page .vc-hero { background:#fff!important; color:#213b2b!important; padding:2.25rem 0!important; }
  body #main-content.vc-page .vc-hero::before { display:none!important; }
  body #main-content.vc-page :is(.vc-kicker,.vc-deck,.vc-hero-highlights li) { color:#425147!important; }
  body #main-content.vc-page .vc-hero-highlights li { font-size:14px!important; }
  body #main-content.vc-page .vc-button-primary { background:#294536!important; border-color:#294536!important; color:#fff!important; }
  body #main-content.vc-page .vc-button-light { background:#fff!important; border-color:#a9b6ad!important; color:#294536!important; }
  body #main-content.vc-page .vc-hero-media { aspect-ratio:auto!important; background:transparent!important; border:0!important; overflow:visible!important; }
  body #main-content.vc-page .vc-hero-media::after { display:none!important; }
  body #main-content.vc-page .vc-hero-media img { height:auto!important; aspect-ratio:4/3!important; object-fit:cover!important; }
  body #main-content.vc-page .vc-hero-media figcaption { position:static!important; margin:.5rem 0 0!important; color:#59665e!important; font-size:14px!important; line-height:1.5!important; text-align:left!important; }
  body #main-content.vc-page .vc-hero-copy h1,body #main-content.vc-page .vc-hero-copy h1 * { color:#213b2b!important; opacity:1!important; }
  body #main-content.vc-page .vc-hero-year { color:inherit!important; font-size:inherit!important; }
  body #main-content.vc-page :is(.vc-section-label,.vc-eyebrow) { color:#59665e!important; font-size:14px!important; font-weight:400!important; letter-spacing:normal!important; text-transform:none!important; }
  body #main-content.vc-page .vc-next-links :is(span,small) { color:#59665e!important; font-size:14px!important; font-weight:400!important; letter-spacing:normal!important; text-transform:none!important; }
  body main .credit-spotlight { background:#294536!important; border-radius:0!important; box-shadow:none!important; }
  body main .credit-spotlight :is(p,strong,a,span) { color:#fff!important; }
  body main .credit-spotlight__eyebrow { font-size:14px!important; letter-spacing:normal!important; text-transform:none!important; font-weight:400!important; }
  body main :is(button,select,textarea,input:not([type="checkbox"],[type="radio"],[type="hidden"],[type="range"])) { min-height:44px; }
  body main :is(.bw-widget label,.bw-widget .bw-note,.pt-stat) { font-size:14px!important; line-height:1.5!important; }
  body main .pt-trainer { background:#234731!important; --pt-radius:0px; --pt-radius-sm:0px; --pt-shadow:none; --pt-shadow-card:none; --text-muted:#59665e; --pt-correct:#17613d; --pt-wrong:#9a3939; }
  body main .pt-trainer::before { display:none!important; }
  body main .pt-stat { background:transparent!important; border:0!important; color:#fff!important; border-radius:0!important; }
  body main .pt-progress { color:#fff!important; font-size:14px!important; letter-spacing:normal!important; }
  body main .pt-foot-hint { color:#fff!important; font-size:14px!important; letter-spacing:normal!important; }
  body main .pt-quiz-opt-num { font-size:14px!important; border-radius:0!important; }
  body main .pt-quiz-opt:not(.pt-correct):not(.pt-wrong) .pt-quiz-opt-num { color:#59665e!important; background:#f1f5f2!important; }
  body main .contact-info-card { background:#f1f5f2!important; border:1px solid #ccd8cf!important; color:#425147!important; }
  body main .contact-info-card :is(h3,p,a,span,strong,li) { color:#425147!important; }
  body main :is(.pt-help-btn,.pt-help-x) { min-width:44px!important; min-height:44px!important; }
  body main :is(.planning-table-scroll,.fishing-table-scroll,.credits-table-region,.table-wrap) { border-radius:0!important; box-shadow:none!important; }
  body main :is(.planning-table,.simple-table,.fishing-table) th { font-weight:600!important; }
  body main :is(.planning-table,.simple-table,.fishing-table) :is(th,td) { line-height:1.5!important; }
  body main :is(.site-faq,.faq-section) summary { padding-block:1rem!important; min-height:44px!important; }
  /* Older templates also use headers, navigation lists and inline badges. */
  body main :is(header,nav,form,details,table,ul,ol,pre,code,dl):not(.leaflet-container *) { border-radius:0!important; box-shadow:none!important; }
  body main span:not(.leaflet-container *):not([class*="icon"]):not([class*="progress"]) { border-radius:0!important; }
  body main a:not(.leaflet-container *):not([class*="btn"]):not([class*="button"]) { border-radius:0!important; }
  body main a:is([class*="btn"],[class*="button"]) { border-radius:4px!important; box-shadow:none!important; transform:none!important; }
  body main :is(small,caption,label,dt,code,[class*="label"],[class*="kicker"],[class*="eyebrow"],[class*="badge"],.page-toc-title,.page-toc-meta,.rs-label,.lbl,.cp-label,.k,.home-data-meta) { font-size:14px!important; line-height:1.5!important; font-weight:400!important; text-transform:none!important; letter-spacing:normal!important; }
  body main :is(p,li,time,label) { border-radius:0!important; box-shadow:none!important; }
  body main :is(nav a,.rel-link,.faq-links a,.page-toc-list a,.ll-city-base-links a,.ll-city-base-links strong) { font-size:15px!important; }
  body main :is(.section-divider-gold span,.community-panel>span,.fishing-chapter-all summary,.itinerary-summary span,.next-event-date,.event-card-date>span,.christmas-verification summary,.christmas-verification p,.event-city-index-links a,.vc-status-link,.vc-programme-time,.vc-source-line a,.vc-info-card a,.vc-car-actions a,.ll-weather-days strong,.ll-weather-days span,.ll-weather-source span,.ll-weather-actions a,.chapter-trail a,.chapter-trail strong,.pt-quiz-q,.hotel-card__price span,.hotel-card__meta dd,.ll-city-base-card>span,.wg-panel>p,.wg-deal p,.wg-step p,.wg-error-overlay) { font-size:14px!important; line-height:1.5!important; letter-spacing:normal!important; text-transform:none!important; }
  body main :is(.panevezys-attraction-card__position,.hotel-card__best-for,.attraction-card-tag) { font-size:14px!important; font-weight:400!important; text-transform:none!important; letter-spacing:normal!important; }
  body main :is(.economy-sector-card p,.contact-email-reveal p,.contact-faq p) { font-size:16px!important; line-height:1.6!important; }
  body main :is(.itinerary-summary li,.hotel-last-minute-offer__services li,.cv-rules li) { border:0!important; border-top:1px solid #ccd8cf!important; background:transparent!important; }
  body main .hotel-last-minute-offer__services li { border:0!important; padding:.25rem 0!important; font-size:14px!important; }
  body main .sp-filebox { border-radius:4px!important; }
  body main table th,body main .wg-preview-wrap iframe { box-shadow:none!important; }
  body main .event-month-heading::after { background:#ccd8cf!important; }
  body main .section-divider-gold::before,body main .section-divider-gold::after { background:#ccd8cf!important; }
  body main .fishing-start-selector dd a { font-size:15px!important; }
  body main.vc-page .vc-section :is(a,span) { font-size:14px!important; }
  body main .vr-breadcrumbs strong { font-size:14px!important; }
  body main .contact-grid details p { font-size:16px!important; line-height:1.6!important; }
  body main #reveal-btn { background:#fff!important; color:#294536!important; border:1px solid #a9b6ad!important; padding:.65rem .9rem!important; min-height:44px!important; }
  body main .vc-day-media::after { display:none!important; }
  body main .vc-day-media { overflow:visible!important; background:transparent!important; }
  body main .vc-day-media img { height:auto!important; aspect-ratio:3/2!important; object-fit:cover!important; }
  body main .vc-day-media figcaption { position:static!important; inset:auto!important; margin:.5rem 0 0!important; padding:0!important; color:#59665e!important; font-size:14px!important; background:transparent!important; }
  body main .phrase-invite { display:flex!important; align-items:center!important; gap:1.25rem!important; margin:2rem auto!important; max-width:none!important; padding:1.25rem 0!important; background:#fff!important; border:0!important; border-block:1px solid #ccd8cf!important; color:#294536!important; }
  body main .phrase-invite::before { display:none!important; }
  body main .phrase-invite-text { flex:1; min-width:0; }
  body main .phrase-invite-title { display:block!important; margin:0 0 .4rem!important; font-size:21px!important; font-weight:600!important; color:#294536!important; }
  body main .phrase-invite-sub { display:block!important; font-size:16px!important; line-height:1.6!important; color:#425147!important; opacity:1!important; }
  body main .phrase-invite a.phrase-invite-btn { display:inline-flex!important; align-items:center!important; justify-content:center!important; min-height:44px!important; padding:.65rem 1rem!important; border:1px solid #294536!important; background:#294536!important; color:#fff!important; font-size:15px!important; font-weight:600!important; border-radius:4px!important; box-shadow:none!important; transform:none!important; }
  body main .ll-collection-hero { background:#fff!important; padding:2.25rem 0!important; }
  body main .ll-collection-tools { background:#f1f5f2!important; border:1px solid #ccd8cf!important; }
  body main .ll-collection-panel { border:0!important; border-top:1px solid #ccd8cf!important; padding:1.5rem 0!important; }
  body main .ll-collection-card { border:0!important; background:transparent!important; }
  body main .ll-collection-card__body { padding:1rem 0!important; }
  body main :is(.ll-collection-counts span,.ll-collection-status,.ll-collection-help,.ll-collection-card__cuisine,.ll-collection-card__state) { font-size:14px!important; line-height:1.5!important; text-transform:none!important; letter-spacing:normal!important; }
  @media(max-width:540px) { body main .phrase-invite { flex-direction:column!important; align-items:flex-start!important; } }
  body main table :is(th,td) { font-size:16px!important; line-height:1.5!important; }
  body main table th { text-transform:none!important; letter-spacing:normal!important; font-weight:600!important; }
  body main table tr { border-radius:0!important; box-shadow:none!important; }
  body main table :is(th,td) { border-radius:0!important; }
  body main .economy-product-card__type { font-size:14px!important; line-height:1.5!important; text-transform:none!important; letter-spacing:normal!important; }
  body main .pt-foot-reset { color:#fff!important; }
  body main table :is(th,td)::before { font-size:14px!important; letter-spacing:normal!important; text-transform:none!important; }
  body main .season-strip { min-width:720px!important; }
  body main .season-strip-wrap { position:relative!important; }
  body main .season-strip th { font-size:14px!important; }
  body main.vc-page .vc-fact-grid dd { font-size:14px!important; }
  body main :is(.chapter-sub,.browse-sub,.browse-desc,.home-card-link,.ll-recipe-engagement>p,.pt-brand-sub,.sp-filemeta,.sp-hint,.faq-link-label,.events25-reviewed,.events27-reviewed,.ll-side-widget__eyebrow,.ll-weather-now__city,.ll-weather-day__date,.ll-weather-day__rain) { font-size:14px!important; line-height:1.5!important; text-transform:none!important; letter-spacing:normal!important; }
  body main .browse-name { font-size:18px!important; line-height:1.4!important; font-weight:600!important; }
  body main :is(.dish-card-img-wrap,.dish-card-img-placeholder,.cuisine-intro-image,.gallery-placeholder,.dish-gallery-item,.hotel-last-minute-offer__media,.hotel-last-minute-offer__image) { background:#f1f5f2!important; }
  body main :is(.ll-recipe-engagement,.recipe-rating,.price-strip,.cross-border-guide) { background:#f1f5f2!important; }
  body main :is(.phrase-tip,.wg-deal) { background:#294536!important; }
  body main :is(.art-hero,.home-hero,.search-hero,.vc-hero,.vr-hero,.credit-spotlight,.pt-trainer,.ll-recipe-engagement,.events27-card)::before,
  body main :is(.art-hero,.home-hero,.search-hero,.vc-hero,.vr-hero,.credit-spotlight,.pt-trainer)::after { display:none!important; }
  /* The archive and future calendar use the same open layout as other guides. */
  body main:is(.events25,.events27) { background:#fff!important; }
  body main :is(.events25-shell,.events27-shell) { width:min(1180px,calc(100% - 2.5rem))!important; padding-top:2rem!important; }
  body main :is(.events25-hero,.events27-hero) { border:0!important; padding:0 0 1.5rem!important; background:#fff!important; }
  body main .events27-trust { gap:.5rem 1.5rem!important; }
  body main .events27-trust span { border:0!important; padding:0!important; background:transparent!important; font-size:14px!important; font-weight:400!important; }
  body main :is(.events25-stats,.events27-stats) { background:#f1f5f2!important; color:#294536!important; border-block:1px solid #ccd8cf!important; }
  body main :is(.events25-stat,.events27-stat) { border-color:#ccd8cf!important; padding:1.25rem!important; }
  body main :is(.events25-stat,.events27-stat) :is(span,strong,small) { color:#294536!important; }
  body main :is(.events25-stat,.events27-stat) strong { font-size:28px!important; font-weight:600!important; line-height:1.2!important; }
  body main .events25-stat span { font-size:14px!important; font-weight:400!important; }
  body main :is(.events25-filters,.events27-filter) { background:#f1f5f2!important; border:1px solid #ccd8cf!important; padding:1.25rem!important; }
  body main .events27-months { flex-wrap:wrap!important; overflow:visible!important; gap:.5rem!important; }
  body main .events27-month { font-weight:600!important; font-size:15px!important; transition:none!important; }
  body main .events27-month.is-active { background:#294536!important; color:#fff!important; border-color:#294536!important; }
  body main .events27-month span { min-width:auto!important; height:auto!important; background:transparent!important; font-size:14px!important; color:inherit!important; }
  body main .events27-chip-clear { border-radius:4px!important; min-height:44px!important; }
  body main :is(.events25-status,.events27-status,.events25-tag,.events27-tag,.events27-cost) { border:0!important; padding:0!important; background:transparent!important; font-size:14px!important; font-weight:400!important; line-height:1.5!important; }
  body main :is(.events25-tags,.events27-tags) { gap:.4rem 1rem!important; }
  body main .events25-card { border:0!important; border-top:1px solid #ccd8cf!important; background:transparent!important; padding:1.25rem 0!important; }
  body main :is(.events25-card-top,.events27-card-top) { padding:0 0 .75rem!important; background:transparent!important; }
  body main :is(.events25-body,.events27-card-body) { padding:1rem 0 0!important; }
  body main .events27-meta { margin:1rem 0 0!important; padding:1rem 0 0!important; background:transparent!important; }
  body main .events27-source { grid-template-columns:1fr!important; }
  body main :is(.events27-source-prefix,.events27-source-name) { font-size:14px!important; letter-spacing:normal!important; text-transform:none!important; }
  body main .events27-source-name { font-size:16px!important; text-decoration:underline!important; text-underline-offset:3px!important; }
  body main .events27-card-links a { padding:.5rem 0!important; min-height:44px!important; border:0!important; background:transparent!important; font-size:15px!important; font-weight:600!important; text-decoration:underline!important; text-underline-offset:3px!important; }
  body main .events27-card-links { gap:.5rem 1.25rem!important; }
  body main.events27 .events27-stay a.events27-stay-link { background:#294536!important; border:1px solid #294536!important; border-radius:4px!important; box-shadow:none!important; transform:none!important; }
  body main.events27 .events27-stay a.events27-stay-link:hover { background:#213b2b!important; }
  body main .events27-stay-eyebrow { color:#fff!important; font-size:14px!important; letter-spacing:normal!important; text-transform:none!important; }
  body main .events27-final { border:0!important; border-left:3px solid #597160!important; background:#f1f5f2!important; }
  body main .events27-watch { border:0!important; border-top:1px solid #ccd8cf!important; background:transparent!important; padding:1rem 0!important; }
  body main .events27-method>div { border:0!important; border-top:1px solid #ccd8cf!important; padding:1rem 0!important; background:transparent!important; }
  body main .events27-calendar-list a { border:0!important; border-bottom:1px solid #ccd8cf!important; padding:.75rem 0!important; background:transparent!important; text-decoration:underline!important; text-underline-offset:3px!important; }
  /* Article endings must share the reading column, even outside its wrapper. */
  body main :is(.source-note,.ll-sources,.editorial-source) { color:#59665e!important; font-size:15px!important; line-height:1.6!important; }
  body main :is(.source-note,.ll-sources,.editorial-source) a,body main .sophiichka-table-jump { color:#294536!important; text-decoration:underline!important; text-decoration-color:#809487!important; text-underline-offset:3px!important; overflow-wrap:anywhere; }
  body main :is(.source-note,.ll-sources,.editorial-source) a:hover { text-decoration-color:currentColor!important; }
  body main>:is(.source-note,.ll-sources) { width:min(1000px,calc(100% - 2.5rem)); margin:2rem auto!important; }
  body main aside.source-note { padding:1.25rem 0 0!important; border-top:1px solid #ccd8cf!important; background:transparent!important; }
  body main aside.source-note>p { margin:0 0 .65rem!important; color:#294536!important; font-size:18px!important; font-weight:600!important; }
  body main aside.source-note ul { margin:0!important; padding:0!important; list-style:none!important; }
  body main aside.source-note li { margin:.4rem 0!important; }
  body main .ll-sources h2 { font-size:21px!important; font-weight:600!important; text-transform:none!important; letter-spacing:normal!important; }
  body main .ll-sources li { font-size:15px!important; }
  body main .ll-sources li::before { border-radius:0!important; background:transparent!important; color:#59665e!important; font-size:14px!important; }
  body main .ll-sources-note { color:#59665e!important; font-size:14px!important; }
  body main .share-row { width:min(100%,1000px); margin:2rem auto!important; padding:1rem 0!important; background:transparent!important; border:0!important; border-block:1px solid #ccd8cf!important; gap:1rem!important; }
  body main>.share-row { width:min(1000px,calc(100% - 2.5rem)); }
  body main .dish-article-body~:is(.source-note,.share-row) { width:min(716px,calc(100% - 2.5rem)); }
  body main .share-row-label { font-size:15px!important; font-weight:600!important; }
  body main .share-row-icons { gap:.5rem!important; }
  body main .share-row-btn { width:44px!important; height:44px!important; min-width:44px!important; border-radius:4px!important; border:1px solid #a9b6ad!important; background:#fff!important; color:#294536!important; box-shadow:none!important; transform:none!important; }
  body main .share-row-btn:hover,body main .share-row-btn.copied { background:#294536!important; color:#fff!important; }
  body main .related-dishes-strip { width:min(1180px,calc(100% - 2.5rem)); margin:2rem auto!important; padding:1.5rem 0 0!important; background:#fff!important; border-top:1px solid #ccd8cf!important; }
  body main .related-dishes-inner { max-width:none!important; margin:0!important; }
  body main .related-dishes-inner>h3 { margin:0 0 1.25rem!important; font-size:24px!important; font-weight:600!important; text-align:left!important; }
  body main .related-dishes-grid { grid-template-columns:repeat(5,minmax(0,1fr))!important; gap:1.5rem!important; align-items:start!important; }
  body main .related-dish-card { display:flex!important; align-items:stretch!important; gap:.65rem!important; padding:0!important; background:transparent!important; border:0!important; box-shadow:none!important; transform:none!important; }
  body main .related-dish-thumb { display:block!important; width:100%!important; height:auto!important; aspect-ratio:3/2!important; object-fit:cover!important; }
  body main .related-dish-name { font-size:16px!important; line-height:1.45!important; font-weight:600!important; text-align:left!important; text-decoration:underline!important; text-decoration-color:#809487!important; text-underline-offset:3px!important; }
  body main .related-dish-card:hover .related-dish-name { text-decoration-color:currentColor!important; }
  body main a.guide-card { color:#294536!important; text-decoration:none!important; }
  body main a.guide-card>strong { text-decoration:underline!important; text-decoration-color:#809487!important; text-underline-offset:3px!important; }
  body main .ll-card-heart { width:44px!important; height:44px!important; border-radius:4px!important; box-shadow:none!important; border:1px solid #a9b6ad!important; }
  body main .recipe-rating .star-btn { min-width:44px!important; min-height:44px!important; font-size:28px!important; color:#66756b!important; }
  body main .recipe-rating .star-btn:is(:hover,.star-on) { color:#80641e!important; }
  body main .recipe-card-v2 .ll-ingredient-list li { grid-template-columns:minmax(0,1fr) 44px!important; }
  body main .ll-add-ingredient { width:44px!important; height:44px!important; border-radius:4px!important; }
  @media(max-width:1100px) { body main .related-dishes-grid { grid-template-columns:repeat(3,minmax(0,1fr))!important; } }
  @media(max-width:850px) { body main .related-dishes-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; } }
  @media(max-width:480px) {
    body main .related-dishes-grid { grid-template-columns:1fr!important; }
    body main .related-dishes-inner>h3 { font-size:22px!important; }
  }
  @media(max-width:900px) {
    body main .weather-current-grid { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
    body main :is(.art-hero,.fishing-hero):not(.has-hero-image) .art-hero-inner { margin:1.75rem auto 1.5rem!important; }
  }
  @media(max-width:640px) {
    body main :is(.events25-stats,.events27-stats) { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
    body main :is(.events25-stat,.events27-stat) strong { font-size:24px!important; }
    body main.vr-page .vr-shell { width:calc(100% - 2.5rem)!important; margin-inline:auto!important; }
    body main :is(.weather-quick-grid,.weather-season-grid,.weather-region-grid,.weather-pack-grid,.weather-month-grid,.weather-history-grid,.weather-record-grid,.stay-base-chooser__grid) { grid-template-columns:1fr!important; }
    body main .weather-current-main { grid-template-columns:1fr!important; }
    body main .weather-current-main>p { grid-column:1!important; }
    body main :is(.weather-widget,.weather-decision-box,.weather-trip-check,.bw-widget,.city-quick-facts,.panevezys-facts) { padding:1rem!important; }
    body main :is(.content-section,.section)>h2 { font-size:24px!important; }
    body main :is(.comparison-grid,.ll-decision-grid,.ll-shortcut-grid) { gap:1rem!important; }
  }
}
