/* Listing-specific layout. Shared header, cards and footer retain the homepage scale. */
.category-menu{position:relative;flex-shrink:0}
.category-menu:not([open])>.category-navigation{display:none}
.category-menu>summary{list-style:none;cursor:pointer;gap:5px;border-radius:2px}
.category-menu>summary::-webkit-details-marker{display:none}
.category-menu>summary .icon:last-child{width:11px;height:11px;transition:transform .15s}
.category-menu[open]>summary{background:#eeefec;color:#343c36}
.category-menu[open]>summary .icon:last-child{transform:rotate(180deg)}
.category-menu>summary:focus-visible{outline:2px solid #8c9687;outline-offset:2px}
.category-navigation{position:absolute;z-index:12;top:calc(100% + 9px);right:0;width:340px;max-width:calc(100vw - 40px);max-height:min(480px,70dvh);overflow:auto;overscroll-behavior:contain;padding:8px;background:#fff;border:1px solid #dedfdb;border-radius:2px;box-shadow:0 8px 24px #2026200d}
.category-navigation h2{font-size:13px;line-height:1.5;font-weight:500;letter-spacing:0;margin:0 8px 4px;padding:10px 4px 12px;border-bottom:1px solid #e9ebe6;color:#6b736c}
.category-links{display:flex;flex-direction:column;gap:0}
.category-link{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px;max-width:100%;padding:10px 12px;border-radius:2px;background:#fff;color:#3b423d;font-size:13px;line-height:1.5}
.category-link:hover,.category-link:focus-visible{background:#f1f3ee}
.category-link[aria-current]{background:#e9ece5}
.category-tour-count{color:#737d72;font-size:11px;font-variant-numeric:tabular-nums}
.category-editorial{padding-bottom:48px}
.category-guide{display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,2fr);gap:40px;padding:30px;margin-bottom:20px;border:1px solid #dedfdb;background:#fff;border-radius:2px}
.category-guide h2{font-size:24px;line-height:1.4;font-weight:500;letter-spacing:-.6px;margin:0;color:#303731;max-width:340px}
.category-guide p{font-size:14px;line-height:1.85;color:#606961;margin:0;max-width:760px}
.category-guide p+p{margin-top:16px}
.catalog-page.category-landing .catalog-intro h1{max-width:1050px;text-wrap:balance}
.category-landing .breadcrumb{flex-wrap:wrap;row-gap:5px}
@media(max-width:767px){.category-menu{position:static}.category-navigation{top:calc(100% + 1px);right:0;width:340px;max-width:100%;max-height:65dvh}.category-link{font-size:13px}.category-editorial{padding-bottom:32px}.category-guide{grid-template-columns:1fr;gap:16px;padding:22px}.category-guide h2{font-size:22px;max-width:none}.category-guide p{font-size:14px}.catalog-page.category-landing .catalog-intro h1{letter-spacing:-1px}}
body.catalog-page{background:#f8f8f8;color:#282a2c}
.catalog-page [hidden]{display:none!important}
.hero.listing-masthead{height:auto;min-height:0;background:#222427;overflow:hidden;isolation:isolate}
.listing-masthead:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#222427 8%,#222427e0 35%,#22242750 80%),url('fuar-map.webp') right center / auto 520px no-repeat;pointer-events:none}
.listing-masthead .site-header{animation:none}
.listing-masthead .header-grid{border-bottom:1px solid #ffffff0e}
.listing-masthead .nav-link[aria-current=page]:after{transform:scaleX(1);opacity:.6}
/* One masthead rhythm for tour lists, categories and tour details. */
.catalog-intro{position:relative;padding-block:23px 38px}
.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:11px;line-height:1.5;color:#b1b2b0;margin-bottom:25px}
.breadcrumb a{display:inline-flex;align-items:center;min-height:24px;color:#c3c5c2}
.breadcrumb a:hover{color:#fff}.breadcrumb svg{width:11px;height:11px;color:#7e827f}
.breadcrumb [aria-current]{color:#d4c7ad}
.listing-masthead .catalog-intro h1{font-size:48px;font-weight:500;line-height:1.15;letter-spacing:-1.9px;margin:0 0 14px;color:#f4f3ef}
.catalog-intro p{font-size:13px;line-height:1.8;font-weight:400;max-width:535px;color:#bfc0bf;margin:0}
.catalog-list{padding-block:24px 68px;scroll-margin-top:20px}
.catalog-toolbar{position:relative;display:flex;align-items:center;gap:20px;min-height:60px;border-bottom:1px solid #24242415;margin-bottom:26px}
.catalog-count{font-size:13px;line-height:1.6;white-space:nowrap;flex-shrink:0;margin:0;font-weight:400;color:#747676}
.catalog-count strong{font-weight:500;color:#282a2c;margin-right:5px;font-variant-numeric:tabular-nums}
.catalog-tools{display:flex;align-items:center;gap:12px;margin-left:auto}
.catalog-control{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:44px;min-height:44px;background:none;border:0;padding:8px;color:#414447;font-size:12px;font-weight:500;white-space:nowrap}
.catalog-control .icon{width:20px;height:20px;stroke-width:1.5}
.catalog-control:hover{color:#000}.catalog-control[aria-expanded=true]{color:#856f49}
.catalog-tools>.catalog-control:last-child{padding-right:0}
.catalog-separator{height:18px;width:1px;background:#24242418}
.filter-count{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:50%;background:#292c2d;color:#fff;font-size:10px;font-variant-numeric:tabular-nums}
.catalog-search{display:flex;align-items:center;gap:12px;flex:1;max-width:520px;margin-left:auto;animation:search-arrive .2s ease-out}
.catalog-search>.icon{width:18px;height:18px;color:#858783}
.catalog-search input{width:100%;min-width:0;height:44px;padding:8px 0;border:0;border-radius:0;background:transparent;color:#242629;font-size:14px;outline:none}
.catalog-search input::placeholder{color:#878985}.catalog-search input:focus-visible{outline:none}
.catalog-search:focus-within{box-shadow:0 1px #77796f}
.catalog-search input::-webkit-search-cancel-button{display:none}
.catalog-search .catalog-control{flex-shrink:0}.catalog-search .catalog-control .icon{width:16px;height:16px}
.catalog-list .active-filters{gap:8px;margin:0 0 24px}
.catalog-list .filter-chip{font-size:11px;min-height:36px;padding:6px 11px;border-color:#dedfdb;background:#f1f1ed;max-width:100%;text-align:left}
.catalog-list .filter-chip span{min-width:0;overflow-wrap:anywhere}
.catalog-list .clear-filters{font-size:11px;min-height:36px}
.catalog-grid{gap:clamp(18px,1.7vw,28px)}
.catalog-list .tour-photo{aspect-ratio:3/2;height:auto;overflow:hidden;background:#e5e6e2}
.catalog-empty{min-height:320px;text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:48px 20px}
.catalog-empty>.icon{width:30px;height:30px;color:#91938b;margin-bottom:20px}
.catalog-empty h2{font-size:28px;line-height:1.3;letter-spacing:-1px;font-weight:500;margin:0 0 14px}
.catalog-empty p{font-size:13px;line-height:1.8;color:#747875;max-width:365px;margin:0 0 24px}
.empty-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px}
.catalog-dark-button{background:#272a2b!important;border-color:#272a2b!important;color:#f5f5f1!important}
.catalog-pagination{display:flex;align-items:center;justify-content:center;gap:8px;padding-top:34px}
.catalog-pagination button{min-width:44px;min-height:44px;border:1px solid #dedfdb;background:none;font-size:12px}
.catalog-pagination button[aria-current=page]{background:#292c2d;color:#fff;border-color:#292c2d}
.catalog-faq{border-top:1px solid #2424240d;padding-block:76px;scroll-margin-top:24px}
.catalog-faq-header{display:grid;grid-template-columns:1.1fr 1fr;align-items:end;gap:64px;margin-bottom:38px}
.catalog-faq .eyebrow{display:block;font-size:10px;font-weight:500;letter-spacing:1.65px;line-height:1.7;color:#606466;margin-bottom:18px;text-transform:uppercase}
.catalog-faq h2{font-size:clamp(32px,3.2vw,48px);font-weight:500;line-height:1.15;letter-spacing:-1.8px;margin:0}
.catalog-faq h2 em{font-style:normal;color:#808486}
.catalog-faq-header>p{justify-self:end;font-size:13px;line-height:1.85;color:#676b6e;max-width:375px;margin:0}
.faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.faq-column{display:grid;gap:12px;min-width:0}
.faq-list .faq-item{min-width:0;border:1px solid #dedfe0;border-radius:2px;background:#fff;transition:border-color .2s,background-color .2s}
.faq-list .faq-item[open]{border-color:#c9c4b9;background:#fdfcf9}
.faq-list summary{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:16px;line-height:1.55;font-weight:500;letter-spacing:-.3px;padding:21px 24px;color:#292c2e}
.faq-list summary>span:first-child{min-width:0;overflow-wrap:break-word}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::marker{content:""}
.faq-toggle{position:relative;display:block;flex:0 0 20px;width:20px;height:20px;color:#787e80}
.faq-toggle:before,.faq-toggle:after{content:"";position:absolute;background:currentColor;border-radius:1px}
.faq-toggle:before{height:1px;width:14px;top:9.5px;left:3px}
.faq-toggle:after{width:1px;height:14px;left:9.5px;top:3px;transition:transform .2s}
.faq-item[open] .faq-toggle{color:#948467}
.faq-item[open] .faq-toggle:after{transform:scaleY(0)}
.faq-answer{padding:0 64px 25px 24px}
.faq-answer p{font-size:13px;line-height:1.85;color:#676b6e;margin:0;max-width:none;text-wrap:pretty}
.faq-list summary:focus-visible{outline:2px solid #8e8067;outline-offset:4px;border-radius:2px}
@media(hover:hover) and (pointer:fine){.faq-item:hover{border-color:#b7bdbe}.faq-item[open]:hover{border-color:#b7a681}}
.filter-panel{background:#fff;border-bottom:1px solid #24242418;margin-top:-26px;margin-bottom:26px;padding:0 24px;animation:filter-reveal .22s ease-out}
.filter-panel-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 0 4px}
.filter-panel-header h2{font-size:15px;line-height:1.4;font-weight:500;letter-spacing:-.2px;margin:0}
.filter-panel-header .catalog-control{margin-right:-10px}
.filter-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:0 0 16px}
.filter-group{border:0;min-width:0}
.filter-group+.filter-group{border-left:1px solid #24242412;padding-left:30px}
.filter-group>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:44px;font-size:12px;font-weight:500;cursor:pointer}
.filter-group>summary::-webkit-details-marker{display:none}
.filter-group>summary>.icon{width:14px;height:14px;color:#8a8e86;transition:rotate .2s}
.filter-group[open]>summary>.icon{rotate:180deg}
.filter-options-list{display:flex;flex-direction:column;gap:0;padding-top:4px}
.filter-option{display:flex;align-items:center;min-height:44px;gap:11px;cursor:pointer;font-size:12px;line-height:1.6;color:#525850}
.filter-option input{appearance:none;width:17px;height:17px;flex:0 0 17px;margin:0;border:1px solid #c5c9c1;border-radius:2px;background:#fff;cursor:pointer}
.filter-option input:checked{background:#333932;border-color:#333932;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10 3.3 3.3L15 6.5' fill='none' stroke='white' stroke-width='1.6'/%3E%3C/svg%3E")}
.filter-option input:focus-visible{outline:2px solid #847350;outline-offset:4px}
.filter-option .option-count{margin-left:auto;color:#93988e;font-size:11px;font-variant-numeric:tabular-nums}
.filter-panel-bottom{padding:16px 0;border-top:1px solid #24242412;display:flex;align-items:center;justify-content:space-between;gap:20px}
.filter-panel-bottom .button{height:44px;min-height:44px;justify-content:space-between;font-size:12px;gap:30px}
.filter-panel-bottom .clear-filters{min-height:44px;text-decoration:none;color:#73796f;padding-left:0}
@keyframes filter-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}
.catalog-page .preview-dialog h3{font-weight:500;font-size:26px;line-height:1.3}
@keyframes search-arrive{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}

@media(min-width:601px) and (max-width:1100px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-list .tour-title-row{grid-template-columns:1fr;gap:5px}}
@media(max-width:1100px){.catalog-faq-header{gap:38px}.catalog-tools{gap:6px}.faq-list{gap:18px}.faq-list summary{padding:20px;font-size:14px;gap:14px}.faq-answer{padding:0 54px 23px 20px}}
@media(max-width:767px){
 .catalog-intro{padding-block:14px 27px}.breadcrumb{font-size:10px;margin-bottom:21px;gap:8px}.breadcrumb .icon{width:9px;height:9px}
 .listing-masthead .catalog-intro h1{font-size:34px;line-height:1.15;letter-spacing:-1.5px;margin-bottom:14px}
 .catalog-intro p{font-size:12px;line-height:1.85;max-width:350px}
 .listing-masthead:after{background-size:auto,auto 390px;background-position:center,55% 30%;opacity:.75}
 .catalog-list{padding-block:14px 48px}.catalog-toolbar{gap:10px;margin-bottom:20px;min-height:60px;flex-wrap:wrap}
 .catalog-count{font-size:12px}.catalog-control{font-size:11px;gap:8px}.catalog-tools{gap:4px}
 .catalog-toolbar.search-open .catalog-search{order:3;flex-basis:100%;max-width:none;margin:0 0 12px}
 .catalog-search input{font-size:16px}.catalog-list .active-filters{margin-bottom:20px}
 .catalog-grid{gap:22px}
 .catalog-faq{padding-block:48px}.catalog-faq-header{grid-template-columns:1fr;gap:20px;margin-bottom:27px}.catalog-faq h2{font-size:34px;line-height:1.15;letter-spacing:-1.5px}
 .catalog-faq .eyebrow{margin-bottom:14px}.catalog-faq-header>p{justify-self:start;max-width:430px}.faq-list{grid-template-columns:1fr;gap:12px}.faq-list summary{min-height:72px;padding:20px;gap:16px}.faq-answer{padding:0 20px 23px}.faq-toggle{flex-basis:18px;width:18px}
 .filter-panel{padding-inline:18px;margin-top:-20px;margin-bottom:20px}.filter-options{display:block;padding-bottom:8px}.filter-group+.filter-group{padding-left:0;border-left:0;border-top:1px solid #24242412}.filter-group>summary{min-height:50px}.filter-options-list{padding-bottom:14px}.filter-panel-bottom{gap:10px}.filter-panel-bottom .button{gap:12px;font-size:11px}.filter-panel-bottom .clear-filters{font-size:11px}
}
@media(max-width:359px){.catalog-tools{gap:2px}.catalog-control{gap:6px}.filter-panel{padding-inline:14px}}
@media(min-width:768px) and (max-height:550px){.catalog-intro{padding-block:8px 24px}.breadcrumb{margin-bottom:8px}.listing-masthead .catalog-intro h1{font-size:34px;margin-bottom:10px}.catalog-intro p{font-size:12px;line-height:1.65}.catalog-list{padding-top:14px}.catalog-toolbar{min-height:52px;margin-bottom:20px}.filter-panel{margin-top:-20px}}
@media(prefers-reduced-motion:reduce){.catalog-search,.filter-panel{animation:none}.faq-item,.faq-toggle:after,.filter-group>summary>.icon{transition:none}}
