/*
Theme Name: Museum Lite
Theme URI: https://www.stockholmmuseum.com
Author: Stockholm Museum
Description: Lightweight custom theme scaffold for stockholmmuseum.com
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: museum-lite
*/

/* ==========================
   Base Typography
========================== */

.testtesttest{display:none;}

html {scrollbar-gutter: stable;}
body.lock-scroll {overflow: hidden;touch-action: none;} /* prevents scroll-jank on iOS Safari */
body{font-family:system-ui,sans-serif;font-size:16px;line-height:1.6;margin:0;color:#222;background-color: #fffefa;background:#fff;padding-top: 0px /* try #fdfcf7 or #f9f8f6 as alternatives */}
p,li,figcaption,cite,q{font-family:Mate,Georgia,serif;font-size:1.1rem;line-height:1.3;margin:0 0 1.2em;color:#333}
h1,h2,h3,h4,h5,h6{font-family:"Playfair Display",serif;font-weight:700;color:#222;line-height:1.25;margin:0 0 .8em}
h2{padding-top:20px!important;}
blockquote,.museum-highlight,.highlight-quote{font-family:"Mate",serif;font-size:1.1rem;line-height:1.5;font-style:italic;color:#444}
a{color:#1c4f91;text-decoration:underline;text-decoration-thickness:1.3px;text-underline-offset:3px;transition:color .25s ease,text-decoration-color .25s ease}
a:hover,a:focus{color:#0f3768;text-decoration-color:#0f3768;text-decoration-thickness:2px}
a:focus-visible{outline:2px dashed #aaa;outline-offset:3px}
a{color:#069;text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto}

.hero-subline{color:#ffffffe6;font-size:1.05rem;margin-top:8px;text-shadow:0 1px 2px #0009}

/* ===============================
   Section Spacing & Headings
================================ */
.museum-related,.museum-hotels,.anecdote,.category-nav{margin:3rem 0}
.museum-hotels h3{font-size:1.4rem;margin-bottom:1.5rem;font-weight:600}
.td-block-title{font-size:1.8rem!important;margin-bottom:1.5rem;font-weight:700}
.museum-content a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;color:#005bb5;transition:text-decoration-thickness .2s ease,color .2s ease}
.museum-content a:hover,.museum-content a:focus{text-decoration:underline;text-decoration-thickness:2px;color:#005bb5}

/*--------------------------------------
  MIXED
--------------------------------------*/
.front-section.intro-highlight .museum-card-thumb{aspect-ratio:auto;height:260px}
img.alignleft,.wp-caption.alignleft{float:left;margin:0 15px 15px 0}
img.alignright,.wp-caption.alignright{float:right;margin:0 0 15px 15px}
img.aligncenter,.wp-caption.aligncenter{display:block;margin-left:auto;margin-right:auto}
.classic-divider{background:url(../images/classic-divider.png) no-repeat center;background-size:100% auto;width:100%;max-width:512px;height:46px;margin:40px auto;opacity:.6}
.heading-icon{display:inline-block;margin-right:.4em}
.museum-content li,.entry-content li,.article-body li{margin:0 0 1.2em}
.dropdown-menu li,.footer-nav li,.museum-navbar__list li{margin:0}

/* ===============================
   Main Museum Content
================================ */
.museum-content p{line-height:1.65;margin-bottom:1.2em}

/* -----------------------------------
   Homepage Hero Title + Block Titles
----------------------------------- */
.homepage-hero-title{position:relative;font-family:"Playfair Display",serif!important;font-size:clamp(1.4rem,1vw + 1.1rem,2rem)!important;line-height:1.3!important;font-weight:700!important;text-align:center;color:#222!important;padding:1.2em 1.6em;margin:0 auto .8em;border-top:2px solid #d8c9b6;border-bottom:2px solid #d8c9b6;border-radius:6px;max-width:900px;background:url(/wp-content/themes/museum-lite/assets/images/paper-texture.webp) repeat;box-shadow:0 3px 8px #00000014;text-shadow:0 1px 2px #00000026;min-height:2.4em}
.homepage-hero-title::before{content:"";position:absolute;inset:0;background:#ffffffbf;border-radius:inherit;z-index:0}
.homepage-hero-title .hero-main,.homepage-hero-title .hero-sub{position:relative;z-index:1;display:block}
.hero-main{font-family:"Work Sans",sans-serif;text-shadow:0 2px 3px #00000040}
.hero-sub{font-family:"Cormorant",serif;font-size:.7em;font-style:italic;font-weight:300;color:#555;margin-top:.4em;line-height:1.2;text-shadow:0 1px 1px #0000001a}
.homepage-hero-title.hero-full{font-family:"Work Sans",sans-serif;font-size:clamp(3rem,6vw,5rem);font-weight:700;line-height:1.1;margin:1.5rem 0 2rem;text-align:center;color:#111}
.homepage-hero-title.hero-full .hero-sub{display:block;font-size:clamp(1.25rem,2vw,1.75rem);font-weight:400;margin-top:.75rem;color:#555}

.victorian-showcase{background:transparent;border:0;box-shadow:none;padding:0;margin:4rem auto 2rem;}
.victorian-panel{margin-bottom:2.25rem}
/*.td-block-title{font-family:"Playfair Display",serif;font-size:clamp(1.3rem,1.4vw,1.6rem)!important;font-weight:700;color:#222;margin-bottom:.6rem;padding-top:2rem!important;padding-bottom:.6rem;position:relative;display:block}*/
.td-block-title{margin:0 0 1.4rem!important;padding:0}
    
@media (max-width:600px) {
.td-block-title{font-size:1.6rem!important}
}
.td-block-title::after{content:"";display:block;width:120px;height:3px;margin-top:.55rem;background:linear-gradient(to right,#0089CE,transparent)}
.showcase-kicker{text-transform:uppercase;letter-spacing:.15em;font-size:.8rem;color:#0089CE;font-weight:700;margin-bottom:1rem}
.victorian-showcase{background:none;border:0;box-shadow:none;padding:0;margin:1rem auto}
.victorian-panel{margin-bottom:1rem}
.showcase-kicker{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:#0064A3;margin-bottom:0rem}
.showcase-deck{max-width:720px;margin:0 0 2rem;color:#666;font-size:1rem;line-height:1.6}
.showcase .museum-card.highlight{box-shadow:0 10px 30px #0000001f}
.hidden-gems-small .museum-card-title{font-size:1.15rem!important}

.td-block-title::after{content:"";display:block;height:2px;margin-top:.4em;background:linear-gradient(to right,#ccc,transparent)!important}
.td-block-title-wrap.blue .td-block-title::after{background:linear-gradient(to right,#0089CE,transparent)!important}
.td-block-title-wrap.gold .td-block-title::after{background:linear-gradient(to right,#C5A572,transparent)!important}
.td-block-title-wrap.green .td-block-title::after{background:linear-gradient(to right,#4C805A,transparent)!important}
.td-block-title-wrap.red .td-block-title::after{background:linear-gradient(to right,#B64D38,transparent)!important}
.td-block-title-wrap.gray .td-block-title::after{background:linear-gradient(to right,#777,transparent)!important}
.td-block-title.star-heading{width:100%;font-size:clamp(1.8rem,2.5vw,2.3rem);font-weight:800;text-align:center;margin:2em 0 1em;padding-bottom:.4em;border-bottom:3px solid #007ac8;color:#222}
.td-block-title.star-heading span{display:block;font-size:1rem;font-weight:400;color:#666}

@keyframes fadeSlideUp {
from{opacity:0;transform:translateY(8px)}
to{opacity:1;transform:translateY(0)}
}

/*----------------------------------------
  MUSEUM-STATS BAR
-----------------------------------------*/
/*----------------------------------------
  MUSEUM-STATS BAR (Premium)
-----------------------------------------*/
.museum-stats{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.1em;font-family:'Playfair Display',serif;font-size:1.12rem;font-weight:700;letter-spacing:.25px;color:#222;text-align:center;background:#f3efe9;border-radius:8px;padding:.55em 1.4em;margin:.8em 0 1.4em;min-height:1.8em;box-shadow:0 2px 8px #0000001f;line-height:1.35}
.museum-stats span{display:inline-flex;align-items:center;gap:.45em;white-space:nowrap;transform:translateY(1px)}
@media (max-width: 768px) {
.museum-stats{flex-direction:column;gap:.55em;font-size:1rem;padding:1em 1.2em;border-radius:10px}
}

/*--------------------------------------
  H2 – Article Headings (standout)
--------------------------------------*/
.st h2{font:800 clamp(1.6em,2vw + 1em,2.4em) / clamp(1.1em,.3vw + 1em,1.3em) "Playfair Display","Work Sans",serif;color:#222;text-shadow:0 2px 4px #00000026;display:block;margin-top:.3em;margin-bottom:.9em}
.st h2 .h2-bold{display:block;font-weight:800}
.st h2 .h2-light{display:block;font-weight:400;margin-top:.15em;opacity:.92;font-size:.85em;padding-bottom:.4em!important}
.st h2 span{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;font-size:1.05em}
.st h2 .h2-light{border-bottom:1px solid #00000014;padding-bottom:.15em;color:#333;opacity:.85}
.st h2 .h2-bold{letter-spacing:.5px}
.st h2 .h2-light{opacity:.85}
.st h2 .h2-light{max-width:28ch}

/*--------------------------------------
  FIRST PUBLISHED
--------------------------------------*/
.first-published-box{margin:0 0 14px;padding:4px 10px;background:linear-gradient(to right,#f5f7f9,transparent);border-radius:6px;font-size:.78rem;color:#6a7a85;font-family:"Work Sans",sans-serif;display:inline-block;letter-spacing:.02em}
.first-published-box small{font-style:normal;opacity:.9}

/*--------------------------------------
  STAY22
--------------------------------------*/
.stay22-map{border:none;margin:1rem 0;border-radius:6px}
.stay22-note{padding:6px 12px;font-size:.8em;color:#666;margin:-12px auto 0;text-align:center;display:inline-block;background:#fff;border-radius:4px;box-shadow:0 2px 6px #00000026}

/*--------------------------------------
  HIDDEN HISTORY BOXES
--------------------------------------*/
.highlight-box.highlight-hidden{background:linear-gradient(135deg,#fdfcfb 0%,#d6e4f0 100%);border-left:5px solid #5c7691;padding:1.75em 1.5em;margin:2.5em 0;border-radius:8px;
font-family:"Mate",serif;font-size:1.05rem;line-height:1.65;color:#2f3b47;box-shadow:0 4px 12px #0000001a;transition:transform .2s ease,box-shadow .2s ease}
.highlight-box.highlight-hidden:hover{transform:scale(1.01);box-shadow:0 6px 16px #00000026}
.highlight-box.highlight-hidden .highlight-label{font-weight:700;color:#2c3e50;margin-bottom:.6em}
.highlight-box.highlight-hidden .highlight-icon{font-size:1.4em;margin-right:.4em;color:#5c7691}
.highlight-box.highlight-hidden .highlight-body{margin:0;font-size:1.05em;line-height:1.65}

/* ===============================
   Categories
================================ */
.category-tagline{font-weight:400;font-size:.9em;color:#555}
.museum-category__link{position:relative;display:block;overflow:hidden}
.museum-category__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.museum-category__overlay{position:relative;z-index:1}

/* ===============================
   Homepage showcase
================================ */
.front-section.showcase .museum_cards .card{border-radius:4px;overflow:hidden;margin-bottom:1rem;transition:transform .25s ease,box-shadow .25s ease}
.front-section.showcase .museum_cards .card:hover{transform:translateY(-4px);box-shadow:0 6px 14px #0000001a}
.front-section.showcase .td-block-title{margin-bottom:1rem}
.front-section.showcase .row.with-divider > [class*="col-"]{padding-left:1rem;padding-right:1rem}
.front-section.showcase{margin-top:0;margin-bottom:0;padding-top:1rem}

/* Compact 2-column titles */
.showcase .museum-card-grid.cols-2 .museum-card-title{font-size:1rem;line-height:1.05}
.showcase .museum-card-grid.cols-2 .museum-card-title .title-sub{font-size:.85em;font-weight:400;opacity:.9}
.more-stories .museum_cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem 2rem}
.more-stories .museum_cards .card{display:flex;align-items:center}
@media (max-width: 768px) {.row.with-divider::before,.row.with-divider-8-4::before,.row.with-divider-9-3::before{display:none}}

/* ===============================
   Must-See Museums + Hotels
================================ */
.mustsee-hotels .td-block-title{margin-top:.5rem;margin-bottom:1rem}
.hotels-box{background:#f6f6f6;border-radius:6px;padding:1.25rem 1rem 1.5rem;box-shadow:0 2px 6px #0000000d}
.hotels-box .td-block-title{margin-top:0;margin:1rem 0}
.row.with-divider.mustsee-hotels::before{background:linear-gradient(to bottom,transparent,#e0e0e0,transparent);width:1px;top:3.5rem}

/* ===============================
   Discover More Museums
================================ */
.front-section.discover-more{background:#f3f3f3;border-radius:6px;padding:2rem 1rem;margin:3rem 0rem}
.front-section.discover-more h2.td-block-title{margin-top:0;margin-bottom:1rem}

/* ===============================
   Museum top category
================================ */
.front-section.anecdote-box{background:#fafafa;border-radius:6px;padding:1.5rem 1rem;margin:2rem 0}
.front-section.hotels-box{background:#f6f6f6;border-radius:6px;padding:2rem 1rem;margin:2rem 0}
.anecdote{margin:1rem 0;padding:0}
.anecdote .museum-anecdote{margin:0 auto;padding:1rem 1.25rem;max-width:900px}
.front-section.anecdote-box{background:#fafafa;border-radius:6px;padding:1.5rem 1rem;margin:2rem 0;position:relative}
.front-section.anecdote-box::before{content:"";position:absolute;top:-1rem;left:0;right:0;border-top:3px dotted #ccc}
.front-section.anecdote-box{margin-top:.75rem!important;margin-bottom:.75rem!important;padding:0!important}
.front-section.anecdote-box .highlight-box{margin:0!important;padding:1rem 1.25rem!important}

/* ===============================
   Category Grid Section
================================ */
.front-section.categories{background:#f6f6f6;border-radius:6px;padding:1.25rem 1rem;margin-top:2rem;margin-bottom:2rem;position:relative}
.front-section.categories .museum-category-grid{margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0}
.front-section.categories::before{content:"";position:absolute;top:-1.5rem;left:0;right:0;}
.front-section.categories h2.td-block-title{margin-top:.25rem;margin-bottom:.5rem;font-size:1.6rem}

.museum-card-grid.layout-compact .card{display:flex;align-items:center;gap:.75rem;padding:.4rem 0}
.museum-card-grid.layout-compact .card img{flex-shrink:0;margin:0;display:block;height:auto;align-self:center}
.museum-card-grid.layout-compact .card .museum-card-title{margin:0;line-height:1.3}
.museum-card.highlight .museum-card-image{background-position:center 70%!important;background-size:cover!important}
@media (max-width: 767px) {
.intro-highlight h1{font-size:1.95rem}
.intro-highlight h2{font-size:1.1rem}
}
.intro-highlight h2{border-top:1px solid #ddd;padding-top:.5rem}
.category-intro-feature{margin-top:20px!important}
@media (max-width: 767px) {
.category-museums .row.with-divider{display:flex;flex-direction:column}
.category-museums .col-6:nth-child(1){order:1}
.category-museums .col-6:nth-child(2){order:2}
.category-list-heading{font-size:1.5rem!important;font-weight:700;line-height:1.3;margin-top:1.5rem;margin-bottom:1rem}
}
.museum-card[class*="height-"] .museum-card-thumb{aspect-ratio:auto!important;height:auto!important}

/* Apply heights to the image itself */
.museum-card.height-260 .museum-card-img { height: 260px !important; object-fit: cover; }
.museum-card.height-360 .museum-card-img { height: 360px !important; object-fit: cover; }
.museum-card.height-460 .museum-card-img { height: 460px !important; object-fit: cover; }
.museum-card.height-560 .museum-card-img { height: 560px !important; object-fit: cover; }
.museum-card.height-660 .museum-card-img { height: 660px !important; object-fit: cover; }
.museum-card.height-860 .museum-card-img { height: 860px !important; object-fit: cover; }
.museum-card.height-1024 .museum-card-img { height: 1024px !important; object-fit: cover; }

/* ===============================
   Hotel CTA (sidebar button)
================================ */
.hotel-cta{margin-top:2rem;text-align:center}
.hotel-cta .btn{background:#0073e6;color:#fff;padding:.75rem 1.25rem;border-radius:4px;text-decoration:none;font-weight:600;transition:background .3s ease;display:inline-block}
.hotel-cta .btn:hover{background:#005bb5}

/* ==========================
   Vintage Light Lists (balanced spacing)
========================== */
.museum-content ul,.museum-content ol{margin:0 0 1.4em 1.6em;padding:0;font-family:'Mate',serif;font-size:1.05rem;line-height:1.55;color:#2e2a25}
.museum-content li{margin:.4em 0;padding:0;position:relative}
.museum-content li::after{content:"";display:block;height:1px;margin:.4em 0 0;background:linear-gradient(to right,transparent,#d8d2c6,transparent)}
.museum-content li:last-child::after{content:none}
.museum-content ul{list-style:none}
.museum-content ul > li::before{content:"•";position:absolute;left:-1.2em;top:.2em;color:#a18c72;font-size:1.1em;line-height:1;opacity:.9}
.museum-content ul ul{margin-top:.5em}
.museum-content ul ul > li::before{content:"◦";color:#c0b39e;font-size:.95em}
.museum-content ol{list-style:none;counter-reset:vintage-counter}
.museum-content ol > li{counter-increment:vintage-counter}
.museum-content ol > li::before{content:counter(vintage-counter) ".";position:absolute;left:-1.6em;top:.2em;color:#7a5f3f;font-weight:600;font-family:"Work Sans",sans-serif}
.museum-content li a{color:#1c4f91;text-decoration:underline;text-decoration-thickness:1.3px;text-underline-offset:3px}
.museum-content li a:hover,.museum-content li a:focus{color:#0f3768;text-decoration-thickness:2px}

/*--------------------------------------
  UNIFIED HIGHLIGHT BOXES
--------------------------------------*/
.highlight-box{position:relative;border-left:4px solid;background:#f4faff;padding:1em clamp(0.8em,4vw,1.5em);margin: 1.5em 0;;border-radius:6px;font-family:Mate,serif;font-size:1rem;line-height:1.55;color:#033;box-shadow:0 2px 8px #0000001f}
.highlight-label{font:600 1.1em "Work Sans",sans-serif;letter-spacing:.05em;margin-bottom:.5em;color:#333;display:flex;align-items:center;gap:.4em;margin-left:1.5em}
.highlight-icon{font-size:1.1em}
.highlight-body{font-family:Mate,serif;padding:1.2em 0 1.5em 0.8em;line-height:1.4}
.highlight-body p{font-size:inherit;line-height:inherit;color:inherit;margin:0 0 1em}
.highlight-body ul{padding-left:1.2em;margin:.5em 0;list-style-type:none}
.highlight-body li{margin-bottom:.3em}
.highlight-quote .highlight-body{position:relative;padding:1.5em 1em;font-style:italic;color:#444}
.highlight-quote .highlight-body::before{content:"“";position:absolute;top:.1em;left:.1em;font-size:3em;color:#ccc;line-height:1;z-index:0}
.highlight-quote .highlight-body::after{content:"”";position:absolute;bottom:.1em;right:.1em;font-size:3em;color:#ccc;line-height:1;z-index:0}
.highlight-quote .highlight-body,.highlight-quote .highlight-body p{position:relative;z-index:1}
.highlight-summary{border-left-color:#7aa2c2;background:#f7fbfd}
.highlight-anecdote{border-left-color:#4d7298;background:#f5f9fc;color:#2b4f6c}
.highlight-anecdote .highlight-label{color:#2b4f6c}
.highlight-quote{border-left-color:#777;background:#fbfbfb;color:#444}
.highlight-tip{border-left-color:#5c8a5c;background:#f7fcf7;color:#3f6f3f}
.highlight-tip .highlight-label{color:#3f6f3f}
.highlight-tip .highlight-body ul{list-style-type:square}
@media (max-width: 480px) {
.highlight-box{padding:1em}
.highlight-label,.highlight-body{margin-left:0;padding-left:0}
.highlight-quote .highlight-body::before,.highlight-quote .highlight-body::after{font-size:3em;left:.2em;right:.2em}
}

/*--------------------------------------
  OVERVIEW / SUMMARY – PREMIUM
--------------------------------------*/
.highlight-overview{border-top:4px solid #7aa2c2;border-left:none;background:linear-gradient(to bottom,#f7fbfd,#fff);padding:1.25em 1.4em;border-radius:8px;box-shadow:0 4px 12px #00000014,inset 0 0 .5px #fff9;font-size:1.05rem;line-height:1.55;color:#033;position:relative}
.highlight-overview .highlight-label{font-family:"Work Sans",sans-serif;font-weight:700;font-size:1rem;letter-spacing:.06em;color:#2f3e46;display:flex;align-items:center;gap:.45em;margin-bottom:.6em;padding-left:.2em}
.highlight-overview .highlight-icon{font-size:1.15em;opacity:.9;position:relative;top:1px;box-shadow:inset 0 0 1px rgba(255,255,255,0.7),0 1px 2px rgba(0,0,0,0.08);}


.highlight-overview .highlight-body{font-family:Mate,serif;font-size:1.05rem;line-height:1.55;padding:.2em 0 .2em .2em;color:#033}
.highlight-overview .highlight-body p{margin:0 0 1em}
.highlight-overview .highlight-icon{font-size:1rem;background:#e8f1f7;color:#2f3e46;width:1.9em;height:1.9em;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:.9;box-shadow:0 1px 2px #00000014;position: relative;top: 0.5px;left:0.4px}
.highlight-overview .highlight-label{gap:.6em;align-items:center}
@media (max-width: 480px) {
.highlight-overview{padding:1em 1.1em;border-radius:6px}
.highlight-overview .highlight-label{font-size:.9rem;margin-bottom:.5em}
.highlight-overview .highlight-icon{font-size:1.05em}
.highlight-overview .highlight-body{font-size:1rem;line-height:1.5}
}
.museum-summary .highlight-overview{margin-top:1.5em;margin-bottom:2em}

/* Park / Nature Highlight */
.highlight-nature{border-left-color:#6da77a;background:#f4fbf6;color:#2f5d3a}
.highlight-nature .highlight-label{color:#2f5d3a}

/* Palace / Castle Highlight */
.highlight-palace{border-left-color:#bfa14a;background:#faf8f2;color:#3e3a2f}
.highlight-palace .highlight-label{color:#5a4a1b}

/* Church Highlight (Sacred / Historic) */
.highlight-church{border-left-color:#7a7f8c;background:#f6f7f9;color:#2e3138}
.highlight-church .highlight-label {color: #4a4f5c;}

/* Civic / Government Landmark */
.highlight-civic{border-left-color:#6c8fa3;background:#f2f7fa;color:#2f3e46}
.highlight-civic .highlight-label{color:#3f5f6f}

/* Legends / Personalities Highlight */
.highlight-legend{border-left-color:#8c6a3b;background:linear-gradient(to bottom,#fbf8f3,#fff);color:#3e3122}
.highlight-legend .highlight-label{color:#5a4630;letter-spacing:.06em}
.highlight-legend .highlight-icon{font-size:1.2em}


.highlight-itinerary{border-left-color:#2a7fff;background:#f4f8ff;color:#1f3f6b}
.highlight-itinerary .highlight-label{color:#1f3f6b}
.highlight-itinerary .highlight-body p{margin:.5em 0}

.highlight-box.highlight-explore{border-left:4px solid #4a6fa5;background:#f7f9fc;padding:1rem 1.25rem;margin:2rem 0;border-radius:4px}
.highlight-box.highlight-explore .highlight-label{font-size:1.05rem;font-weight:600;color:#2f4b6e;margin-bottom:.5rem;display:flex;align-items:center;gap:.4rem}
.highlight-box.highlight-explore .highlight-icon{font-size:1.05rem}
.highlight-box.highlight-explore .highlight-body{font-size:1.05rem;line-height:1.55;color:#333}
.highlight-box.highlight-explore a{color:#2f4b6e;text-decoration:underline}
.highlight-box.highlight-explore a:hover{text-decoration:none}

/*--------------------------------------
  NAVBAR – PREMIUM OPTIMIZED
--------------------------------------*/
.museum-navbar{display:flex;justify-content:center;align-items:center;border:1px solid #e6e2da;background:linear-gradient(to right,#fffefa,#fffdf7);padding:.7em 1.2em;gap:.8em;flex-wrap:wrap;width:100%;border-radius:8px;box-shadow:0 4px 12px #00000014,inset 0 0 .5px #fff9;box-sizing:border-box}
.museum-navbar__icon svg{width:26px;height:26px;opacity:.9;filter:drop-shadow(0 1px 1px #00000014)}
.museum-navbar__list{display:flex;flex-wrap:wrap;align-items:center;gap:.55em;padding:0;margin:0;list-style:none!important}
.museum-navbar__list a,.museum-navbar__icon{font-family:"Work Sans",sans-serif;font-size:.9rem;display:flex;align-items:center;justify-content:center;background:#f3f2ef;color:#333;font-weight:700;border-radius:999px;padding:.45em 1.15em;line-height:1;transition:background .25s ease,color .25s ease,box-shadow .25s ease;text-decoration:none;box-shadow:0 1px 2px #0000000d}
.museum-navbar__list a:hover{background:#e8e1d6;color:#005eaa;box-shadow:0 2px 4px #0000001a}
.museum-navbar__list a:focus-visible{outline:2px solid #005eaa;outline-offset:2px}
@media (max-width: 700px) {
.museum-navbar{flex-direction:column;align-items:stretch;gap:.7em;padding:.9em 1em}
.museum-navbar__icon{display:none}
.museum-navbar__list{display:grid;grid-template-columns:repeat(2,1fr);gap:.7em}
.museum-navbar__list a{display:block;text-align:center;padding:.55em .6em;font-size:.85rem;line-height:1.3}
}

/*--------------------------------------
  MUSEUM CATEGORY GRID – Elevated
--------------------------------------*/
.museum-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2.2rem;margin:3rem 0}
.museum-category{display:flex;flex-direction:column;height:100%}
.museum-category__link{position:relative;display:block;width:100%;aspect-ratio:4 / 3;border-radius:14px;overflow:hidden;box-shadow:0 6px 18px #00000014;transition:transform .35s ease,box-shadow .35s ease}
.museum-category__link:hover{transform:translateY(-6px);box-shadow:0 14px 28px #00000026}
.museum-category__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.museum-category__link:hover .museum-category__bg{transform:scale(1.05)}
.museum-category__overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:1.6rem 1rem;text-align:center;background:linear-gradient(to top,#000000bf 0%,#00000040 60%,transparent 100%);color:#fff;transition:background .3s ease}
.museum-category__emoji{font-size:1.7rem;margin-bottom:.3rem}
.museum-category__title{font-family:'Playfair Display',serif;font-size:1.45em;font-weight:700;line-height:1.25;margin-bottom:.25rem;text-shadow:0 2px 8px #0009}
.museum-category__subtitle{font-family:"Work Sans",sans-serif;font-size:.85rem;letter-spacing:.4px;opacity:.9}
.museum-category__caption{font-family:"Mate",serif;font-size:.75rem;color:#666;text-align:right;margin-top:.6rem;margin-right:6px}
@media (max-width:1024px) {
.museum-category-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px) {
.museum-category-grid{grid-template-columns:1fr}
.museum-category__title{font-size:1.25em}
}


/* ======================================
   CATEGORY THEMES – CATEGORY GRID (17)
====================================== */

/* Castles */
.category-castles .museum-category__overlay {
  background: linear-gradient(to top, rgba(139,106,43,0.65), rgba(139,106,43,0.25), transparent);
}

/* Historical */
.category-historical .museum-category__overlay {
  background: linear-gradient(to top, rgba(107,79,42,0.65), rgba(107,79,42,0.25), transparent);
}

/* Art & Design */
.category-art-and-design .museum-category__overlay {
  background: linear-gradient(to top, rgba(122,31,61,0.65), rgba(122,31,61,0.25), transparent);
}

/* Science */
.category-science .museum-category__overlay {
  background: linear-gradient(to top, rgba(10,92,107,0.65), rgba(10,92,107,0.25), transparent);
}

/* Family Attractions */
.category-family-attractions .museum-category__overlay {
  background: linear-gradient(to top, rgba(217,122,0,0.65), rgba(217,122,0,0.25), transparent);
}

/* Manufacturing */
.category-manufacturing .museum-category__overlay {
  background: linear-gradient(to top, rgba(58,79,107,0.65), rgba(58,79,107,0.25), transparent);
}

/* Culture */
.category-culture .museum-category__overlay {
  background: linear-gradient(to top, rgba(138,63,47,0.65), rgba(138,63,47,0.25), transparent);
}

/* Zoological */
.category-zoological .museum-category__overlay {
  background: linear-gradient(to top, rgba(47,93,58,0.65), rgba(47,93,58,0.25), transparent);
}

/* Gardens */
.category-gardens .museum-category__overlay {
  background: linear-gradient(to top, rgba(20,60,40,0.65), rgba(20,60,40,0.25), transparent);
}

/* Churches */
.category-churches .museum-category__overlay {
  background: linear-gradient(to top, rgba(42,61,107,0.65), rgba(42,61,107,0.25), transparent);
}

/* Areas */
.category-areas .museum-category__overlay {
  background: linear-gradient(to top, rgba(30,45,58,0.65), rgba(30,45,58,0.25), transparent);
}

/* Personalities */
.category-personalities .museum-category__overlay {
  background: linear-gradient(to top, rgba(0,0,0,0.75), rgba(0,0,0,0.45), transparent);
}

/* Festive Traditions */
.category-festive-traditions .museum-category__overlay {
  background: linear-gradient(to top, rgba(176,42,42,0.65), rgba(176,42,42,0.25), transparent);
}

/* Architectural */
.category-architectural .museum-category__overlay {
  background: linear-gradient(to top, rgba(90,90,90,0.65), rgba(90,90,90,0.25), transparent);
}

/* Food & Drink */
.category-food-drink .museum-category__overlay {
  background: linear-gradient(to top, rgba(180,95,60,0.65), rgba(180,95,60,0.25), transparent);
}

/* Iconic Products */
.category-iconic-products .museum-category__overlay {
  background: linear-gradient(to top, rgba(0,87,217,0.65), rgba(0,87,217,0.25), transparent);
}

/* Transports */
.category-transports .museum-category__overlay {
  background: linear-gradient(to top, rgba(0,79,124,0.65), rgba(0,79,124,0.25), transparent);
}


/*--------------------------------------
  CATEGORY INTRO
--------------------------------------*/
.category-intro-feature{background:#f7f7f7;padding:1.5em 2em;border-radius:.75em;border-left:5px solid #bbb;margin-bottom:0.5em;position:relative;z-index:1;box-shadow:0 2px 6px #0000000d;font-family:"Mate",serif;color:#333}
.category-intro-feature .intro-header{display:flex;align-items:center;margin-bottom:.5em}
.category-intro-feature .intro-icon{font-size:1.8em;margin-right:.6em;color:#666}
.category-intro-feature h2{font-family:"Work Sans",sans-serif;font-weight:800;margin:0;font-size:1.55em;line-height:1.2;color:#222;border:none;}
.category-intro-feature .intro-text{line-height:1.5;font-size:1.05rem}
.category-intro-feature .intro-text p{margin:.6em 0;line-height:1.5}
.category-intro-feature .intro-text a{text-decoration:none;border-bottom:1px solid transparent;color:#1c4f91;transition:border-bottom .2s,color .2s}
.category-intro-feature .intro-text a:hover{border-bottom:1px solid currentColor;color:#0f3768}
.category-intro-feature p:last-child{margin-top:1.5rem;font-weight:500}
.category-intro-feature .intro-text a{text-decoration:none;border-bottom:1px solid currentColor;color:#1c4f91;transition:border-bottom .2s,color .2s}
.category-intro-feature .intro-text a:hover{border-bottom:2px solid currentColor;color:#0f3768}

/* --------------------------------------
   WATER CITY EXPERIENCES LIST
-------------------------------------- */
ul.watercity-experiences{list-style:none;margin:2em 0;padding:1.2em 1.5em;background:#fffefa;border-left:4px solid #3a7ca5;border-radius:6px;box-shadow:0 2px 8px #0002;font-family:"Mate",serif;font-size:1.15rem;line-height:1.55;color:#333}
ul.watercity-experiences li{position:relative;padding-left:0;margin-bottom:1em}
ul.watercity-experiences li strong{color:#222}
ul.watercity-experiences li:last-child{margin-bottom:0}
ul.watercity-experiences li span.icon{font-size:1.2em;margin-right:.4em}
.medieval-box{background:#fdf8f2;border-left:4px solid #7a4e2d;border-radius:6px;box-shadow:0 2px 8px #0002;padding:1.2em 1.5em;margin:2em 0;color:#333;font-family:"Mate",serif;font-size:1.15rem;line-height:1.55}
.royal-box{background:#f7f4ec;border-left:4px solid #b48a1e;border-radius:6px;box-shadow:0 2px 8px #0002;padding:1.2em 1.5em;margin:2em 0;color:#333;font-family:"Mate",serif;font-size:1.15rem;line-height:1.55}
.watercity-box{background:#fffefa;border-left:4px solid #b48a1e;border-radius:6px;box-shadow:0 2px 8px #0002;padding:1.2em 1.5em;margin:2em 0;color:#333;font-family:"Mate",serif;font-size:1.15rem;line-height:1.55}

/*--------------------------------------
  VISITOR INFO – PREMIUM OPTIMIZED
--------------------------------------*/
.attraction-box{background:#fbfdff;color:#2f3e46;padding:2em 1.6em;border-radius:10px;border:1px solid #e3e7ea;font-family:"Work Sans",sans-serif;font-size:.95rem;line-height:1.5;box-shadow:0 4px 12px #0000000f,inset 0 0 .5px #fff9;margin-bottom:24px;position:relative;border-left:4px solid transparent;padding-left:1.4em}

/* Vertical gradient accent */
.attraction-box::before{content:"";position:absolute;top:1.2em;bottom:1.2em;left:0;width:4px;background:linear-gradient(to bottom,transparent,#7aa2c247,transparent);border-radius:2px;pointer-events:none}
.attraction-box:hover::before{background:linear-gradient(to bottom,transparent,#7aa2c261,transparent)}

/*--------------------------------------
  MAIN TITLE
--------------------------------------*/
.attraction-box h2{font-family:"Playfair Display",serif;font-size:1.45rem;font-weight:700;color:#2f3e46;display:flex;align-items:center;gap:.5em;margin:0 0 1em;padding-bottom:.3em}
.attraction-box h2::before{content:"🌐";font-size:.95em;opacity:.7}
.attraction-box:hover h2::before{opacity:1}
.attraction-box h2::after{content:"";display:block;height:2px;margin-top:.4em;border-radius:1px;width:100%;max-width:60px;background:linear-gradient(to right,#7aa2c2,transparent)}

/*--------------------------------------
  LANGUAGES SECTION
--------------------------------------*/
.attraction-box .lang-names{background:linear-gradient(to right,#f8fafc,transparent);padding:.6em .4em;border-radius:6px;margin-bottom:1em}
.attraction-box .lang-names h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#7a8a96;margin:0 0 .4em;font-weight:600}
.attraction-box .lang-names p{display:flex;align-items:center;gap:.6em;margin:.3em 0;font-family:"Playfair Display",serif;font-weight:700;font-size:1.1rem;color:#1f2f36;letter-spacing:.2px;line-height:1.4}
.attraction-box .lang-names p img{width:18px;border-radius:2px;opacity:.95;transition:opacity .2s ease;flex-shrink:0;box-shadow:0 1px 2px #0000001a;position:relative;top:2px}
.attraction-box .lang-names p:hover img{opacity:1}
.lang-names p + p{padding-top:.4em;margin-top:.4em;position:relative}
.lang-names p + p::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,#0000001f,transparent)}

/*--------------------------------------
  SECTION HEADERS
--------------------------------------*/
.attraction-box h3{font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:#000;margin-top:1.6em}

/*--------------------------------------
  INFO SECTIONS
--------------------------------------*/
.attraction-box .info-section{padding-top:1em;margin-top:1.6em;position:relative}
.attraction-box .info-section::before{content:"";display:block;height:1px;margin-bottom:1em;background:#e6ebef;border-radius:2px;min-width:120px}
.attraction-box .info-section:first-of-type{padding-top:0;margin-top:0}

/*--------------------------------------
  INFO LINES
--------------------------------------*/
.info-line{display:flex;align-items:flex-start;gap:.6em;margin:.55em 0;line-height:1.4}
.attraction-box .info-line .icon{min-width:1.5em;text-align:center;color:#7a8a96;font-size:1.2em;flex-shrink:0;padding-right:.4em;position:relative;top:2px}

/*--------------------------------------
  LINKS
--------------------------------------*/
.attraction-box a{color:#3f6f8f;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;font-size:.9em}
.attraction-box a:hover{color:#1f4f6f;text-decoration-thickness:2px}

/*--------------------------------------
  OTHER INFO TEXT
--------------------------------------*/
.attraction-box .other-info-content{font-size:.92rem;line-height:1.55;color:#2a3a40;opacity:.95}


/*--------------------------------------
  MOBILE OPTIMIZATION – VISIT INFO
--------------------------------------*/
@media (max-width: 600px) {
.attraction-box{padding:1.4em 1.2em;margin-bottom:20px;border-radius:8px}
.attraction-box::before{width:3px;top:1em;bottom:1em}
.attraction-box h2{font-size:1.25rem;gap:.4em;margin-bottom:.8em}
.attraction-box h2::after{max-width:50px}
.attraction-box .lang-names{padding:.5em .4em;margin-bottom:.9em}
.attraction-box .lang-names h3{font-size:.7rem;margin-bottom:.3em}
.attraction-box .lang-names p{font-size:1rem;gap:.5em}
.attraction-box .lang-names p img{width:16px;top:1px}
.lang-names p + p{padding-top:.35em;margin-top:.35em}
.attraction-box h3{font-size:.75rem;margin-top:1.3em}
.attraction-box .info-section{margin-top:1.3em;padding-top:.8em}
.attraction-box .info-section::before{margin-bottom:.8em}
.info-line{gap:.5em;margin:.45em 0}
.attraction-box .info-line .icon{font-size:1.1em;min-width:1.3em;top:1px}
.attraction-box a{font-size:.88em;text-underline-offset:1.5px}
.attraction-box .other-info-content{font-size:.9rem;line-height:1.5}
}

/*--------------------------------------
  CLOSEBY LIST (Nearby Attractions)
--------------------------------------*/
ul.closeby{background:#fffefa;border-left:4px solid #b48a1e;border-radius:6px;box-shadow:0 2px 8px #0002;padding:1.2em 1.5em;margin:2em 0;list-style:none;color:#333;font-family:"Mate",serif;font-size:1rem;line-height:1.55}
ul.closeby li{position:relative;padding-left:1.4em;margin-bottom:.8em}
ul.closeby li strong{font-weight:700;margin-left:.25em;color:#222}
ul.closeby li::before{content:"•";position:absolute;left:0;top:.15em;font-size:1.1em;color:#b48a1e;line-height:1}
ul.closeby.nopins li::before{content:none}
ul.closeby li:not(:last-child)::after{content:"";display:block;height:1px;margin-top:.6em;background:linear-gradient(to right,transparent,#b48a1e,transparent);opacity:.25}
.closeby.nopins .icon{font-size:1.2em;line-height:1.4;text-align:center}

  
/*--------------------------------------
  NEARBY LIST (Beige info box)
--------------------------------------*/
ul.nearby{list-style:none;padding:2em 2.4em;margin:2.5em 0;background:#f7f3ea;border:1px solid #e6dccf;border-top:2px solid #c8a96a;border-radius:12px;box-shadow:0 8px 22px #00000014;font-family:"Mate",serif;font-size:1rem;line-height:1.65;color:#2e2a25}
ul.nearby li{line-height:1.65;position:relative;padding:1em .6em 1em 2.4em;margin-bottom:.6em;border:none!important;box-shadow:none!important;opacity:.95;}
ul.nearby li::after,ul.nearby li::before{border:none!important;box-shadow:none!important}
ul.nearby li{margin-bottom:.8em;padding:1em 0 0em 2.2em;border:none!important;box-shadow:none!important;background:transparent!important}
ul.nearby li:last-child{border-bottom:none}
ul.nearby li::before{content:"✦";position:absolute;left:.7em;top:1.55em;font-size:.85em;color:#c8a96a}
ul.nearby li strong{display:inline-block;font-weight:700;color:#1f2f36;margin-right:.25em;opacity:1;}
ul.nearby li:hover{background:#ffffff80;background:none;
  transform:translateX(2px);
  transition:transform .15s ease;}
ul.nearby::before{top:0;background:linear-gradient(to bottom,#f5f0e6,#f5f0e600)}
ul.nearby::after{bottom:0;background:linear-gradient(to top,#f5f0e6,#f5f0e600);content:none!important;display:none!important}
ol.nearby{background:#eee!important;padding:1.2em 1.4em;border-radius:6px;font-family:"Mate",serif;font-size:1rem;line-height:1.55}
ol.nearby li{border-bottom:1px solid #fff;padding:.4em 0}
ul.nearby li::after{content:none!important;display:none!important}

/*--------------------------------------
  Visitor Info List (Final Clean)
--------------------------------------*/
.info-list{list-style:none;margin:1.5em 0;padding:1.4em 1.6em;background:#fafcfd;border:1px solid #e3e7ea;border-radius:10px;font-family:"Mate",serif;font-size:1rem;line-height:1.6;color:#2e2a25}
.info-list li::before,.info-list li::after{content:none!important;display:none!important}
.info-list > li{display:flex;align-items:flex-start;gap:.7em;padding:.85em 0;position:relative}
.info-list > li::after{content:"";position:absolute;left:2.2em;right:0;bottom:0;height:1px;background:linear-gradient(to right, transparent, #e6ebef, transparent);}
.info-list > li:last-child::after{display:none}
.info-list .icon{font-size:1.15em;opacity:.75;flex-shrink:0;margin-top:.00em}
.info-list strong{display:inline-block;min-width:140px;font-weight:600;color:#1f2f36}
.info-list .sublist{margin:.4em 0 .2em 1.6em;padding:0;list-style:disc;font-size:.95em}
.info-list .sublist li{padding:0;border:none}
.museum-content ul.info-list {margin: 1.5em 0 !important;padding: 1.4em 1.6em !important;}
.info-list strong{min-width:130px}
@media (max-width:600px) {
.info-list strong{min-width:110px}
}

/*--------------------------------------
  MUSEUM HIGHLIGHT (Modernized)
--------------------------------------*/
ul.museum-highlight{list-style:none;margin:2em 0;padding:1.6em 1.8em;background:linear-gradient(135deg,#faf7f2 0%,#efe4d8 100%);border:1px solid #e2d6c6;border-left:4px solid #b89b7a;border-radius:10px;box-shadow:0 6px 18px #00000012;font-family:"Mate",serif;font-size:1.05rem;line-height:1.65;color:#2e2a25;transition:transform .2s ease,box-shadow .2s ease}
ul.museum-highlight li::before{content:"✦";position:absolute;left:0;top:.7em;font-size:.75em;color:#b89b7a;opacity:.9}
ul.museum-highlight li{padding-left:1.6em;text-indent:-1.6em}
ul.museum-highlight{position:relative}
ul.museum-highlight:hover{transform:translateY(-2px);box-shadow:0 10px 24px #00000018}
ul.museum-highlight li{position:relative;padding:.65em 0 .65em 1.6em;margin-bottom:.4em}
ul.museum-highlight li::after{content:none!important}
ul.museum-highlight li::before{content:"";position:absolute;left:0;top:.7em;font-size:.7em;color:#b89b7a}
ul.museum-highlight li:last-child{margin-bottom:0}
ul.museum-highlight strong{color:#1f2f36;font-weight:700}

/*--------------------------------------
  MUSEUM NOTICE
--------------------------------------*/
.museum-notice{background:#fff8e1;color:#5c4400;border-left:5px solid #ffd84d;padding:1em 1.25em;margin:1.5em 0;border-radius:6px;font-size:.95rem;font-family:'Playfair Display',serif;box-shadow:0 2px 6px #0000000d}
.museum-notice strong{font-weight:700;color:#3a2c00}

/*--------------------------------------
  CATEGORY LIST HEADER
--------------------------------------*/
.category-list-heading{margin-top:2em;margin-bottom:1em;font-family:"Playfair Display",serif;font-size:clamp(1.8rem,2.5vw,2.4rem);font-weight:700;color:#007ac8;
text-align:center;border-top:3px solid #007ac8;border-bottom:1px solid #ccc;padding:.6em 0 .3em;background:linear-gradient(to top,#f8f9fa,#fff);position:relative}
.category-list-heading::before{display:inline-block;margin-right:.4em}

/*--------------------------------------
  Icons by category slug
--------------------------------------*/
body.category-museums .category-list-heading::before { content:"🏛️"; }
body.category-parks .category-list-heading::before { content:"🌳"; }
body.category-botanical-gardens .category-list-heading::before { content:"🌿"; }
body.category-churches .category-list-heading::before { content:"⛪"; }
body.category-castles .category-list-heading::before { content:"🏰"; }
body.category-culture .category-list-heading::before { content:"🎭"; }
body.category-food .category-list-heading::before { content:"🍽️"; }
body.category-waterfront .category-list-heading::before { content:"🌊"; }

/* =====================================
   ROYAL TIMELINE
===================================== */
.royal-timeline{position:relative;display:flex;justify-content:space-between;gap:2rem;margin-top:2rem}
.timeline-line{position:absolute;top:32px;left:0;right:0;height:2px;background:#c6b79c;z-index:0}
.timeline-item{position:relative;width:100%;text-align:center;z-index:1}
.timeline-marker{width:14px;height:14px;background:#8c6f3f;border-radius:50%;margin:0 auto 1.25rem;box-shadow:0 0 0 4px #f7f4ec}
.timeline-item h3{font-size:1.05rem;padding-top:1rem;margin-bottom:.5rem}
.timeline-item h3 span{display:block;font-weight:400;font-size:.85rem;color:#7a6a52;margin-top:.25rem;letter-spacing:.3px;text-transform:uppercase;font-size:.75rem}
.timeline-item p{font-size:.9rem;line-height:1.6;max-width:260px;margin:0 auto}
@media (max-width: 900px) {
.royal-timeline{flex-direction:column;align-items:flex-start}
.timeline-line{left:7px;top:0;bottom:0;width:2px;height:100%}
.timeline-item{text-align:left;padding-left:2rem;margin-bottom:2rem}
.timeline-marker{position:absolute;left:0;top:6px}
}
.royal-eras .td-block-title{margin:1rem}

/* =====================================
   ROYAL ERAS BACKGROUND
===================================== */
.royal-eras{background:linear-gradient(180deg,#fbf9f4 0%,#f4efe6 100%);border-radius:6px;padding:1rem 1.5rem 1.5rem;box-shadow:inset 0 1px 0 #ffffff80;margin-bottom:2.5em}
.timeline-item{transition:transform .2s ease}
.timeline-item:hover{transform:translateY(-2px)}
.section-ivory{background:#faf7f1;border-radius:6px;padding:2rem 1.5rem}
.section-stone{background:#f5f1e8;border-radius:6px;padding:2rem 1.5rem;margin-bottom:2em}
.section-ivory,.section-stone{border-top:1px solid #8c6f3f14}

/* =====================================
   TRANSPARENT PANEL (STRUCTURAL PARITY)
===================================== */
.section-panel{background:transparent;border-radius:6px;padding:2rem 1.5rem}

/* =====================================
   ROYAL VISIT PANEL
===================================== */
.royal-visit-box{background:linear-gradient(180deg,#f7f3ea 0%,#efe7da 100%);border-radius:6px;padding:2rem;margin:3rem 0;position:relative;border:none}
.royal-visit-box::before{content:"";position:absolute;left:0;top:1.5rem;bottom:1.5rem;width:4px;background:#8c6f3f;border-radius:2px}
.visit-title{margin-left:1rem;margin-bottom:1rem;font-size:1.2rem}
.section-parchment{background:#faf7f0;border-radius:6px;padding:2rem 1.5rem;margin-top:2em}


/* =====================================
   ROYAL INTRO TYPOGRAPHY TUNING
===================================== */
.category-royal .intro-text p:first-of-type{line-height:1.5;margin-bottom:1.5rem}
.category-royal .intro-text p:first-of-type::first-letter{float:left;font-size:3.2rem;line-height:.8;padding-right:.35rem;padding-top:.15rem;font-weight:600;color:#8c6f3f}
.category-royal .intro-header{padding-bottom:1rem;margin-bottom:1.25rem;border-bottom:1px solid #8c6f3f40}

/* =====================================
   MEDIEVAL TIMELINE
===================================== */
.medieval-eras{background:linear-gradient(180deg,#f6f2e8 0%,#ece6d8 100%),repeating-linear-gradient(0deg,#00000004,#00000004 1px,transparent 1px,transparent 3px);border-radius:6px;padding:2rem 1.5rem;margin-bottom:2.5rem;position:relative}
.medieval-timeline{position:relative;margin-top:2rem;padding-left:2.5rem}
.medieval-line{position:absolute;left:14px;top:0;bottom:0;width:2px;background:#b9ab8c}
.medieval-item{position:relative;margin-bottom:2.5rem}
.medieval-item::before{content:"";position:absolute;left:-1.6rem;top:6px;width:12px;height:12px;background:#7a6748;border-radius:50%;box-shadow:0 0 0 4px #f6f2e8}
.medieval-item h3{font-size:1.1rem;margin-bottom:.4rem;font-weight:600}
.medieval-item h3 span{display:block;font-size:.85rem;font-weight:400;color:#7c6f58;margin-top:.25rem}
.medieval-item p{font-size:.95rem;line-height:1.65;max-width:520px}
.medieval-eras .td-block-title{margin-bottom:1.25rem}
.section-parchment{background:#f6f2e8;border-radius:6px;padding:1.75rem 1.5rem;margin-bottom:.5rem}
.section-panel{background:#ffffffa6;border-radius:6px;padding:1.75rem 0!important;margin-bottom:.5rem}
.section-stone{background:#eee8da;border-radius:6px;padding:1.75rem 1.5rem;margin-bottom:.5rem}
.medieval-timeline{background:linear-gradient(180deg,#f9f6f0 0%,#efe8db 100%);border-radius:6px;padding:1.75rem;box-shadow:inset 0 1px 0 #ffffff80}
.medieval-timeline ul.timeline{list-style:none;margin:2rem 0 0;padding-left:1.5rem;border-left:2px solid #b9a888}
.medieval-timeline ul.timeline li{position:relative;margin-bottom:1.5rem;padding-left:1rem}
.medieval-timeline ul.timeline li::before{content:"";position:absolute;left:-9px;top:6px;width:10px;height:10px;background:#8c6f3f;border-radius:50%}
.category-medieval .intro-text p:first-of-type::first-letter{float:left;font-family:'Playfair Display',serif;font-size:3rem;line-height:.9;padding-right:8px;padding-top:4px;color:#6b5a3d}
.category-medieval .intro-text{line-height:1.75}
.category-medieval .intro-header h2{padding-bottom:1rem;border-bottom:1px solid #e5dccf}

/* =====================================
   MEDIEVAL INTRO DROP CAP
===================================== */
.category-medieval .intro-text p:first-of-type::first-letter{float:left;font-family:'Playfair Display',serif;font-size:3.2rem;line-height:.85;padding-right:10px;padding-top:6px;font-weight:700;color:#6b5a3d}
.category-medieval .intro-text{line-height:1.75}
.category-water .intro-text p:first-of-type::first-letter{float:left;font-family:'Playfair Display',serif;font-size:3.2rem;line-height:.85;padding-right:10px;padding-top:6px;font-weight:700;color:#2f5f7a}

.cluster-box{background:#f6f8fa;border-radius:8px;padding:28px 32px;margin:60px 0;border:1px solid #e3e7ec;position:relative}
.cluster-box::before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:#2c5d8a;border-top-left-radius:8px;border-top-right-radius:8px}
.cluster-box h3{margin:0 0 8px;font-size:1.25rem}
.cluster-intro{margin:0 0 20px;color:#555;line-height:1.6;font-size:.95rem}
.cluster-list{display:grid;gap:18px}
.museum-guide-item{padding:14px 16px;background:#fff;border-radius:6px;border:1px solid #e5e8ed;transition:all .2s ease}
.museum-guide-item:hover{border-color:#2c5d8a;box-shadow:0 4px 10px #0000000d}
.museum-title{font-weight:600;text-decoration:none;display:inline-block;margin-bottom:6px}
.museum-title:hover{text-decoration:underline}
.museum-desc{margin:0;font-size:.9rem;color:#666}

/*-----------------------------------------*/
.cluster-box.compact{background:#f8fafc;border-radius:6px;padding:18px 20px;margin:40px 0;border:1px solid #e6ebf0;position:relative}
.cluster-box.compact::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:#2c5d8a;border-top-left-radius:6px;border-top-right-radius:6px}
.cluster-box.compact h3{margin:0 0 6px;font-size:1.1rem}
.cluster-box.compact .cluster-intro{margin:0 0 12px;font-size:.9rem;color:#666;line-height:1.5}
.cluster-box.compact .cluster-list{display:grid;gap:10px}
.cluster-box.compact .museum-guide-item{padding:10px 12px;background:#fff;border-radius:5px;border:1px solid #e5e8ed;transition:all .15s ease}
.cluster-box.compact .museum-guide-item:hover{border-color:#2c5d8a;background:#fdfefe}
.cluster-box.compact .museum-title{font-weight:600;font-size:.95rem;margin-bottom:2px;display:inline-block}
.cluster-box.compact .museum-desc{margin:0;font-size:.82rem;color:#777;line-height:1.4}
/*----------------------------------------------*/

.must-highlight{font-size:1.05rem;font-weight:600;line-height:1.6;padding:.8rem 1rem;margin:1rem 0;background:#f6f2ea;border-left:4px solid #b89b5e}
.must-highlight-bottom{margin-top:1.5rem}
.landmark-badge{display:inline-block;font-size:.85rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;padding:.35rem .75rem;margin:.75rem 0 1.25rem;background:#f3efe6;border:1px solid #d8cbb5;border-radius:20px}
.landmark-badge a{color:#6b5b3e;text-decoration:none}
.landmark-badge a:hover{text-decoration:underline}
.front-page .site-main{margin-bottom:0;padding-bottom:0}
.front-section.showcase{margin-top:-.2rem;margin-bottom:0}
.museum-hero-img{width:100%;height:auto;display:block}

.ml-inbound-modal-overlay{position:fixed;inset:0;background:#00000059;display:none;z-index:9998}
.ml-inbound-modal{position:fixed;top:120px;left:50%;transform:translateX(-50%);background:#fff;border-radius:6px;padding:18px;width:420px;max-height:500px;overflow:auto;box-shadow:0 10px 30px #00000040;z-index:9999;display:none}
.ml-inbound-item{margin:6px 0}
.ml-inbound-trigger{cursor:pointer;color:#2271b1;font-weight:600}
.ml-inbound-trigger:hover{text-decoration:underline}
#ml-authority-dashboard{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.ml-card{background:#fff;padding:20px;border:1px solid #ddd;border-radius:6px}
.ml-place-name{color:#2e7d32;font-weight:600}
.ml-pill{display:inline-block;background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9;padding:2px 8px;margin:2px 4px 2px 0;border-radius:12px;font-size:11px;font-weight:600;line-height:1.4}
.ml-pill:hover{background:#dcedc8}

/*----------------------------*/
/* Kill all bullets*/
.cluster-minimal ul,.cluster-minimal li,.highlight-box.compact ul,.highlight-box.compact li,.nearby-minimal,.nearby-minimal li{list-style:none!important;padding-left:0!important;margin-left:0!important}
.cluster-minimal li::marker,.highlight-box.compact li::marker,.nearby-minimal li::marker{content:""!important}
.cluster-minimal li::before,.highlight-box.compact li::before,.nearby-minimal li::before{content:none!important}

.cluster-minimal{margin:50px 0 25px;padding-top:10px;border-top:1px solid #e6ebf1}
.cluster-minimal h3{margin-bottom:10px;font-size:1.3rem;padding-top:10px}
.cluster-minimal .cluster-intro{margin-bottom:12px;font-size:1.1rem;color:#555}

.cluster-links{list-style:none;padding:0;margin:0}
.cluster-links li{position:relative;padding:10px 0 10px 24px!important;border-bottom:1px solid #f1f4f7}
.cluster-links li:last-child{border-bottom:none}
.cluster-links li::before{content:"›"!important;position:absolute;left:10px!important;top:9px!important;color:#c4ccd4;opacity:0.9;font-size:1.1rem}
.cluster-links a{font-weight:600;text-decoration:none;display:inline-block;transition:color .2s ease;}
.cluster-links a:hover{text-decoration:underline;color:#1f4f7a}
.cluster-links span{display:block;font-size:.95rem;color:#666;margin-top:2px;}

.highlight-box.compact{background:#f8fafc;border:1px solid #e6ebf1;border-radius:6px;box-shadow:0 4px 10px #0000000a;margin-top:20px}
.highlight-box.compact ul{list-style:none!important;padding-left:0!important;margin-left:0!important}
.highlight-box.compact li{list-style:none!important;padding-left:0!important}
.highlight-box.compact li::before,.highlight-box.compact li::marker{content:none!important;display:none!important}
.highlight-box.compact a{text-decoration:none;font-weight:500;color:#2c5d8a}
.highlight-box.compact a:hover{text-decoration:underline}

.nearby-minimal{list-style:none;padding:0;margin:10px 0 30px}
.nearby-minimal li{margin-bottom:10px}
.nearby-minimal a{font-weight:600;text-decoration:none}
.nearby-minimal a:hover{text-decoration:underline}
.nearby-minimal span{display:block;font-size:.9rem;color:#666;margin-top:2px}
/*----------------------------*/

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.season-table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.95rem}
.season-table thead th{text-align:left;padding:.75rem;border-bottom:2px solid #ddd;font-weight:600;background:#f7f7f7}
.season-table tbody td{padding:.6rem .75rem;border-bottom:1px solid #eee;vertical-align:top}
.season-table tbody tr:nth-child(even){background:#fafafa}
.season-table tbody tr:hover{background:#f0f4f8}
.season-table td strong{font-weight:600}
.season-table-wrapper{width:100%;overflow-x:auto}
.season-table-wrapper .season-table{min-width:520px}


.ml-btn{display:inline-flex;align-items:center;justify-content:center;padding:.45rem .9rem;border-radius:999px;font-size:.85rem;font-weight:500;cursor:pointer;text-decoration:none!important;transition:background .18s ease,color .18s ease,border-color .18s ease;line-height:1}
.ml-btn-primary{background:#fafafa;color:#222;border:1px solid #444}
.ml-btn-primary:hover{background:#222;color:#fff;border-color:#222}
.ml-btn-secondary{background:#fff;color:#333;border:1px solid #ccc}
.ml-btn-secondary:hover{background:#f5f5f5;border-color:#999}
.ml-btn-outline{background:transparent;color:#222;border:1px solid #aaa}
.ml-btn-outline:hover{background:#eee;border-color:#666}
.ml-btn-ghost{background:transparent;color:#444;border:none}
.ml-btn-ghost:hover{background:#f2f2f2}
.ml-btn-link{background:none;border:none;padding:0;color:#005bb5;text-decoration:underline}
.ml-btn-link:hover{color:#003f80}


/* category-museums.php — ersätter tidigare inline-stilar
   Lägg till i din style.css eller ett dedikerat partials-stylesheet */
.intro-highlight{background:#fff;border-radius:6px;padding:0!important;margin-bottom:2rem}
.visiting-info{background:#f3efe6;border-radius:6px;padding:1.5rem}
