@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700&display=swap");

* {
    box-sizing: border-box;
}

html {
    background: #f3f0ea;
}

body {
    min-height: 100vh;
    margin: 0;
    background: #f3f0ea;
    color: #1c1917;
    font-family: "DM Sans", sans-serif;
    font-size: 16px;
    line-height: 1.6;
}

body > ul:first-of-type {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    list-style: none;
    margin: 0 0 8px;
     padding:30px 100px;
    background: #f8f8f8;
}

body > ul:first-of-type li {
    margin: 0;
    padding: 0;
}

body > ul:first-of-type li.logo {
    margin-right: auto;
}

body > ul:first-of-type li.logo a {
    display: flex;
    align-items: center;
    padding: 0;
}

body > ul:first-of-type li.logo img {
    display: block;
    width: 120px;
    max-width: 100%;
    height: auto;
}

body > ul:first-of-type a {
    display: inline-block;
    padding: 8px 12px;
    border-radius: 8px;
    color: #000000;
    font-size: 0.94rem;
    font-weight: 500;
    text-decoration: none;
}

body > ul:first-of-type a:hover {
    background: rgba(255, 255, 255, 0.12);
}

body > ul:first-of-type a:focus-visible {
    outline: 2px solid #f6f3ee;
    outline-offset: 2px;
}

.home-page {
    background: #f4f0e9;
    color: #18231f;
    font-family: "DM Sans", sans-serif;
}

.home-page h1,
.home-page h2,
.home-page h3,
.home-page p {
    width: auto;
    margin: 0;
}

.home-hero {
    position: relative;
    min-height: 560px;
    padding: clamp(70px, 11vw, 145px) max(24px, calc((100% - 1180px) / 2));
    display: flex;
    align-items: center;
    background: linear-gradient(90deg, rgba(12, 31, 27, .88), rgba(12, 31, 27, .36)), url("https://images.unsplash.com/photo-1539635278303-d4002c07eae3?auto=format&fit=crop&w=1800&q=85") center/cover;
}

.home-hero__content { max-width: 620px; color: #fff; }
.eyebrow { color: #c9834a; font-size: .72rem; font-weight: 700; letter-spacing: .18em; }
.home-hero h1 { margin: 18px 0; font-family: Georgia, serif; font-size: clamp(3rem, 6vw, 5.8rem); font-weight: 400; letter-spacing: 0; line-height: .98; }
.home-hero h1 em, .home-statement h2 em { color: #e4a46c; font-style: italic; }
.home-hero__intro { max-width: 430px; color: rgba(255, 255, 255, .8); font-size: 1.08rem; }
.home-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
.home-button { display: inline-flex; align-items: center; justify-content: center; gap: 28px; min-height: 48px; padding: 12px 18px; border-radius: 0; font-size: .82rem; font-weight: 700; text-decoration: none; }
.home-button span, .home-text-link span { font-size: 1.1rem; }
.home-button--primary { background: #d4844c; color: #fff; }
.home-button--ghost { border: 1px solid rgba(255,255,255,.5); color: #fff; }
.home-hero__note { position: absolute; right: max(24px, calc((100% - 1180px) / 2)); bottom: 38px; display: grid; gap: 3px; color: #fff; font-size: .75rem; text-align: right; }
.home-hero__note span { color: rgba(255,255,255,.64); }

.home-search { width: min(1080px, calc(100% - 48px)); margin: -48px auto 0; position: relative; display: grid; grid-template-columns: .9fr 1.6fr; gap: 34px; align-items: center; padding: 28px 34px; background: #fff; box-shadow: 0 16px 44px rgba(30, 43, 37, .1); }
.home-search__heading { display: flex; gap: 18px; align-items: flex-start; }
.home-search__number { color: #c9834a; font-family: Georgia, serif; font-size: 2rem; }
.home-search h2, .home-section h2, .home-blog h2 { margin-top: 4px; font-family: Georgia, serif; font-size: clamp(1.7rem, 3vw, 2.5rem); font-weight: 400; line-height: 1.1; }
.home-search__form { display: grid; grid-template-columns: 1fr 1fr auto; gap: 14px; align-items: end; }
.home-search label { display: grid; gap: 6px; margin: 0; color: #7b817b; font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.home-search input, .home-search select { height: 45px; padding: 8px 10px; border: 0; border-bottom: 1px solid #d9d5cc; border-radius: 0; background: transparent; color: #18231f; font-size: .9rem; }
.home-search input:focus, .home-search select:focus { border-color: #c9834a; outline: 0; }
.home-button--dark { border: 0; background: #18231f; color: #fff; cursor: pointer; }

.home-section, .home-blog, .home-statement { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.home-section { padding: 105px 0 112px; }
.home-section__head { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 30px; }
.home-text-link { display: inline-flex; align-items: center; gap: 12px; color: #18231f; font-size: .83rem; font-weight: 700; text-decoration: none; }
.tour-grid { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 16px; }
.tour-card { min-height: 405px; position: relative; display: flex; flex-direction: column; justify-content: space-between; padding: 24px; overflow: hidden; background-position: center; background-size: cover; color: #fff; text-decoration: none; }
.tour-card::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.7)); }
.tour-card > * { position: relative; }
.tour-card--cappadocia { background-image: url("https://images.unsplash.com/photo-1500534623283-312aade485b7?auto=format&fit=crop&w=1000&q=80"); }
.tour-card--mardin { background-image: url("https://images.unsplash.com/photo-1528181304800-259b08848526?auto=format&fit=crop&w=1000&q=80"); }
.tour-card--batum { background-image: url("https://images.unsplash.com/photo-1530789253388-582c481c54b0?auto=format&fit=crop&w=1000&q=80"); }
.tour-card__tag { align-self: flex-start; padding: 5px 9px; background: rgba(255,255,255,.17); font-size: .68rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.tour-card h3 { margin-bottom: 3px; font-family: Georgia, serif; font-size: 2rem; font-weight: 400; }
.tour-card p { color: rgba(255,255,255,.78); font-size: .85rem; }
.tour-card__arrow { position: absolute; right: 23px; bottom: 24px; font-size: 1.5rem; }

.home-statement { padding: 78px 0 88px; border-top: 1px solid #d8d2c7; border-bottom: 1px solid #d8d2c7; }
.home-statement h2 { max-width: 650px; margin: 18px 0 54px; font-family: Georgia, serif; font-size: clamp(2.6rem, 5vw, 4.8rem); font-weight: 400; line-height: .99; }
.home-values { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }
.home-values > div { padding-top: 14px; border-top: 2px solid #c9834a; }
.home-values strong { color: #c9834a; font-family: Georgia, serif; font-size: 1.1rem; }
.home-values h3 { margin: 30px 0 8px; font-family: Georgia, serif; font-size: 1.4rem; font-weight: 400; }
.home-values p, .home-blog > div:first-child > p:not(.eyebrow) { color: #68716a; font-size: .9rem; }
.home-blog { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: center; padding: 110px 0; }
.home-blog h2 { margin: 15px 0; font-size: clamp(2.3rem, 4vw, 4rem); }
.home-blog .home-text-link { margin-top: 27px; }
.home-blog__visual { min-height: 300px; padding: 26px; display: flex; flex-direction: column; justify-content: space-between; background: #d9a16f; color: #18231f; }
.home-blog__visual span { font-family: Georgia, serif; font-size: 1.3rem; }
.home-blog__visual strong { font-family: Georgia, serif; font-size: clamp(2rem, 4vw, 3.8rem); font-weight: 400; line-height: .95; }

@media (max-width: 760px) {
    .home-hero { min-height: 500px; }
    .home-hero h1 { font-size: 3.25rem; }
    .home-hero__note { display: none; }
    .home-search { grid-template-columns: 1fr; margin-top: -25px; padding: 24px; }
    .home-search__form, .tour-grid, .home-values, .home-blog { grid-template-columns: 1fr; }
    .home-search__form { gap: 18px; }
    .home-button--dark { width: 100%; }
    .home-section { padding: 76px 0; }
    .home-section__head { align-items: flex-start; flex-direction: column; }
    .tour-card { min-height: 320px; }
    .home-statement { padding: 65px 0; }
    .home-blog { gap: 35px; padding: 75px 0; }
}

.home-page { background: #f1f5f1; color: #18342d; }
.home-page .public-site-header,
.public-tour-page .public-site-header { width: min(1240px, calc(100% - 48px)); min-height: 82px; margin: 0 auto; }
.public-site-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; border-bottom: 1px solid rgba(24,52,45,.12); }
.public-site-brand { display: inline-flex; align-items: center; text-decoration: none; }
.public-site-brand img { display: block; width: 280px; max-width: 32vw; height: auto; object-fit: contain; }
.public-site-header nav { display: flex; align-items: center; gap: 28px; }
.public-site-header nav a,
.public-site-header > a { color: #304c44; font-size: .83rem; font-weight: 600; text-decoration: none; }
.public-site-header nav .public-header-contact { padding: 10px 15px; background: #d16b42; color: #fff; }
.public-header-contact span { margin-left: 9px; }
.home-page .home-hero { min-height: 610px; overflow: hidden; background: #17372f; }
.home-hero__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.home-page .home-hero::after { position: absolute; inset: 0; z-index: 0; background: linear-gradient(90deg, rgba(10,35,29,.87), rgba(10,35,29,.18)); content: ""; }
.home-page .home-hero__content, .home-page .home-hero__note { z-index: 1; }
.home-page .home-hero h1 { max-width: 700px; font-size: clamp(3.2rem, 6vw, 5.8rem); }
.home-page .home-hero h1 em, .home-page .home-statement h2 em { color: #eea16d; }
.home-page .eyebrow { color: #dc7950; }
.home-page .home-button--primary { background: #d16b42; }
.home-page .home-search { border-top: 3px solid #d16b42; }
.home-page .home-search__number { color: #d16b42; }
.home-page .home-section { padding-top: 95px; }
.home-tour-count { color: #75857c; font-size: .82rem; }
.home-page .tour-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.home-page .tour-card--dynamic { min-height: 440px; padding: 21px; background: #31564a; }
.home-page .tour-card--dynamic::before { z-index: 0; background: linear-gradient(180deg, rgba(9,24,20,.02) 25%, rgba(9,24,20,.8)); }
.tour-card--dynamic img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.tour-card--dynamic:hover img { transform: scale(1.04); }
.tour-card--dynamic .tour-card__tag { z-index: 1; background: rgba(19,48,40,.76); }
.tour-card--dynamic > div, .tour-card--dynamic .tour-card__price { z-index: 1; }
.home-page .tour-card--dynamic h3 { max-width: 90%; font-family: "DM Sans", sans-serif; font-size: 1.45rem; font-weight: 700; line-height: 1.2; }
.tour-card__price { display: grid; gap: 1px; align-self: flex-start; font-size: .95rem; font-weight: 700; }
.tour-card__price small { color: rgba(255,255,255,.72); font-size: .67rem; font-weight: 400; }
.home-page .tour-card__arrow { z-index: 1; }
.home-page .home-statement { border-color: #ccd9d1; }
.home-page .home-values > div { border-color: #d16b42; }
.home-page .home-values strong { color: #d16b42; }
.home-no-tours { grid-column: 1 / -1; padding: 38px; border-left: 3px solid #d16b42; background: #fff; }
.home-no-tours strong { font-family: Georgia, serif; font-size: 1.5rem; font-weight: 400; }
.home-no-tours p { margin: 8px 0 16px; color: #68776f; }
.home-no-tours a { color: #b65332; font-size: .85rem; font-weight: 700; text-decoration: none; }
.public-site-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 28px max(24px, calc((100% - 1180px) / 2)); border-top: 1px solid #d4ddd6; background: #e7eee8; color: #587068; font-size: .78rem; }
.public-site-footer nav { display: flex; flex-wrap: wrap; gap: 16px; }
.public-site-footer nav a { color: #18342d; font-weight: 700; text-decoration: none; }
.public-article { width: min(760px, calc(100% - 48px)); margin: 0 auto; padding: 72px 0 110px; }
.public-article h1 { margin: 12px 0 24px; font-family: Georgia, serif; font-size: clamp(2.4rem, 4vw, 4rem); font-weight: 400; line-height: 1; }
.public-article h2 { margin: 32px 0 12px; font-size: 1.05rem; }
.public-article p { color: #68716a; font-size: .95rem; line-height: 1.7; }
.public-article a { color: #b65332; font-weight: 700; text-decoration: none; }

.home-categories,
.home-blog-slider { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.home-categories { padding: 55px 0 20px; }
.home-categories .home-section__head { margin-bottom: 19px; }
.home-categories .home-section__head h2,
.home-carousel-heading h2 { margin: 3px 0 0; color: #18342d; font-family: Georgia, serif; font-size: 1.8rem; font-weight: 400; line-height: 1.15; }
.home-category-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.home-category-tile { position: relative; display: block; height: 230px; overflow: hidden; border-radius: 15px; background: #31564a; color: #fff; text-decoration: none; isolation: isolate; }
.home-category-panels { position: absolute; inset: 0; display: flex; overflow: hidden; }
.home-category-panels > span { position: relative; flex: 1 1 20%; min-width: 0; margin-left: -8px; clip-path: polygon(14% 0, 100% 0, 86% 100%, 0 100%); }
.home-category-panels > span:first-child { margin-left: 0; }
.home-category-panels img { width: 100%; height: 100%; object-fit: cover; }
.home-category-tile::after { position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, transparent 35%, rgba(15,34,29,.63)); content: ""; }
.home-category-label { position: absolute; z-index: 2; bottom: 17px; left: 0; display: flex; align-items: center; gap: 10px; padding: 10px 16px 10px 19px; border-radius: 0 24px 24px 0; background: #b18b45; color: #fff; font-size: .95rem; font-weight: 700; }
.home-category-label small { color: rgba(255,255,255,.8); font-size: .67rem; font-weight: 500; }
.home-category-tile:hover .home-category-panels img { transform: scale(1.04); transition: transform .35s ease; }
.home-category-tile.is-selected { outline: 3px solid #d16b42; outline-offset: 3px; }
.home-tour-list { width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding: 35px 0 72px; }
.home-tour-list > .home-search__form { justify-content: flex-end; margin-bottom: 12px; }
.home-tour-group { padding: 25px 0 34px; }
.home-tour-group + .home-tour-group { border-top: 1px solid #d7e0da; }
.home-tour-group .home-carousel-heading { margin-bottom: 15px; }
.home-carousel-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.home-carousel-heading > div:first-child { display: grid; gap: 4px; }
.home-carousel-heading .home-tour-count { margin-top: 4px; }
.home-search__form--compact { display: flex; align-items: end; gap: 12px; }
.home-search__form--compact label { min-width: 150px; }
.home-search__form--compact input,
.home-search__form--compact select { height: 38px; font-size: .79rem; }
.home-search__form--compact .home-button { min-height: 38px; padding: 8px 12px; gap: 10px; }
.home-carousel { display: flex; align-items: center; gap: 10px; }
.home-carousel-track { display: flex; flex: 1 1 auto; gap: 16px; min-width: 0; overflow-x: auto; padding: 2px 2px 12px; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-color: #b8c8bf #e3ebe5; scrollbar-width: thin; }
.home-tour-card { flex: 0 0 270px; overflow: hidden; border: 1px solid #dfe7e1; border-radius: 12px; background: #fff; color: #20372f; scroll-snap-align: start; text-decoration: none; }
.home-tour-card__image { position: relative; height: 180px; overflow: hidden; background: #dce7df; }
.home-tour-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.home-tour-card:hover .home-tour-card__image img { transform: scale(1.04); }
.home-tour-card__image > span { position: absolute; bottom: 10px; left: 10px; padding: 5px 8px; background: #b18b45; color: #fff; font-size: .66rem; font-weight: 700; }
.home-tour-card__body { padding: 13px 14px 15px; }
.home-tour-card__body h3 { min-height: 44px; margin: 0; color: #263a32; font-size: .95rem; font-weight: 700; line-height: 1.4; }
.home-tour-card__body > p { margin: 3px 0 12px; color: #7a8981; font-size: .73rem; }
.home-tour-card__body > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 5px; padding-top: 9px; border-top: 1px solid #e5ebe7; font-size: .69rem; }
.home-tour-card__body > div > span { color: #74847c; }
.home-tour-card__body strong { color: #a57c32; font-size: .76rem; }
.home-carousel-arrow { display: inline-grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border: 1px solid #ccd9d1; border-radius: 50%; background: #fff; color: #35594b; font-size: 1.5rem; line-height: 1; cursor: pointer; }
.home-carousel-arrow:hover { border-color: #b18b45; background: #f8f5eb; }
.home-blog-slider { padding: 42px 0 76px; border-top: 1px solid #d7e0da; }
.home-carousel-controls { display: flex; gap: 8px; }
.home-blog-track { gap: 17px; }
.home-blog-card { flex: 0 0 330px; overflow: hidden; border: 1px solid #dfe7e1; border-radius: 12px; background: #fff; color: #20372f; scroll-snap-align: start; text-decoration: none; }
.home-blog-card > img { display: block; width: 100%; height: 176px; object-fit: cover; }
.home-blog-card > div { padding: 14px 16px 17px; }
.home-blog-card > div > span { color: #a57c32; font-size: .67rem; font-weight: 700; text-transform: uppercase; }
.home-blog-card h3 { min-height: 48px; margin: 7px 0; font-size: 1rem; font-weight: 700; line-height: 1.4; }
.home-blog-card p { min-height: 48px; margin: 0 0 12px; color: #728078; font-size: .77rem; line-height: 1.55; }
.home-blog-card b { color: #315d4d; font-size: .74rem; }
.home-blog-card b span { margin-left: 5px; color: #b18b45; }

.public-site-header--menu { position: relative; z-index: 30; background: #fff; }
.public-tour-nav { display: flex; height: 100%; align-items: center; }
.public-tour-nav > button { display: inline-flex; align-items: center; gap: 6px; padding: 10px 0; border: 0; background: transparent; color: #25372f; font: inherit; font-size: .78rem; font-weight: 700; cursor: pointer; }
.public-tour-nav > button:focus-visible { border-radius: 2px; outline: 2px solid #b18b45; outline-offset: 4px; }
.public-tour-nav > button span { color: #a98033; font-size: 1rem; }
.public-mega-menu { position: absolute; top: 100%; left: 0; z-index: 40; display: none; grid-template-columns: 285px minmax(0, 1fr); width: 100%; min-height: 240px; border: 1px solid #e4eae6; border-radius: 0 0 12px 12px; background: #fff; box-shadow: 0 20px 38px rgba(23,49,39,.2); }
.public-tour-nav.is-open .public-mega-menu { display: grid; }
.public-mega-groups { display: grid; align-content: center; gap: 3px; padding: 22px; border-right: 1px solid #e7ece9; background: #f6f8f6; }
.public-mega-groups a { display: flex; align-items: center; gap: 12px; padding: 13px 10px; color: #24483a; font-size: .86rem; font-weight: 600; text-decoration: none; }
.public-mega-groups a:hover { background: #e9f1eb; }
.public-mega-groups a > span { color: #b18b45; font-size: .67rem; }
.public-mega-groups a b { margin-left: auto; color: #b18b45; }
.public-mega-popular { padding: 22px 26px; }
.public-mega-popular > p { margin: 0 0 14px; color: #a98033; font-size: .66rem; font-weight: 700; letter-spacing: .12em; }
.public-mega-popular > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px 18px; }
.public-mega-popular > div > a { display: flex; justify-content: space-between; gap: 8px; padding: 9px 0; border-bottom: 1px solid #edf0ee; color: #53645b; font-size: .76rem; text-decoration: none; }
.public-mega-popular > div > a:hover { color: #a98033; }
.public-mega-popular > div > a span { color: #a98033; }

.tour-listing-page { min-height: 100vh; background: #f4f6f4; color: #25372f; }
.listing-breadcrumb { display: flex; align-items: center; gap: 10px; width: min(1240px, calc(100% - 48px)); margin: 0 auto; padding: 14px 0; color: #89968f; font-size: .72rem; }
.listing-breadcrumb a { color: #4b7965; text-decoration: none; }
.listing-breadcrumb strong { color: #53645b; font-weight: 500; }
.listing-hero { padding: 25px max(24px, calc((100% - 1240px) / 2)) 27px; background: #087341; color: #fff; }
.listing-hero > p { margin: 0 0 3px; color: rgba(255,255,255,.72); font-size: .67rem; font-weight: 700; letter-spacing: .14em; }
.listing-hero h1 { margin: 0 0 18px; font-family: Georgia, serif; font-size: 2rem; font-weight: 400; }
.listing-search { display: grid; grid-template-columns: 160px minmax(0, 1fr) 160px; align-items: center; max-width: 1040px; min-height: 56px; overflow: hidden; border-radius: 8px; background: #fff; color: #28483a; }
.listing-search label { padding: 0 16px; font-size: .78rem; font-weight: 700; }
.listing-search input { height: 56px; padding: 0 16px; border: 0; border-left: 1px solid #e2e8e4; outline: 0; color: #25372f; font: inherit; font-size: .83rem; }
.listing-search button { height: 56px; border: 0; background: #045e35; color: #fff; font: inherit; font-size: .83rem; font-weight: 700; cursor: pointer; }
.listing-search button span { margin-left: 10px; }
.tour-listing-layout { display: grid; grid-template-columns: 245px minmax(0, 1fr); gap: 28px; width: min(1240px, calc(100% - 48px)); margin: 22px auto 75px; align-items: start; }
.tour-filter-sidebar { position: sticky; top: 14px; max-height: calc(100vh - 28px); overflow-y: auto; border: 1px solid #d9e2dc; background: #fff; scrollbar-color: #a9bdb0 #edf2ee; scrollbar-width: thin; }
.tour-filter-title { display: flex; align-items: center; justify-content: space-between; padding: 16px 15px; border-bottom: 1px solid #e6ebe8; }
.tour-filter-title h2 { margin: 0; font-size: 1rem; font-weight: 700; }
.tour-filter-title a { color: #92722f; font-size: .7rem; text-decoration: none; }
.tour-filter-sidebar form > fieldset { display: grid; gap: 9px; margin: 0; padding: 16px 15px; border: 0; border-bottom: 1px solid #e8ede9; }
.tour-filter-sidebar legend { margin-bottom: 6px; color: #384b42; font-size: .81rem; font-weight: 700; }
.tour-filter-option { display: flex; align-items: center; gap: 8px; color: #5f7067; font-size: .76rem; line-height: 1.4; }
.tour-filter-option input { accent-color: #087341; }
.tour-filter-sidebar select,
.tour-filter-price input { width: 100%; min-width: 0; height: 36px; padding: 0 9px; border: 1px solid #dfe6e1; border-radius: 4px; background: #fff; color: #596a61; font: inherit; font-size: .72rem; }
.tour-filter-price { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.tour-filter-price label { display: grid; gap: 4px; color: #87938c; font-size: .64rem; }
.tour-filter-submit { position: sticky; bottom: 0; width: calc(100% - 30px); min-height: 42px; margin: 14px 15px; border: 0; border-radius: 4px; background: #087341; box-shadow: 0 0 0 8px #fff; color: #fff; font: inherit; font-size: .78rem; font-weight: 700; cursor: pointer; }
.tour-listing-results { min-width: 0; }
.tour-listing-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 54px; margin-bottom: 10px; }
.tour-listing-toolbar > div { display: flex; align-items: baseline; gap: 8px; }
.tour-listing-toolbar h2 { margin: 0; font-size: .94rem; font-weight: 700; }
.tour-listing-toolbar > div > span { color: #89968f; font-size: .73rem; }
.tour-listing-toolbar nav { display: flex; gap: 5px; }
.tour-listing-toolbar nav a { padding: 8px 10px; border: 1px solid #e0e6e2; border-radius: 5px; background: #fff; color: #64736b; font-size: .68rem; text-decoration: none; }
.tour-listing-toolbar nav a.is-active { border-color: #6e9a84; color: #276748; }
.tour-listing-cards { display: grid; gap: 14px; }
.tour-listing-card { display: grid; grid-template-columns: 225px minmax(0, 1fr) 155px; min-height: 205px; overflow: hidden; border: 1px solid #e0e6e2; background: #fff; box-shadow: 0 2px 5px rgba(29,53,42,.05); }
.tour-listing-image { display: block; min-height: 205px; background: #dfe8e2; }
.tour-listing-image img { display: block; width: 100%; height: 100%; min-height: 205px; object-fit: cover; }
.tour-listing-info { align-self: center; padding: 18px 21px; }
.tour-listing-info > span { color: #a98033; font-size: .67rem; font-weight: 700; text-transform: uppercase; }
.tour-listing-info h3 { margin: 5px 0 8px; font-size: 1rem; line-height: 1.35; }
.tour-listing-info h3 a { color: #25372f; text-decoration: none; }
.tour-listing-info p { margin: 0 0 12px; color: #78857e; font-size: .74rem; line-height: 1.5; }
.tour-listing-info small { color: #6d7c74; font-size: .68rem; }
.tour-listing-price { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; padding: 16px 10px; border-left: 1px solid #edf0ee; text-align: center; }
.tour-listing-price > span { color: #89968f; font-size: .64rem; }
.tour-listing-price > strong { color: #5d6c63; font-size: .77rem; }
.tour-listing-price > b { margin-bottom: 6px; color: #34884c; font-size: .94rem; }
.tour-listing-price > a { width: 100%; padding: 8px 5px; border-radius: 3px; background: #b18b45; color: #fff; font-size: .71rem; font-weight: 700; text-decoration: none; }
.listing-empty { padding: 35px; border: 1px solid #e0e6e2; background: #fff; }
.listing-empty strong { font-size: .95rem; }
.listing-empty p { color: #78857e; font-size: .78rem; }

.tour-admin-page { min-height: 100vh; background: #f2f5f3; color: #1c332d; }
.tour-admin-header { display: flex; align-items: center; justify-content: space-between; min-height: 68px; padding: 0 max(22px, calc((100% - 1180px) / 2)); border-bottom: 1px solid #d8e1dc; background: #fff; }
.tour-admin-header > a:first-child { color: #1c332d; font-size: .9rem; font-weight: 700; text-decoration: none; }
.tour-admin-header > a:first-child span { color: #82918a; font-weight: 400; }
.tour-admin-primary { display: inline-flex; min-height: 40px; align-items: center; justify-content: center; padding: 0 16px; border: 0; background: #d16b42; color: #fff; font: inherit; font-size: .83rem; font-weight: 700; text-decoration: none; cursor: pointer; }
.tour-admin-main { width: min(1180px, calc(100% - 44px)); margin: 0 auto; padding: 38px 0 64px; }
.tour-admin-title { display: flex; align-items: end; justify-content: space-between; margin-bottom: 23px; }
.tour-admin-title p { margin: 0; color: #bf633f; font-size: .68rem; font-weight: 700; letter-spacing: .13em; }
.tour-admin-title h1 { margin: 4px 0 0; font-size: 1.8rem; font-weight: 600; }
.tour-admin-title > span { color: #718078; font-size: .82rem; }
.tour-admin-status { padding: 12px 15px; border-left: 3px solid #39826c; background: #e3f1e9; color: #285e4b; }
.tour-admin-table-wrap { overflow-x: auto; border: 1px solid #dbe3de; background: #fff; }
.tour-admin-table { width: 100%; border-collapse: collapse; text-align: left; }
.tour-admin-table th, .tour-admin-table td { padding: 13px 15px; border-bottom: 1px solid #e6ece8; font-size: .8rem; vertical-align: middle; }
.tour-admin-table th { background: #f7f9f7; color: #718078; font-size: .68rem; font-weight: 700; text-transform: uppercase; }
.tour-admin-table td:first-child strong, .tour-admin-table td:first-child small { display: block; }
.tour-admin-table td:first-child small { margin-top: 2px; color: #86938d; }
.tour-admin-state { padding: 4px 8px; background: #edf0ee; color: #77837d; font-size: .68rem; }
.tour-admin-state.is-active { background: #e1f2e8; color: #26714f; }
.tour-admin-actions { display: flex; align-items: center; justify-content: end; gap: 12px; white-space: nowrap; }
.tour-admin-actions a, .tour-admin-actions button { padding: 0; border: 0; background: none; color: #34745f; font: inherit; font-size: .78rem; text-decoration: none; cursor: pointer; }
.tour-admin-actions button { color: #a55342; }
.tour-admin-empty { padding: 35px !important; color: #78877f; text-align: center; }
.tour-admin-form-main { max-width: 980px; }
.tour-admin-errors { margin-bottom: 16px; padding: 12px 15px; border-left: 3px solid #bb4c3e; background: #fae9e6; color: #8a3029; }
.tour-editor { display: grid; gap: 14px; }
.tour-editor-section { padding: 22px; border: 1px solid #dbe3de; background: #fff; }
.tour-editor-section h2 { margin: 0 0 16px; font-size: 1rem; font-weight: 650; }
.tour-editor-section-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 14px; }
.tour-editor-section-head h2 { margin: 0; }
.tour-editor-section-head p { margin: 3px 0 0; color: #829089; font-size: .76rem; }
.tour-editor-add { border: 0; background: none; color: #31735d; font: inherit; font-size: .78rem; font-weight: 700; cursor: pointer; }
.tour-editor-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.tour-editor label { display: grid; gap: 6px; margin: 0; color: #56665e; font-size: .75rem; font-weight: 600; }
.tour-editor input:not([type="checkbox"]), .tour-editor select, .tour-editor textarea { width: 100%; min-width: 0; min-height: 42px; padding: 9px 10px; border: 1px solid #d5dfd9; border-radius: 0; background: #fff; color: #203c33; font: inherit; font-size: .83rem; }
.tour-editor textarea { resize: vertical; }
.tour-editor-wide { grid-column: 1 / -1; }
.tour-departure-editor, .tour-itinerary-editor { display: grid; gap: 9px; }
.tour-departure-row { display: grid; grid-template-columns: 1.1fr 1fr 1fr 34px; align-items: end; gap: 10px; padding: 12px; background: #f5f8f6; }
.tour-itinerary-row { display: grid; grid-template-columns: .65fr 1.1fr 2fr 34px; align-items: end; gap: 10px; padding: 12px; background: #f5f8f6; }
.tour-itinerary-details { grid-column: auto; }
.tour-editor-remove { width: 34px; height: 40px; border: 0; background: #f3e9e6; color: #a55342; font-size: 1.25rem; cursor: pointer; }
.tour-editor-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.tour-editor-preview { display: block; max-width: 230px; max-height: 140px; margin-top: 16px; object-fit: cover; }
.tour-editor-gallery { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.tour-editor-gallery label { gap: 4px; }
.tour-editor-gallery img { width: 95px; height: 72px; object-fit: cover; }
.tour-editor-gallery label span { display: flex; align-items: center; gap: 5px; font-size: .68rem; }
.tour-editor-publish { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.tour-editor-checkbox { display: flex !important; align-items: center; gap: 8px !important; }

.public-tour-page { background: #f2f5f1; color: #1c342d; }
.public-tour-main { width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding: 18px 0 80px; }
.public-breadcrumb { display: flex; flex-wrap: wrap; gap: 9px; margin: 4px 0 18px; color: #87948c; font-size: .72rem; }
.public-breadcrumb a { color: #55756a; text-decoration: none; }
.public-tour-hero { position: relative; min-height: 430px; overflow: hidden; background: #234d40; color: #fff; }
.public-tour-hero > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.public-tour-hero::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(12,36,29,.83), rgba(12,36,29,.08)); content: ""; }
.public-tour-hero-copy { position: absolute; z-index: 1; right: 10%; bottom: 42px; left: 7%; }
.public-tour-hero-copy p, .public-section-kicker { margin: 0 0 8px; color: #d26e47; font-size: .68rem; font-weight: 700; letter-spacing: .14em; }
.public-tour-hero-copy h1 { max-width: 740px; margin: 0 0 12px; font-family: Georgia, serif; font-size: clamp(2.3rem, 5vw, 4rem); font-weight: 400; line-height: 1.05; }
.public-tour-hero-copy span { color: rgba(255,255,255,.78); font-size: .86rem; }
.public-tour-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 9px 0 32px; }
.public-tour-gallery img { width: 100%; height: 135px; object-fit: cover; }
.public-tour-layout { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(270px, .8fr); gap: 54px; padding-top: 40px; }
.public-tour-content { display: grid; gap: 48px; }
.public-tour-content h2, .public-tour-prices h2 { margin: 0 0 16px; font-family: Georgia, serif; font-size: 1.8rem; font-weight: 400; }
.public-tour-content section > p:not(.public-section-kicker) { max-width: 760px; margin: 0 0 13px; color: #5c6c64; font-size: .92rem; line-height: 1.8; }
.public-itinerary { border-top: 1px solid #d6e0d9; }
.public-itinerary article { display: grid; grid-template-columns: 90px 1fr; gap: 20px; padding: 20px 0; border-bottom: 1px solid #d6e0d9; }
.public-itinerary article > span { color: #c36441; font-size: .75rem; font-weight: 700; }
.public-itinerary h3 { margin: 0 0 8px; font-size: 1rem; }
.public-itinerary p { margin: 0 0 7px; color: #64746c; font-size: .84rem; line-height: 1.65; }
.public-services-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; }
.public-services-grid ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.public-services-grid li { position: relative; padding-left: 18px; color: #5e7067; font-size: .84rem; }
.public-services-grid li::before { position: absolute; left: 0; color: #39836a; content: "✓"; }
.public-tour-prices { align-self: start; padding: 22px; border-top: 3px solid #d16b42; background: #fff; }
.public-price-table { border-top: 1px solid #e2e8e4; }
.public-price-row { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 8px; padding: 11px 0; border-bottom: 1px solid #e2e8e4; color: #52665c; font-size: .73rem; }
.public-price-head { color: #89968f; font-size: .65rem; font-weight: 700; text-transform: uppercase; }
.public-tour-prices > a { display: flex; align-items: center; justify-content: space-between; margin-top: 20px; padding: 13px; background: #d16b42; color: #fff; font-size: .8rem; font-weight: 700; text-decoration: none; }

@media (max-width: 760px) {
    .public-site-header { width: calc(100% - 32px) !important; min-height: 68px; }
    .public-site-header nav { gap: 13px; }
    .public-site-header nav a { font-size: .72rem; }
    .home-page .public-site-header nav a[href="/hakkimizda"] { display: none; }
    .public-site-header nav .public-header-contact { padding: 8px; }
    .public-site-brand img { width: 172px; max-width: 46vw; }
    .home-page .home-hero { min-height: 530px; padding: 70px 24px; }
    .home-page .home-hero h1 { font-size: 3.25rem; }
    .home-page .home-search { width: calc(100% - 28px); }
    .home-page .tour-grid { grid-template-columns: 1fr; }
    .home-page .tour-card--dynamic { min-height: 360px; }
    .home-categories, .home-tour-list, .home-blog-slider { width: calc(100% - 30px); }
    .home-tour-list { padding-top: 20px; }
    .home-tour-group { padding: 22px 0 28px; }
    .home-category-grid { grid-template-columns: 1fr; gap: 12px; }
    .home-category-tile { height: 190px; }
    .home-carousel-heading { align-items: flex-start; flex-direction: column; }
    .home-search__form--compact { width: 100%; flex-wrap: wrap; }
    .home-search__form--compact label { min-width: 120px; flex: 1 1 130px; }
    .home-search__form--compact .home-button { flex: 1 0 100%; }
    .home-carousel { gap: 5px; }
    .home-carousel-arrow { width: 31px; height: 31px; flex-basis: 31px; font-size: 1.25rem; }
    .home-tour-card { flex-basis: min(270px, 78vw); }
    .home-blog-card { flex-basis: min(330px, 82vw); }
    .home-blog-slider { padding: 34px 0 52px; }
    .home-blog-slider .home-carousel-heading { align-items: end; flex-direction: row; }
    .public-site-header--menu nav { gap: 0; }
    .public-site-header--menu nav > a { display: none; }
    .public-site-header--menu .public-mega-menu { left: 50%; width: calc(100vw - 20px); max-height: calc(100vh - 78px); overflow-y: auto; transform: translateX(-50%); grid-template-columns: 1fr; }
    .public-mega-groups { grid-template-columns: 1fr 1fr 1fr; gap: 3px; padding: 9px; border-right: 0; border-bottom: 1px solid #e7ece9; }
    .public-mega-groups a { align-items: flex-start; flex-direction: column; gap: 4px; padding: 9px 6px; font-size: .68rem; }
    .public-mega-groups a b { display: none; }
    .public-mega-popular { padding: 13px; }
    .public-mega-popular > div { grid-template-columns: 1fr 1fr; gap: 2px 12px; }
    .public-mega-popular > div > a { font-size: .67rem; }
    .listing-breadcrumb { width: calc(100% - 30px); }
    .listing-hero { padding: 22px 15px; }
    .listing-hero h1 { font-size: 1.7rem; }
    .listing-search { grid-template-columns: minmax(0, 1fr) 100px; }
    .listing-search label { display: none; }
    .listing-search input { border-left: 0; }
    .tour-listing-layout { grid-template-columns: 1fr; gap: 18px; width: calc(100% - 30px); margin-top: 16px; }
    .tour-filter-sidebar { position: static; order: 0; max-height: none; overflow: visible; }
    .tour-filter-submit { position: static; box-shadow: none; }
    .tour-listing-results { order: 1; }
    .tour-listing-toolbar { align-items: flex-start; flex-direction: column; }
    .tour-listing-toolbar nav { width: 100%; overflow-x: auto; }
    .tour-listing-toolbar nav a { flex: 0 0 auto; }
    .tour-listing-card { grid-template-columns: 112px minmax(0, 1fr); }
    .tour-listing-image { grid-row: span 2; min-height: 170px; }
    .tour-listing-image img { min-height: 170px; }
    .tour-listing-info { padding: 12px; }
    .tour-listing-info h3 { font-size: .83rem; }
    .tour-listing-info p { font-size: .69rem; }
    .tour-listing-price { grid-column: 1 / -1; flex-direction: row; flex-wrap: wrap; justify-content: space-between; gap: 8px; border-top: 1px solid #edf0ee; border-left: 0; }
    .tour-listing-price > a { width: auto; min-width: 120px; }
    .public-site-footer { flex-wrap: wrap; padding: 24px; }
    .tour-admin-main { width: calc(100% - 28px); padding-top: 26px; }
    .tour-admin-header { padding: 0 14px; }
    .tour-admin-table { min-width: 750px; }
    .tour-editor-section { padding: 16px; }
    .tour-editor-grid, .tour-editor-columns { grid-template-columns: 1fr; }
    .tour-departure-row { grid-template-columns: 1fr 1fr; }
    .tour-itinerary-row { grid-template-columns: 1fr 1fr 34px; }
    .tour-itinerary-details { grid-column: 1 / -1; }
    .tour-editor-publish { align-items: stretch; flex-direction: column; }
    .tour-editor-publish .tour-admin-primary { width: 100%; }
    .public-tour-main { width: calc(100% - 30px); }
    .public-tour-hero { min-height: 380px; }
    .public-tour-hero-copy { right: 20px; bottom: 25px; left: 22px; }
    .public-tour-gallery { grid-template-columns: repeat(2, 1fr); }
    .public-tour-gallery img { height: 110px; }
    .public-tour-layout { grid-template-columns: 1fr; gap: 36px; padding-top: 30px; }
    .public-services-grid { grid-template-columns: 1fr; gap: 24px; }
}

.contact-page {
    overflow: hidden;
    background: #f4f0e9;
    color: #18231f;
}

.contact-page h1,
.contact-page h2,
.contact-page h3,
.contact-page p {
    width: auto;
    margin: 0;
}

.contact-intro,
.contact-form-section { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.contact-intro > *, .contact-form-section > * { min-width: 0; }
.contact-intro { display: grid; grid-template-columns: 1.15fr .85fr; gap: 70px; align-items: center; padding: 88px 0 100px; }
.contact-map { min-height: 520px; overflow: hidden; background: #d8d2c7; }
.contact-map iframe { display: block; width: 100%; height: 520px; border: 0; }
.contact-details { padding-right: 25px; }
.contact-eyebrow { color: #c9834a; font-size: .72rem; font-weight: 700; letter-spacing: .18em; }
.contact-details h1 { margin: 18px 0 23px; font-family: Georgia, serif; font-size: clamp(3rem, 5vw, 5.3rem); font-weight: 400; letter-spacing: 0; line-height: .94; }
.contact-details h1 em { color: #c9834a; font-style: italic; }
.contact-details__intro { max-width: 390px; color: #68716a; font-size: .95rem; }
.contact-info-list { display: grid; gap: 22px; margin-top: 45px; }
.contact-info-list > div { padding-top: 12px; border-top: 1px solid #d8d2c7; }
.contact-info-list span { display: block; margin-bottom: 5px; color: #8a8b83; font-size: .68rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.contact-info-list p, .contact-info-list a { color: #18231f; font-size: .86rem; line-height: 1.4; text-decoration: none; }
.contact-info-list a:hover { color: #c9834a; }
.contact-form-section { display: grid; grid-template-columns: .7fr 1.3fr; gap: 80px; padding: 82px 0 110px; border-top: 1px solid #d8d2c7; }
.contact-form-heading h2 { margin-top: 15px; font-family: Georgia, serif; font-size: clamp(2.4rem, 4vw, 4rem); font-weight: 400; line-height: 1; }
.contact-form-section form { width: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 20px 16px; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; }
.contact-form-section label { display: grid; gap: 7px; margin: 0; color: #68716a; font-size: .72rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.contact-form-section input, .contact-form-section textarea { width: 100%; padding: 12px 0; border: 0; border-bottom: 1px solid #bcbcb2; border-radius: 0; background: transparent; color: #18231f; font: inherit; }
.contact-form-section textarea { min-height: 90px; resize: vertical; }
.contact-form-section input:focus, .contact-form-section textarea:focus { border-color: #c9834a; outline: 0; }
.contact-form__message { grid-column: 1 / -1; }
.contact-form-section button { display: inline-flex; align-items: center; justify-content: center; justify-self: start; gap: 25px; min-height: 48px; margin-top: 10px; padding: 12px 19px; border: 0; border-radius: 0; background: #18231f; color: #fff; font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; }
.contact-form-section button span { font-size: 1.1rem; }

@media (max-width: 760px) {
    .contact-intro { grid-template-columns: 1fr; gap: 55px; padding: 65px 0 75px; }
    .contact-map, .contact-map iframe { min-height: 340px; height: 340px; }
    .contact-details { padding-right: 0; }
    .contact-form-section { grid-template-columns: 1fr; gap: 36px; padding: 65px 0 80px; }
    .contact-form-section form { grid-template-columns: 1fr; }
    .contact-form__message { grid-column: auto; }
}

.blog-page {
    overflow: hidden;
    background: #f4f0e9;
    color: #18231f;
}

.blog-page h1,
.blog-page h2,
.blog-page h3,
.blog-page h4,
.blog-page p {
    width: auto;
    margin: 0;
}

.blog-eyebrow { color: #c9834a; font-size: .72rem; font-weight: 700; letter-spacing: .18em; }
.blog-hero { min-height: 415px; width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding: 90px 0 80px; display: flex; align-items: end; justify-content: space-between; border-bottom: 1px solid #d8d2c7; }
.blog-hero h1 { margin: 18px 0; font-family: Georgia, serif; font-size: clamp(3.3rem, 7vw, 6.5rem); font-weight: 400; letter-spacing: 0; line-height: .92; }
.blog-hero h1 em, .blog-cta h2 em { color: #c9834a; font-style: italic; }
.blog-hero__intro { max-width: 390px; color: #68716a; font-size: 1rem; }
.blog-hero__mark { padding: 12px 0 0 20px; border-left: 1px solid #c9834a; color: #c9834a; font-family: Georgia, serif; font-size: 2.5rem; line-height: .85; }
.blog-hero__mark small { display: inline-block; margin-top: 8px; color: #68716a; font-family: "DM Sans", sans-serif; font-size: .68rem; letter-spacing: .1em; line-height: 1.3; text-transform: uppercase; }
.blog-content { width: min(1180px, calc(100% - 48px)); margin: 0 auto; padding: 92px 0 110px; }
.blog-content__heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 35px; }
.blog-content h2 { margin-top: 12px; font-family: Georgia, serif; font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 400; line-height: 1; }
.blog-content__heading > p { color: #8a8b83; font-size: .8rem; }
.blog-category-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.blog-category-card { min-height: 455px; padding: 25px; display: flex; flex-direction: column; background: #fff; }
.blog-category-card:nth-child(2) { background: #dce4dc; }
.blog-category-card:nth-child(3) { background: #ead8c5; }
.blog-category-card__top { display: flex; justify-content: space-between; color: #c9834a; font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.blog-category-card__top span:last-child { color: #68716a; letter-spacing: .04em; }
.blog-category-card h3 { max-width: 245px; margin: 44px 0 26px; font-family: Georgia, serif; font-size: 2rem; font-weight: 400; line-height: 1.05; }
.blog-post-list { display: grid; gap: 15px; }
.blog-post-preview { display: grid; grid-template-columns: 20px 1fr; gap: 8px; padding-top: 13px; border-top: 1px solid rgba(24,35,31,.18); }
.blog-post-preview > span { color: #c9834a; font-size: 1.2rem; }
.blog-post-preview h4 { color: #18231f; font-family: Georgia, serif; font-size: 1rem; font-weight: 400; line-height: 1.2; }
.blog-post-preview p { margin-top: 3px; color: #68716a; font-size: .73rem; line-height: 1.35; }
.blog-empty { color: #68716a; font-size: .85rem; }
.blog-card-link { display: flex; justify-content: space-between; margin-top: auto; padding-top: 28px; border-top: 1px solid rgba(24,35,31,.18); color: #18231f; font-size: .78rem; font-weight: 700; text-decoration: none; }
.blog-card-link span { font-size: 1.1rem; }
.blog-cta { padding: 90px 24px; background: #18231f; color: #fff; text-align: center; }
.blog-cta h2 { margin: 18px 0 28px; font-family: Georgia, serif; font-size: clamp(2.5rem, 5vw, 4.8rem); font-weight: 400; line-height: .95; }
.blog-cta__link { display: inline-flex; gap: 18px; align-items: center; padding: 13px 18px; background: #d4844c; color: #fff; font-size: .8rem; font-weight: 700; text-decoration: none; }
.blog-cta__link span { font-size: 1.1rem; }

@media (max-width: 760px) {
    .blog-hero { min-height: 380px; padding: 75px 0 60px; }
    .blog-hero h1 { font-size: 3.35rem; }
    .blog-hero__mark { display: none; }
    .blog-content { padding: 70px 0 80px; }
    .blog-content__heading { align-items: flex-start; flex-direction: column; }
    .blog-category-grid { grid-template-columns: 1fr; }
    .blog-category-card { min-height: 390px; }
}

h1,
h3,
body > p,
body > a,
form,
article,
body > ul:not(:first-of-type),
hr,
blockquote {
    width: min(680px, calc(100% - 48px));
    margin-right: auto;
    margin-left: auto;
}

h1 {
    margin-top: 40px;
    margin-bottom: 16px;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1.2;
}

h2 {
    margin: 0 0 8px;
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1.3;
}

h3 {
    margin-top: 22px;
    margin-bottom: 6px;
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.3;
}

p {
    margin-top: 0;
    margin-bottom: 8px;
    color: #44403c;
}

body > a {
    display: block;
    margin-top: 4px;
    margin-bottom: 18px;
    color: #24352d;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
}

body > a:hover {
    color: #1a2822;
}

body > a:has(button) {
    text-decoration: none;
}

a:focus-visible {
    outline: 2px solid #24352d;
    outline-offset: 2px;
}

hr {
    margin-top: 28px;
    margin-bottom: 8px;
    border: 0;
    border-top: 1px solid #e3ddd4;
}

form {
    display: grid;
    gap: 8px;
    margin-top: 28px;
    margin-bottom: 28px;
    padding: 28px;
    border: 1px solid #e3ddd4;
    border-radius: 16px;
    background: #fffcf8;
}

label {
    margin-top: 6px;
    color: #57534e;
    font-size: 0.88rem;
    font-weight: 600;
}

input,
textarea,
select {
    width: 100%;
    padding: 12px 14px;
    border: 1px solid #ddd6cc;
    border-radius: 10px;
    background: #faf8f5;
    color: #1c1917;
    font: inherit;
}

input[type="hidden"] {
    display: none;
}

textarea {
    min-height: 120px;
    resize: vertical;
}

input::placeholder {
    color: #a39e96;
}

input:focus,
textarea:focus,
select:focus {
    border-color: #24352d;
    background: #ffffff;
    outline: 2px solid rgba(36, 53, 45, 0.18);
    outline-offset: 1px;
}

br {
    display: none;
}

button {
    justify-self: start;
    margin-top: 10px;
    padding: 12px 18px;
    border: 0;
    border-radius: 10px;
    background: #24352d;
    color: #f6f3ee;
    font: inherit;
    font-weight: 600;
    cursor: pointer;
}

button:hover {
    background: #1a2822;
}

button:focus-visible {
    outline: 2px solid #24352d;
    outline-offset: 2px;
}

a button {
    text-decoration: none;
}

article {
    margin-bottom: 14px;
    padding: 20px 22px;
    border: 1px solid #e3ddd4;
    border-radius: 16px;
    background: #fffcf8;
}

article p {
    margin-bottom: 4px;
    color: #57534e;
}

body > ul:not(:first-of-type),
p > ul {
    display: grid;
    gap: 8px;
    list-style: none;
    margin-top: 12px;
    margin-bottom: 12px;
    padding: 0;
}

body > ul:not(:first-of-type) > li,
p > ul > li {
    padding: 12px 14px;
    border: 1px solid #e3ddd4;
    border-left: 3px solid #24352d;
    border-radius: 10px;
    background: #fffcf8;
}

blockquote {
    margin-top: 36px;
    margin-bottom: 24px;
    padding: 8px 0 0;
    border: 0;
    color: #8a847c;
    font-size: 0.8rem;
    font-style: normal;
    font-weight: 500;
    letter-spacing: 0.06em;
    text-align: center;
}

::selection {
    background: #d9e4dc;
    color: #1c1917;
}

@media (max-width: 640px) {
    body > ul:first-of-type {
        padding: 10px 12px;
    }

    h1 {
        margin-top: 28px;
        font-size: 1.7rem;
    }

    form,
    article {
        padding: 18px;
    }
}

body.admin-auth-page {
    min-height: 100vh;
    padding: 0;
    background: #f3f1eb;
    color: #202b27;
    font-family: "DM Sans", sans-serif;
}

.admin-auth-page br {
    display: initial;
}

.admin-auth-layout {
    display: grid;
    grid-template-columns: minmax(320px, 0.9fr) 1.1fr;
    width: 100%;
    max-width: none;
    min-height: 100vh;
    margin: 0;
}

.admin-auth-brand {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 100vh;
    padding: 48px clamp(32px, 6vw, 88px) 38px;
    background: repeating-linear-gradient(135deg, rgba(255,255,255,.025) 0 1px, transparent 1px 18px), linear-gradient(145deg, #19483e, #12352f);
    color: #fff;
}

.admin-auth-wordmark {
    width: fit-content;
    color: #fff;
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: .02em;
    text-decoration: none;
}

.admin-auth-wordmark span { color: #e2a26e; }
.admin-auth-brand-copy { max-width: 440px; padding: 56px 0; }
.admin-auth-kicker { margin: 0 0 18px; color: #bdcfbd; font-size: .68rem; font-weight: 700; letter-spacing: .16em; }
.admin-auth-brand h1 { width: auto; margin: 0 0 20px; color: #fff; font-family: Georgia, serif; font-size: 60px; font-weight: 400; letter-spacing: 0; line-height: .98; }
.admin-auth-caption { max-width: 330px; margin: 0; color: rgba(255,255,255,.72); font-size: .9rem; line-height: 1.7; }
.admin-auth-index { display: flex; align-items: center; gap: 11px; color: #e2a26e; font-size: .65rem; font-weight: 700; letter-spacing: .12em; }
.admin-auth-index i { width: 34px; height: 1px; background: rgba(255,255,255,.4); }

.admin-auth-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 76px 48px 36px;
}

.admin-auth-form-wrap { width: min(100%, 420px); }
.admin-auth-content .admin-auth-kicker { margin-bottom: 12px; color: #b56e3d; }
.admin-auth-content h2 { margin: 0 0 10px; color: #202b27; font-family: Georgia, serif; font-size: 36px; font-weight: 400; letter-spacing: 0; }
.admin-auth-subtitle { margin: 0 0 28px; color: #777d76; font-size: .9rem; line-height: 1.6; }
.admin-auth-page .admin-auth-form { display: grid; gap: 9px; width: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.admin-auth-form label { margin: 12px 0 0; color: #39443e; font-size: .78rem; font-weight: 700; }
.admin-auth-form input { width: 100%; min-height: 48px; padding: 11px 13px; border: 1px solid #d8d8cf; border-radius: 3px; background: #fff; color: #202b27; font: inherit; }
.admin-auth-form input:focus { border-color: #1d5a4d; outline: 2px solid rgba(29,90,77,.14); outline-offset: 1px; }
.admin-auth-forgot, .admin-auth-back { color: #1d5a4d; font-size: .76rem; font-weight: 700; text-decoration: none; }
.admin-auth-forgot { justify-self: start; margin-top: 2px; }
.admin-auth-forgot:hover, .admin-auth-back:hover { text-decoration: underline; text-underline-offset: 3px; }
.admin-auth-form button { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 50px; margin-top: 18px; padding: 0 16px; border: 0; border-radius: 3px; background: #1d5a4d; color: #fff; font: inherit; font-size: .84rem; font-weight: 700; cursor: pointer; }
.admin-auth-form button:hover { background: #16483e; }
.admin-auth-form button span { font-size: 1.2rem; }
.admin-auth-error { color: #a43b30; font-size: .76rem; }
.admin-auth-alert { margin: 0 0 20px; padding: 12px 14px; border-left: 3px solid #1d5a4d; background: #e4eee8; color: #274c3c; font-size: .82rem; line-height: 1.5; }
.admin-auth-footnote { margin: 22px 0 0; color: #85877f; font-size: .76rem; }
.admin-auth-back { display: inline-flex; gap: 9px; align-items: center; margin-top: 24px; }
.admin-auth-copyright { position: absolute; right: 48px; bottom: 27px; color: #93958e; font-size: .62rem; font-weight: 700; letter-spacing: .13em; }
.admin-auth-copyright span { padding: 0 5px; color: #b56e3d; }

@media (max-width: 760px) {
    .admin-auth-layout { grid-template-columns: 1fr; }
    .admin-auth-brand { min-height: 0; padding: 22px 24px 18px; }
    .admin-auth-brand-copy { padding: 32px 0 18px; }
    .admin-auth-brand h1 { margin-bottom: 10px; font-size: 42px; }
    .admin-auth-caption { font-size: .82rem; }
    .admin-auth-index { display: none; }
    .admin-auth-content { min-height: 0; padding: 52px 24px 72px; }
    .admin-auth-content h2 { font-size: 32px; }
    .admin-auth-copyright { right: 24px; bottom: 18px; }
}

body.admin-roles-page { min-height: 100vh; padding: 0; background: #f3f1eb; color: #202b27; font-family: "DM Sans", sans-serif; }
.admin-roles-page h1, .admin-roles-page h2, .admin-roles-page p { width: auto; margin-right: 0; margin-left: 0; }
.admin-roles-page h1 { margin: 0 0 28px; font-family: Georgia, serif; font-size: 42px; font-weight: 400; letter-spacing: 0; }
.admin-roles-page h2 { margin: 0 0 18px; font-family: Georgia, serif; font-size: 25px; font-weight: 400; letter-spacing: 0; }
.admin-roles-header { display: flex; align-items: center; justify-content: space-between; min-height: 68px; padding: 0 max(24px, calc((100% - 1120px) / 2)); background: #19483e; }
.admin-roles-account { display: flex; align-items: center; gap: 18px; color: #fff; font-size: .85rem; }
.admin-roles-account form, .admin-role-entry > form:last-child { display: contents; }
.admin-roles-account button { padding: 8px 12px; border: 1px solid rgba(255,255,255,.45); border-radius: 3px; background: transparent; color: #fff; font: inherit; cursor: pointer; }
.admin-roles-main { width: min(100% - 48px, 1000px); margin: 0 auto; padding: 35px 0 80px; }
.admin-roles-main > .admin-auth-kicker { margin: 28px 0 8px; color: #b56e3d; }
.admin-roles-back { color: #1d5a4d; font-size: .83rem; font-weight: 700; text-decoration: none; }
.admin-roles-back:hover { text-decoration: underline; text-underline-offset: 3px; }
.admin-roles-section { margin-top: 34px; padding-top: 24px; border-top: 1px solid #d8d8cf; }
.admin-roles-table-wrap { overflow-x: auto; }
.admin-roles-table { width: 100%; border-collapse: collapse; text-align: left; }
.admin-roles-table th, .admin-roles-table td { padding: 12px 10px; border-bottom: 1px solid #deded6; font-size: .86rem; }
.admin-roles-table th { color: #777d76; font-size: .7rem; font-weight: 700; text-transform: uppercase; }
.admin-role-assignment { display: flex; align-items: center; gap: 8px; }
.admin-role-assignment select, .admin-role-form input:not([type="checkbox"]) { min-height: 40px; padding: 8px 10px; border: 1px solid #d8d8cf; border-radius: 3px; background: #fff; color: #202b27; font: inherit; }
.admin-role-assignment select { min-width: 170px; }
.admin-role-assignment button, .admin-role-form > button, .admin-role-actions button { min-height: 40px; padding: 0 13px; border: 0; border-radius: 3px; background: #1d5a4d; color: #fff; font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; }
.admin-roles-system-role { color: #1d5a4d; font-size: .82rem; font-weight: 700; }
.admin-role-form { display: grid; grid-template-columns: minmax(160px, 250px) 1fr; gap: 10px 18px; width: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.admin-user-form { display: grid; grid-template-columns: minmax(160px, 250px) 1fr; gap: 10px 18px; width: min(100%, 720px); margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.admin-user-form label { align-self: center; margin: 0; color: #39443e; font-size: .83rem; }
.admin-user-form input, .admin-user-form select { width: 100%; min-height: 40px; padding: 8px 10px; border: 1px solid #d8d8cf; border-radius: 3px; background: #fff; color: #202b27; font: inherit; }
.admin-user-form > button { grid-column: 1 / -1; justify-self: start; min-height: 40px; padding: 0 13px; border: 0; border-radius: 3px; background: #1d5a4d; color: #fff; font: inherit; font-size: .8rem; font-weight: 700; cursor: pointer; }
.admin-role-form > label { align-self: center; margin: 0; color: #39443e; font-size: .83rem; }
.admin-role-form > input { width: 100%; }
.admin-role-permissions { display: flex; flex-wrap: wrap; gap: 8px 20px; grid-column: 1 / -1; margin: 8px 0 4px; padding: 14px 16px; border: 1px solid #deded6; }
.admin-role-permissions legend { padding: 0 6px; color: #777d76; font-size: .75rem; font-weight: 700; }
.admin-role-permission { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: #39443e; font-size: .84rem; font-weight: 500; cursor: pointer; }
.admin-role-permission input { width: 16px; height: 16px; accent-color: #1d5a4d; }
.admin-role-form > button, .admin-role-actions { grid-column: 1 / -1; justify-self: start; }
.admin-role-entry { margin: 0 0 24px; padding: 0 0 24px; border: 0; border-bottom: 1px solid #deded6; border-radius: 0; background: transparent; box-shadow: none; }
.admin-role-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.admin-role-actions .admin-role-delete { border: 1px solid #a43b30; background: transparent; color: #a43b30; }
.admin-roles-empty { color: #777d76; }
.admin-auth-alert--error { border-left-color: #a43b30; background: #f7e7e4; color: #7f3028; }
.admin-role-link { display: inline-block; margin: 10px 0; padding: 9px 12px; border: 1px solid #1d5a4d; color: #1d5a4d; font-size: .84rem; font-weight: 700; text-decoration: none; }

@media (max-width: 680px) {
    .admin-roles-header { padding: 0 18px; }
    .admin-roles-main { width: calc(100% - 36px); padding-top: 26px; }
    .admin-roles-page h1 { font-size: 34px; }
    .admin-role-form { grid-template-columns: 1fr; }
    .admin-user-form { grid-template-columns: 1fr; }
    .admin-role-permissions, .admin-role-form > button, .admin-role-actions { grid-column: 1; }
    .admin-user-form > button { grid-column: 1; }
    .admin-role-assignment { align-items: stretch; flex-direction: column; min-width: 160px; }
}

body.nexadmin-page { min-height: 100vh; padding: 0; overflow: hidden; background: #efefed; color: #30353a; font-family: "DM Sans", sans-serif; font-size: 13px; }
.nexadmin-shell { display: grid; grid-template-columns: 194px minmax(0, 1fr); min-height: 100vh; }
.nexadmin-sidebar { position: sticky; top: 0; display: flex; flex-direction: column; height: 100vh; overflow-y: auto; background: #303234; color: #d7d8d8; scrollbar-color: #626567 #303234; }
.nexadmin-brand { display: flex; align-items: center; gap: 9px; min-height: 58px; padding: 0 15px; border-bottom: 1px solid #45484a; color: #fff; font-size: 17px; font-weight: 700; text-decoration: none; }
.nexadmin-brand > span:last-child > span { color: #75b3dd; }
.nexadmin-brand-mark { display: grid; width: 28px; aspect-ratio: 1; place-items: center; border-radius: 50%; background: #d3a64d; color: #26343c; font-family: Georgia, serif; font-size: 17px; }
.nexadmin-user { display: flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 10px; border-bottom: 1px solid #4b4e50; font-size: 11px; }
.nexadmin-avatar { display: grid; width: 26px; aspect-ratio: 1; place-items: center; border: 2px solid #dce5e7; border-radius: 3px; background: #527883; color: #fff; font-weight: 700; }
.nexadmin-chevron { margin-left: auto; color: #9fa3a4; }
.nexadmin-nav { display: grid; gap: 2px; padding: 7px 0 14px; }
.nexadmin-nav-item { display: flex; align-items: center; gap: 9px; min-height: 34px; padding: 5px 10px; color: #d6d7d7; font-size: 12px; line-height: 1.15; text-decoration: none; transition: background 120ms ease, color 120ms ease; }
.nexadmin-nav-item:hover, .nexadmin-nav-item.is-active { background: #444749; color: #fff; }
.nexadmin-nav-item.is-active { box-shadow: inset 3px 0 #64a9d4; }
.nexadmin-nav-item.is-disabled { color: #9c9e9f; cursor: not-allowed; }
.nexadmin-nav-icon { display: grid; flex: 0 0 17px; width: 17px; place-items: center; color: #b9c3c8; font-size: 15px; }
.nexadmin-nav-count { min-width: 20px; margin-left: auto; padding: 2px 6px; border-radius: 10px; background: #92999c; color: #fff; font-size: 10px; text-align: center; }
.nexadmin-nav-status { margin-left: auto; padding: 2px 6px; border-radius: 9px; background: #3c985b; color: #fff; font-size: 9px; }
.nexadmin-logout { margin-top: auto; padding: 10px; border-top: 1px solid #484b4d; }
.nexadmin-logout button { width: 100%; padding: 8px 10px; border: 1px solid #626668; border-radius: 3px; background: transparent; color: #d6d7d7; font: inherit; text-align: left; cursor: pointer; }
.nexadmin-logout button:hover { background: #444749; color: #fff; }
.nexadmin-logout button span { margin-right: 8px; }
.nexadmin-content { min-width: 0; height: 100vh; overflow-y: auto; }
.nexadmin-topbar { position: sticky; z-index: 2; top: 0; display: flex; align-items: center; justify-content: space-between; min-height: 40px; padding: 0 18px; border-bottom: 1px solid #cfd2d2; background: #f7f7f5; }
.nexadmin-breadcrumb, .nexadmin-topbar-actions { display: flex; align-items: center; gap: 10px; color: #70777a; font-size: 11px; }
.nexadmin-breadcrumb > span:first-child { color: #42799c; font-size: 15px; }
.nexadmin-breadcrumb strong { color: #3d454a; font-weight: 600; }
.nexadmin-topbar-actions a { color: #386d8e; text-decoration: none; }
.nexadmin-language { padding: 5px 8px; border: 1px solid #e0e0dc; background: #fff; }
.nexadmin-refresh { display: grid; width: 26px; aspect-ratio: 1; place-items: center; border: 1px solid #d5d9da; border-radius: 3px; background: #fff; font-size: 18px; }
.nexadmin-main { width: min(100%, 1500px); margin: 0 auto; padding: 17px 18px 28px; }
.nexadmin-page-title { display: flex; align-items: center; justify-content: space-between; margin: 0 0 15px; }
.nexadmin-page-title h1 { display: flex; align-items: center; gap: 9px; width: auto; margin: 0; color: #4d606b; font-size: 23px; font-weight: 400; letter-spacing: 0; }
.nexadmin-page-title h1 span { color: #347da4; font-size: 22px; }
.nexadmin-page-title time { color: #81888b; font-size: 11px; }
.nexadmin-panel { border: 1px solid #d2d5d5; background: #fff; box-shadow: 0 1px 2px rgba(30, 40, 45, .04); }
.nexadmin-panel-heading { display: flex; align-items: center; justify-content: space-between; min-height: 31px; padding: 0 10px; border-bottom: 1px solid #d9dcdd; background: #fafaf9; }
.nexadmin-panel-heading h2 { display: flex; align-items: center; gap: 7px; margin: 0; color: #3e505b; font-size: 12px; font-weight: 600; letter-spacing: 0; }
.nexadmin-panel-heading h2 span { color: #477e9d; font-size: 14px; }
.nexadmin-live { display: flex; align-items: center; gap: 6px; color: #879398; font-size: 10px; }
.nexadmin-live i { width: 6px; aspect-ratio: 1; border-radius: 50%; background: #58a576; }
.nexadmin-chart-layout { display: grid; grid-template-columns: minmax(0, 1fr) 225px; min-height: 245px; padding: 15px 17px 12px; }
.nexadmin-chart { display: grid; grid-template-columns: 28px minmax(0, 1fr); min-width: 0; }
.nexadmin-chart-scale { display: flex; flex-direction: column; justify-content: space-between; padding: 3px 7px 24px 0; color: #92999b; font-size: 9px; text-align: right; }
.nexadmin-chart-plot { position: relative; min-height: 215px; }
.nexadmin-chart-grid { position: absolute; inset: 0 0 23px; display: flex; flex-direction: column; justify-content: space-between; }
.nexadmin-chart-grid i { width: 100%; border-top: 1px solid #eceeef; }
.nexadmin-chart-bars { position: absolute; inset: 0 12px 0; display: flex; align-items: stretch; justify-content: space-around; gap: 26px; }
.nexadmin-chart-bar { position: relative; display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: flex-end; max-width: 125px; color: #5c6b72; text-decoration: none; }
.nexadmin-chart-bar strong { margin-bottom: 5px; color: #54727f; font-size: 11px; font-weight: 500; }
.nexadmin-chart-bar > span { width: min(56px, 70%); height: var(--bar-height); min-height: 4px; border-radius: 2px 2px 0 0; background: #75b6a0; transition: filter 140ms ease; }
.nexadmin-chart-bar:hover > span { filter: brightness(.92); }
.nexadmin-chart-bar--blue > span { background: #82a9c0; }
.nexadmin-chart-bar--gold > span { background: #d5b76e; }
.nexadmin-chart-bar small { position: absolute; bottom: 0; color: #6d777b; font-size: 10px; white-space: nowrap; }
.nexadmin-chart-summary { display: flex; flex-direction: column; justify-content: center; gap: 14px; padding: 8px 0 8px 18px; border-left: 1px solid #e6e8e8; }
.nexadmin-chart-summary > p { margin: 0 0 2px; color: #879195; font-size: 9px; font-weight: 700; letter-spacing: .06em; }
.nexadmin-chart-summary a { display: grid; grid-template-columns: 9px 1fr auto; align-items: center; gap: 8px; color: #667176; font-size: 11px; text-decoration: none; }
.nexadmin-chart-summary a strong { color: #54727f; font-size: 12px; font-weight: 600; }
.nexadmin-legend { width: 8px; aspect-ratio: 1; border-radius: 2px; background: #75b6a0; }
.nexadmin-legend--blue { background: #82a9c0; }
.nexadmin-legend--gold { background: #d5b76e; }
.nexadmin-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; margin: 13px 0; }
.nexadmin-stat { display: flex; align-items: center; gap: 11px; min-height: 64px; padding: 10px 13px; border-left: 3px solid #73b58c; background: #dcebd9; color: #50685a; text-decoration: none; }
.nexadmin-stat--blue { border-left-color: #7d9bb1; background: #dce4ec; color: #536b7c; }
.nexadmin-stat--gold { border-left-color: #d3ae5c; background: #f0e3b9; color: #76653b; }
.nexadmin-stat:hover { filter: brightness(.98); }
.nexadmin-stat-icon { display: grid; width: 31px; aspect-ratio: 1; place-items: center; border: 2px solid currentColor; border-radius: 50%; font-size: 15px; }
.nexadmin-stat > span:last-child { display: grid; gap: 4px; }
.nexadmin-stat small { font-size: 10px; }
.nexadmin-stat strong { font-size: 17px; font-weight: 600; }
.nexadmin-lists { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 15px; }
.nexadmin-list-panel { min-width: 0; }
.nexadmin-list-panel .nexadmin-panel-heading { background: #45494b; }
.nexadmin-list-panel .nexadmin-panel-heading h2 { color: #fff; }
.nexadmin-list-panel .nexadmin-panel-heading h2 span { color: #c6d6df; }
.nexadmin-panel-heading > a { color: #fff; font-size: 10px; text-decoration: none; }
.nexadmin-record { display: grid; grid-template-columns: 45px minmax(0, 1fr) auto; align-items: center; gap: 8px; min-height: 42px; padding: 6px 10px; border-bottom: 1px solid #eceeee; color: #596269; font-size: 10px; }
.nexadmin-record-id { color: #57819a; font-weight: 600; }
.nexadmin-record strong { overflow: hidden; color: #37434a; font-size: 11px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.nexadmin-record > span:nth-last-child(2) { color: #849095; }
.nexadmin-record b { color: #617e8d; font-size: 10px; font-weight: 600; }
.nexadmin-empty { margin: 0; padding: 22px 12px; color: #858e91; font-size: 11px; }

@media (max-width: 900px) {
    .nexadmin-shell { grid-template-columns: 172px minmax(0, 1fr); }
    .nexadmin-chart-layout { grid-template-columns: minmax(0, 1fr) 175px; }
    .nexadmin-main { padding-right: 12px; padding-left: 12px; }
}

@media (max-width: 680px) {
    body.nexadmin-page { overflow: auto; }
    .nexadmin-shell { grid-template-columns: 1fr; }
    .nexadmin-sidebar { position: static; height: auto; overflow: visible; }
    .nexadmin-brand { min-height: 48px; }
    .nexadmin-user { display: none; }
    .nexadmin-nav { display: flex; overflow-x: auto; gap: 4px; padding: 7px 9px; }
    .nexadmin-nav-item { flex: 0 0 auto; min-height: 34px; padding: 6px 9px; }
    .nexadmin-nav-count, .nexadmin-nav-status, .nexadmin-logout { display: none; }
    .nexadmin-content { height: auto; overflow: visible; }
    .nexadmin-topbar { min-height: 38px; padding: 0 11px; }
    .nexadmin-topbar-actions > a:not(.nexadmin-refresh) { display: none; }
    .nexadmin-main { padding: 14px 10px 24px; }
    .nexadmin-page-title h1 { font-size: 20px; }
    .nexadmin-chart-layout { grid-template-columns: 1fr; gap: 10px; padding: 10px; }
    .nexadmin-chart-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 10px 0 0; border-top: 1px solid #e6e8e8; border-left: 0; }
    .nexadmin-chart-summary > p { grid-column: 1 / -1; }
    .nexadmin-stat-grid { grid-template-columns: 1fr; gap: 7px; }
    .nexadmin-stat { min-height: 52px; }
    .nexadmin-lists { grid-template-columns: 1fr; }
    .nexadmin-record { grid-template-columns: 38px minmax(0, 1fr) auto; }
}

[hidden] { display: none !important; }
.nexadmin-nav-parent.is-active { background: #444749; color: #fff; }
.nexadmin-nav-submenu { display: grid; gap: 1px; padding: 2px 0 5px 21px; background: #292b2d; }
.nexadmin-nav-submenu a, .nexadmin-nav-submenu span { display: flex; align-items: center; min-height: 30px; padding: 5px 9px 5px 18px; border-left: 1px solid #5b5e60; color: #b9c0c2; font-size: 11px; text-decoration: none; }
.nexadmin-nav-submenu a::before { content: "▤"; margin-right: 7px; color: #aab8be; }
.nexadmin-nav-submenu a:hover, .nexadmin-nav-submenu a.is-active { color: #fff; background: #3b3e40; }
.nexadmin-nav-submenu .is-disabled { color: #777b7d; }
.nexadmin-title-divider { color: #a1a7a9; font-weight: 300; }
.nexadmin-sales-view { display: grid; gap: 14px; }
.nexadmin-sales-filters > form { display: grid; grid-template-columns: 54px minmax(110px, .7fr) 70px minmax(150px, 1fr) 120px 120px 72px; align-items: center; gap: 8px; width: 100%; margin: 0; padding: 10px; border: 0; border-radius: 0; background: #fff; box-shadow: none; }
.nexadmin-sales-filters label { margin: 0; color: #59666c; font-size: 10px; text-align: right; }
.nexadmin-sales-filters input { width: 100%; min-width: 0; height: 31px; padding: 5px 8px; border: 1px solid #d2d7d9; border-radius: 2px; background: #fff; color: #3d484d; font: inherit; font-size: 11px; }
.nexadmin-sales-filters button, .nexadmin-new-sale { display: inline-flex; min-height: 31px; align-items: center; justify-content: center; padding: 0 12px; border: 0; border-radius: 2px; background: #347bb1; color: #fff; font: inherit; font-size: 11px; text-decoration: none; cursor: pointer; }
.nexadmin-sales-filters button:hover, .nexadmin-new-sale:hover { background: #286a9d; }
.nexadmin-sales-quick-filters { display: flex; flex-wrap: wrap; gap: 5px; padding: 0 10px 10px; }
.nexadmin-sales-quick-filters a { padding: 6px 10px; border: 1px solid #d5dadd; border-radius: 2px; background: #f9faf9; color: #51636d; font-size: 10px; text-decoration: none; }
.nexadmin-sales-quick-filters a:hover { border-color: #7e9fb2; background: #eff5f7; }
.nexadmin-sales-list .nexadmin-panel-heading { min-height: 34px; }
.nexadmin-sales-list .nexadmin-panel-heading h2 { color: #40515a; }
.nexadmin-new-sale { min-height: 30px; background: #65a477; font-weight: 600; }
.nexadmin-sales-table-wrap { width: 100%; overflow-x: auto; }
.nexadmin-sales-table, .nexadmin-sales-stats-table { width: 100%; border-collapse: collapse; text-align: left; }
.nexadmin-sales-table { min-width: 1120px; }
.nexadmin-sales-table th, .nexadmin-sales-table td, .nexadmin-sales-stats-table th, .nexadmin-sales-stats-table td { padding: 8px 7px; border: 1px solid #dfe2e3; color: #46535a; font-size: 10px; white-space: nowrap; }
.nexadmin-sales-table th, .nexadmin-sales-stats-table th { background: #f6f7f6; color: #39474e; font-size: 10px; font-weight: 700; }
.nexadmin-sales-table tbody tr:nth-child(even) { background: #fbfbfa; }
.nexadmin-sales-table tbody tr:hover { background: #f0f6f8; }
.nexadmin-sale-pnr { color: #347bb1 !important; font-weight: 600; }
.nexadmin-sale-amount { text-align: right; }
.nexadmin-paid-mark { display: inline-grid; width: 18px; aspect-ratio: 1; place-items: center; border-radius: 50%; background: #72a97c; color: #fff; font-weight: 700; }
.nexadmin-unpaid-amount { color: #c34436 !important; font-weight: 700; }
.nexadmin-sale-details { position: relative; text-align: center; }
.nexadmin-sale-details summary { display: inline-grid; width: 17px; aspect-ratio: 1; place-items: center; border-radius: 50%; background: #66a77a; color: #fff; font-size: 14px; font-weight: 700; line-height: 1; cursor: pointer; list-style: none; }
.nexadmin-sale-details summary::-webkit-details-marker { display: none; }
.nexadmin-sale-details > div { position: absolute; z-index: 1; top: 22px; left: 0; width: 220px; padding: 9px; border: 1px solid #d5dadd; background: #fff; box-shadow: 0 6px 18px rgba(26, 40, 48, .14); color: #46535a; text-align: left; white-space: normal; }
.nexadmin-sales-empty { padding: 25px !important; color: #7b8589 !important; text-align: center; }
.nexadmin-sales-pagination { padding: 8px 10px; border-top: 1px solid #e1e3e3; }
.nexadmin-sales-pagination nav { display: flex; justify-content: flex-end; }
.nexadmin-sales-pagination nav > div:first-child { display: none; }
.nexadmin-sales-pagination nav > div:last-child > span { display: inline-flex; gap: 4px; }
.nexadmin-sales-pagination a, .nexadmin-sales-pagination span[aria-current] span, .nexadmin-sales-pagination span[aria-disabled] span { display: inline-flex; min-width: 28px; min-height: 27px; align-items: center; justify-content: center; padding: 3px 7px; border: 1px solid #d8dddf; background: #fff; color: #567487; font-size: 10px; text-decoration: none; }
.nexadmin-sales-pagination span[aria-current] span { border-color: #347bb1; background: #347bb1; color: #fff; }
.nexadmin-sales-pagination span[aria-disabled] span { color: #a2aaad; }
.nexadmin-sales-stats-table th, .nexadmin-sales-stats-table td { text-align: center; }
.nexadmin-sales-total-row { background: #f6f7f6; font-weight: 700; }
.nexadmin-sales-create-page { min-height: 100vh; padding: 0; background: #efefed; color: #30353a; font-family: "DM Sans", sans-serif; }
.nexadmin-sales-create-header { display: flex; align-items: center; justify-content: space-between; min-height: 54px; padding: 0 max(18px, calc((100% - 1000px) / 2)); background: #303234; }
.nexadmin-sales-create-header > a:last-child { color: #d7d8d8; font-size: 12px; text-decoration: none; }
.nexadmin-sales-create-main { width: min(100% - 36px, 760px); margin: 28px auto; }
.nexadmin-sales-create-main h1 { width: auto; margin: 0 0 22px; color: #4d606b; font-size: 26px; font-weight: 400; letter-spacing: 0; }
.nexadmin-create-kicker { margin: 0 0 7px; color: #69808a; font-size: 10px; font-weight: 700; letter-spacing: .1em; }
.nexadmin-create-form { display: grid; grid-template-columns: 190px minmax(0, 1fr); align-items: center; gap: 12px 16px; width: 100%; margin: 0; padding: 20px; border: 1px solid #d2d5d5; border-radius: 2px; background: #fff; box-shadow: 0 1px 2px rgba(30, 40, 45, .04); }
.nexadmin-create-form label { margin: 0; color: #536168; font-size: 11px; }
.nexadmin-create-form input, .nexadmin-create-form textarea { width: 100%; min-width: 0; padding: 9px 10px; border: 1px solid #d2d7d9; border-radius: 2px; background: #fff; color: #3d484d; font: inherit; font-size: 12px; }
.nexadmin-create-form textarea { min-height: 88px; resize: vertical; }
.nexadmin-selected-tour { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 14px; padding: 13px 16px; border: 1px solid #d2d5d5; background: #f8faf9; color: #536168; font-size: 11px; }
.nexadmin-selected-tour > div { display: grid; gap: 5px; }
.nexadmin-selected-tour small { color: #879195; font-size: 9px; font-weight: 700; letter-spacing: .08em; }
.nexadmin-selected-tour strong { color: #3c4c54; font-size: 13px; }
.nexadmin-create-form button { grid-column: 2; justify-self: start; min-height: 36px; padding: 0 14px; border: 0; border-radius: 2px; background: #347bb1; color: #fff; font: inherit; font-size: 11px; font-weight: 600; cursor: pointer; }

.nexadmin-sale-search-main { min-height: calc(100vh - 54px); padding: 0 20px 40px; background: #f4f4f2; }
.nexadmin-sale-search-main > h1 { width: auto; margin: 0 -20px 16px; padding: 12px 20px; border-bottom: 1px solid #e1e3e3; background: #fff; color: #697d88; font-family: "DM Sans", sans-serif; font-size: 17px; font-weight: 400; letter-spacing: 0; }
.nexadmin-sale-step-tabs { display: flex; gap: 0; margin: 0; border-bottom: 1px solid #d5d9da; }
.nexadmin-sale-step-tabs a { display: inline-flex; align-items: center; gap: 7px; min-height: 38px; padding: 0 13px; border: 1px solid transparent; color: #65747a; font-size: 11px; text-decoration: none; }
.nexadmin-sale-step-tabs a.is-active { border: 1px solid #d5d9da; border-bottom-color: #fff; background: #fff; color: #347bb1; font-weight: 700; }
.nexadmin-sale-search-layout { display: grid; grid-template-columns: minmax(0, 590px) minmax(0, 1fr); gap: 18px; align-items: start; min-height: 300px; padding: 11px 10px; border: 1px solid #e1e3e3; border-top: 0; background: linear-gradient(#f0f1ef, #f5f5f3); }
.nexadmin-sale-search-layout.is-results { grid-template-columns: minmax(0, 608px); }
.nexadmin-sale-search-panel { border: 1px solid #d8dcdd; background: #fff; }
.nexadmin-sale-types { display: flex; border-bottom: 1px solid #d8dcdd; }
.nexadmin-sale-types > * { display: inline-flex; align-items: center; gap: 7px; min-height: 36px; padding: 0 12px; border-right: 1px solid #e1e3e3; color: #6d777b; font-size: 11px; }
.nexadmin-sale-types .is-active { border-top: 2px solid #6194ad; color: #3f6579; font-weight: 700; }
.nexadmin-sale-types .is-disabled { color: #a3a8aa; }
.nexadmin-tour-search-form { display: grid; gap: 10px; margin: 10px; padding: 12px; border: 1px solid #e1e3e3; background: #fff; }
.nexadmin-tour-categories { display: flex; flex-wrap: wrap; gap: 4px; max-height: 70px; overflow-y: auto; }
.nexadmin-tour-categories a, .nexadmin-tour-categories button { padding: 6px 9px; border: 1px solid #d5dadd; border-radius: 2px; background: #fff; color: #5c6c73; font: inherit; font-size: 10px; text-decoration: none; cursor: pointer; }
.nexadmin-tour-categories a:hover, .nexadmin-tour-categories a.is-active, .nexadmin-tour-categories button:hover, .nexadmin-tour-categories button.is-active { border-color: #7d9db0; background: #f1f6f8; color: #376f91; }
.nexadmin-tour-query { display: flex; align-items: center; gap: 9px; min-height: 34px; margin: 0; padding: 0 9px; border: 1px solid #d2d7d9; color: #5f7e8d; }
.nexadmin-tour-query input { width: 100%; min-width: 0; border: 0; outline: 0; color: #46535a; font: inherit; font-size: 11px; }
.nexadmin-tour-search-form > button { min-height: 33px; border: 0; border-radius: 2px; background: #347bb1; color: #fff; font: inherit; font-size: 11px; cursor: pointer; }
.nexadmin-tour-results { min-width: 0; border: 1px solid #d8dcdd; background: #fff; }
.nexadmin-tour-results-heading { display: flex; align-items: center; justify-content: space-between; min-height: 36px; padding: 0 10px; border-bottom: 1px solid #d8dcdd; }
.nexadmin-tour-results-heading h2 { margin: 0; color: #4a606c; font-size: 12px; font-weight: 600; letter-spacing: 0; }
.nexadmin-tour-results-heading span { color: #899396; font-size: 10px; }
.nexadmin-tour-table-wrap { max-height: 430px; overflow: auto; }
.nexadmin-tour-table { width: 100%; border-collapse: collapse; text-align: left; }
.nexadmin-tour-table th, .nexadmin-tour-table td { padding: 6px 8px; border: 1px solid #dfe2e3; color: #4b5960; font-size: 10px; }
.nexadmin-tour-table th { background: #f6f7f6; color: #39474e; font-weight: 700; white-space: nowrap; }
.nexadmin-tour-table td:first-child { min-width: 170px; color: #347bb1; }
.nexadmin-tour-open { display: inline-flex; min-width: 40px; min-height: 28px; align-items: center; justify-content: center; border-radius: 2px; background: #65a477; color: #fff; font-size: 10px; text-decoration: none; }
.nexadmin-tour-open:hover { background: #508d63; }
.nexadmin-tour-empty { padding: 22px !important; color: #7b8589 !important; text-align: center; }
.nexadmin-source-error { margin: 0; padding: 16px; border: 1px solid #e7c8c4; background: #fff5f3; color: #863a31; font-size: 11px; }
.nexadmin-tour-source { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 10px; padding: 9px 12px; border: 1px solid #d8dcdd; background: #f8faf9; color: #627078; font-size: 10px; }
.nexadmin-tour-source strong { margin-left: 4px; color: #3d5967; }
.nexadmin-tour-source a, .nexadmin-tour-general-info > a { color: #347bb1; font-size: 10px; text-decoration: none; }
.nexadmin-tour-source a:hover, .nexadmin-tour-general-info > a:hover { text-decoration: underline; }
.nexadmin-tour-detail-tabs { display: flex; border: 1px solid #d8dcdd; border-bottom: 0; background: #f8f8f7; }
.nexadmin-tour-detail-tabs a { min-height: 36px; padding: 10px 12px; border-right: 1px solid #d8dcdd; color: #57666d; font-size: 11px; text-decoration: none; }
.nexadmin-tour-detail-tabs a.is-active { border-top: 2px solid #5a91ac; background: #fff; color: #3d6478; font-weight: 700; }
.nexadmin-tour-detail-panel { padding: 16px; border: 1px solid #d8dcdd; background: #fff; }
.nexadmin-tour-detail-panel[hidden] { display: none; }
.nexadmin-tour-detail-panel h2 { margin: 16px 0 10px; color: #405762; font-family: "DM Sans", sans-serif; font-size: 14px; font-weight: 600; letter-spacing: 0; }
.nexadmin-booking-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0 0 18px; padding: 12px; background: #f5f7f6; }
.nexadmin-booking-summary > div { display: grid; gap: 5px; }
.nexadmin-booking-summary small { color: #839096; font-size: 9px; text-transform: uppercase; }
.nexadmin-booking-summary strong { color: #41555e; font-size: 11px; }
.nexadmin-booking-select-form { display: grid; grid-template-columns: repeat(4, minmax(100px, 1fr)); gap: 9px 12px; align-items: end; margin: 0; padding: 12px; border: 1px solid #e2e5e5; background: #fbfbfa; }
.nexadmin-booking-select-form label { display: grid; gap: 5px; margin: 0; color: #536168; font-size: 10px; }
.nexadmin-booking-select-form select { width: 100%; height: 34px; padding: 5px 8px; border: 1px solid #d2d7d9; border-radius: 2px; background: #fff; color: #445159; font: inherit; font-size: 11px; }
.nexadmin-booking-select-form button, .nexadmin-price-option button { grid-column: 1 / -1; justify-self: end; min-height: 34px; padding: 0 13px; border: 0; border-radius: 2px; background: #347bb1; color: #fff; font: inherit; font-size: 11px; font-weight: 600; cursor: pointer; }
.nexadmin-static-price-details { margin-top: 12px; color: #536168; font-size: 10px; }
.nexadmin-static-price-details summary { padding: 8px 0; color: #347bb1; cursor: pointer; }
.nexadmin-table-scroll { overflow-x: auto; }
.nexadmin-price-options { display: grid; gap: 8px; margin-top: 18px; }
.nexadmin-price-options h2 { margin: 0 0 2px; }
.nexadmin-price-option { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 16px; padding: 9px 11px; border: 1px solid #d8cf73; background: #fff6a4; color: #596166; font-size: 11px; }
.nexadmin-price-option > div { display: grid; gap: 4px; }
.nexadmin-price-option > div strong { color: #2f6d9b; font-size: 10px; }
.nexadmin-price-option > div span { color: #596166; }
.nexadmin-live-price { color: #354a52; white-space: nowrap; }
.nexadmin-price-option button { grid-column: auto; justify-self: auto; white-space: nowrap; }
.nexadmin-tour-general-info { color: #445159; font-size: 11px; line-height: 1.65; }
.nexadmin-tour-general-info > p { margin: 0 0 11px; color: #445159; }
.nexadmin-tour-meta { display: flex; flex-wrap: wrap; gap: 7px 24px; margin: 14px 0 20px; padding: 11px; border: 1px solid #e0e3e3; background: #f8f9f8; }
.nexadmin-tour-meta p { margin: 0; color: #536168; }
.nexadmin-itinerary-day { padding: 12px 0; border-top: 1px solid #e5e7e7; }
.nexadmin-itinerary-day > p:first-child { margin: 0 0 4px; color: #347bb1; font-size: 10px; font-weight: 700; }
.nexadmin-itinerary-day h3 { margin: 0 0 8px; color: #384a53; font-size: 13px; font-weight: 700; }
.nexadmin-itinerary-day p { margin: 0 0 7px; color: #546168; }
.nexadmin-commission-preview { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 12px; padding: 9px 12px; border: 1px solid #d5dfd7; background: #eef5ef; color: #4f6858; font-size: 10px; }
.nexadmin-commission-preview strong { font-size: 12px; }
.nexadmin-commission-back { color: #d7d8d8; font-size: 11px; text-decoration: none; }

@media (max-width: 1000px) {
    .nexadmin-sales-filters > form { grid-template-columns: 54px minmax(0, 1fr) 70px minmax(0, 1fr); }
}

@media (max-width: 680px) {
    .nexadmin-sales-filters > form { grid-template-columns: 1fr; gap: 6px; }
    .nexadmin-sales-filters label { text-align: left; }
    .nexadmin-sales-filters button { width: 100%; }
    .nexadmin-sales-create-header { padding: 0 12px; }
    .nexadmin-create-form { grid-template-columns: 1fr; gap: 7px; padding: 15px; }
    .nexadmin-create-form label:not(:first-child) { margin-top: 7px; }
    .nexadmin-create-form button { grid-column: 1; }
    .nexadmin-sale-search-main { padding: 0 10px 24px; }
    .nexadmin-sale-search-main > h1 { margin-right: -10px; margin-left: -10px; padding-left: 10px; }
    .nexadmin-sale-search-layout { grid-template-columns: 1fr; gap: 10px; padding: 9px 0; }
    .nexadmin-tour-table { min-width: 570px; }
    .nexadmin-booking-summary { grid-template-columns: 1fr; }
    .nexadmin-booking-select-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .nexadmin-booking-select-form button { grid-column: 1 / -1; width: 100%; }
    .nexadmin-price-option { grid-template-columns: 1fr auto; gap: 9px; }
    .nexadmin-price-option form { grid-column: 1 / -1; }
    .nexadmin-price-option button { width: 100%; }
}
