/* Site styles: base, then components, then utilities. Order matches the previous three sheets. */

/* Rubik is the text face. Hando Trial is the heading face. Inter covers
   Cyrillic in headings, because Hando Trial has no Russian letters.
   Icons are the few Font Awesome glyphs the templates use.
   Font Awesome Free 6.7.2 — https://fontawesome.com/license/free */
@font-face {
    font-family: "Rubik";
    src: url("../fonts/rubik/Rubik-Regular.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Rubik";
    src: url("../fonts/rubik/Rubik-Medium.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Rubik";
    src: url("../fonts/rubik/Rubik-SemiBold.woff2") format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Rubik";
    src: url("../fonts/rubik/Rubik-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Hando Trial";
    src: url("../fonts/hando-trial/HandoTrial-Regular.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Hando Trial";
    src: url("../fonts/hando-trial/HandoTrial-Bold.woff2") format("woff2");
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Hando Trial";
    src: url("../fonts/hando-trial/HandoTrial-BoldOblique.woff2") format("woff2");
    font-weight: 700;
    font-style: italic;
    font-display: swap;
}
@font-face {
    font-family: "Inter";
    src: url("../fonts/inter/Inter-Cyrillic.woff2") format("woff2");
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: "Font Awesome 6 Free";
    src: url("../fonts/icons/fa-solid.woff2") format("woff2");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: "Font Awesome 6 Brands";
    src: url("../fonts/icons/fa-brands.woff2") format("woff2");
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
.fa, .fas, .fa-solid, .fab, .fa-brands {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    text-rendering: auto;
}
.fa, .fas, .fa-solid { font-family: "Font Awesome 6 Free"; font-weight: 900; }
.fab, .fa-brands { font-family: "Font Awesome 6 Brands"; font-weight: 400; }
.fa::before, .fas::before, .fa-solid::before, .fab::before, .fa-brands::before { content: var(--fa); }
.fa-phone { --fa: "\f095"; }
.fa-globe { --fa: "\f0ac"; }
.fa-chevron-down { --fa: "\f078"; }
.fa-chevron-up { --fa: "\f077"; }
.fa-coins { --fa: "\f51e"; }
.fa-bars { --fa: "\f0c9"; }
.fa-times, .fa-xmark { --fa: "\f00d"; }
.fa-location-dot, .fa-map-marker-alt { --fa: "\f3c5"; }
.fa-arrow-right { --fa: "\f061"; }
.fa-arrow-up { --fa: "\f062"; }
.fa-sliders { --fa: "\f1de"; }
.fa-check { --fa: "\f00c"; }
.fa-whatsapp { --fa: "\f232"; }
.fa-instagram { --fa: "\f16d"; }

:root {
    --black-main: #0f1313;
    --black-secondary: #5d5a6b;
    --black-placeholder: rgba(15, 19, 19, 0.6);
    --black-disabled: rgba(15, 19, 19, 0.35);
    --black-bg: rgba(15, 19, 19, 0.1);
    --black-outline: rgba(15, 19, 19, 0.2);
    --white-secondary: rgba(217, 219, 228, 0.75);
    --white-placeholder: rgba(217, 219, 228, 0.6);
    --white-disabled: rgba(217, 219, 228, 0.35);
    --white-100: #f0f2f8;
    --white-200-main: #d9dbe4;
    --white-bg: rgba(217, 219, 228, 0.1);
    --white-outline: rgba(217, 219, 228, 0.2);
    --green-100: #f0fff7;
    --green-200: #c4ffe0;
    --green-300: #98ffc9;
    --green-500-main: #58e29a;
    --green-400-light: #6cffb2;
    --green-600-dark: rgb(70, 197, 131);
    --green-700: #36a86c;
    --green-800: #288a57;
    --green-900: #1c6d43;
    --green-1000: #125030;
    --blue-main: #003cff;
    --blue-dark: #334343;
    --error-main: #e12121;
    --font-family: "Rubik", sans-serif;
    --second-family: "Hando Trial", "Inter", sans-serif;
    /*Depends on dark or light*/
    --text-main: var(--black-main);
    --text-secondary: var(--black-secondary);
    --text-placeholder: var(--black-placeholder);
    --text-disabled: var(--black-disabled);
    --text-bg: var(--black-bg);
    --text-outline: var(--black-outline);
}

/** {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}*/

button {
    cursor: pointer;
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

.no-underline {
    text-decoration: none !important;
}

a:disabled {
    color: var(--white-disabled);
    pointer-events: none;
}

html, body {
    height: 100%;
}

body {
    font-family: var(--font-family), sans-serif !important;
    font-weight: normal;
    margin: 0;
    display: flex;
    flex-direction: column;
    color: var(--text-main);
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--second-family);
}

.transition {
    transition: all 0.3s ease;
}

/* Custom animations */
@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.animate-fadeIn {
    animation: fadeIn 0.5s ease-in-out;
}

/* Custom hover effects */
.car-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.car-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .container {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* Swiper customization */
.swiper-container {
    width: 100%;
    height: 100%;
}

.swiper-button-next,
.swiper-button-prev {
    color: #0A0A0A;
}

.swiper-pagination-bullet-active {
    background: #0A0A0A;
}

/* Custom animations */
.transition {
    transition: all 0.3s ease;
}

/* Custom hover effects */
.group:hover .group-hover\:text-yellow-500 {
    color: #0A0A0A;
}

.group:hover .group-hover\:scale-105 {
    transform: scale(1.05);
}

body, html {
    scrollbar-width: thin;
}

/* Custom form elements */
input:focus, select:focus {
    outline: none;
    border-color: #0A0A0A;
    box-shadow: 0 0 0 2px rgba(10, 10, 10, 0.12);
}

/* Custom buttons */
.btn-primary {
    background-color: #0A0A0A;
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.btn-primary:hover {
    background-color: #27272A;
}

.btn-secondary {
    background-color: transparent;
    color: #0A0A0A;
    border: 1px solid #0A0A0A;
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    font-weight: 500;
    transition: all 0.3s ease;
}

.btn-secondary:hover {
    background-color: #0A0A0A;
    color: white;
}

/* Custom card styles */
.card {
    border-radius: 0.5rem;
    overflow: hidden;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
}

.card:hover {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
    transform: translateY(-5px);
}

/* Custom badge styles */
.badge {
    display: inline-block;
    padding: 0.25rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
}

.badge-featured {
    background-color: #0A0A0A;
    color: white;
}

.badge-sale {
    background-color: #EF4444;
    color: white;
}

/* Custom pricing display */
.price {
    font-weight: 700;
    color: #0A0E14;
}

.price-period {
    font-size: 0.875rem;
    color: #6B7280;
}

/* Custom section styles */
.section-title {
    font-size: 1.875rem;
    font-weight: 700;
    color: #1F2937;
    margin-bottom: 1.5rem;
}

.section-subtitle {
    font-size: 1.125rem;
    color: #6B7280;
    margin-bottom: 2rem;
}

/* Custom hero section */
.hero-overlay {
    background-color: rgba(0, 0, 0, 0.5);
    padding: 2rem;
    border-radius: 0.5rem;
}

/* Custom testimonial styles */
.testimonial {
    background-color: #1F2937;
    border-radius: 0.5rem;
    padding: 1.5rem;
}

.testimonial-stars {
    color: #B89968;
    margin-bottom: 1rem;
}

.testimonial-text {
    color: #D1D5DB;
    margin-bottom: 1.5rem;
}

.testimonial-author {
    display: flex;
    align-items: center;
}

.testimonial-author-image {
    width: 3rem;
    height: 3rem;
    border-radius: 9999px;
    margin-right: 1rem;
}

.testimonial-author-name {
    font-weight: 600;
    color: white;
}

.testimonial-author-location {
    font-size: 0.875rem;
    color: #9CA3AF;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .section-title {
        font-size: 1.5rem;
    }

    .hero-overlay {
        padding: 1.5rem;
    }
}

/* Custom FAQ styles */
.faq-item {
    border-bottom: 1px solid #E5E7EB;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
}

.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    font-weight: 600;
    color: #1F2937;
}

.faq-answer {
    margin-top: 0.75rem;
    color: #6B7280;
    display: none;
}

.faq__answer {
    max-height: 0;
    overflow: hidden;
    transition: .3s;
}

.faq-icon {
    color: #0A0A0A;
    transition: transform 0.3s ease;
}

.faq-active .faq-icon {
    transform: rotate(180deg);
}

.faq-active .faq-answer {
    display: block;
}

.dropdown-content {
    position: absolute;
    min-width: 120px;
    z-index: 50;
    background-color: white;
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);
    border-radius: 0.375rem;
    opacity: 0;
    visibility: hidden;
    transition: .2s;
}

/* Hover-open kept for header navigation only; the hero search dropdown is click-driven below. */
.site-nav .dropdown:hover .dropdown-content {
    opacity: 1;
    visibility: visible;
}

/* Default closed state for any dropdown */
.dropdown .dropdown-content {
    opacity: 0;
    visibility: hidden;
}

/* Click-open behaviour (toggled in JS) */
.dropdown.open .dropdown-content,
.type-options.open .dropdown-content {
    opacity: 1;
    visibility: visible;
}

/* Header topbar / nav remain hoverable */
.site-header__topbar .dropdown:hover .dropdown-content,
.site-nav .dropdown:hover .dropdown-content {
    opacity: 1;
    visibility: visible;
}

.mobile-menu {
    transform: translateX(-100%);
    transition: transform 0.3s ease-in-out;
}

.mobile-menu.active {
    transform: translateX(0);
}

.submenu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.submenu.active {
    max-height: 500px;
}

.wave-bg {
    background-image: url("data:image/svg+xml,%3Csvg width='1440' height='900' viewBox='0 0 1440 900' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.05' d='M-97.5 742.5C-97.5 742.5 128.5 646.5 254.5 646.5C380.5 646.5 422.5 742.5 548.5 742.5C674.5 742.5 716.5 646.5 842.5 646.5C968.5 646.5 1010.5 742.5 1136.5 742.5C1262.5 742.5 1304.5 646.5 1430.5 646.5C1556.5 646.5 1598.5 742.5 1724.5 742.5' stroke='%23D2B883' stroke-width='3'/%3E%3Cpath opacity='0.05' d='M-97.5 772.5C-97.5 772.5 128.5 676.5 254.5 676.5C380.5 676.5 422.5 772.5 548.5 772.5C674.5 772.5 716.5 676.5 842.5 676.5C968.5 676.5 1010.5 772.5 1136.5 772.5C1262.5 772.5 1304.5 676.5 1430.5 676.5C1556.5 676.5 1598.5 772.5 1724.5 772.5' stroke='%23D2B883' stroke-width='3'/%3E%3Cpath opacity='0.05' d='M-97.5 802.5C-97.5 802.5 128.5 706.5 254.5 706.5C380.5 706.5 422.5 802.5 548.5 802.5C674.5 802.5 716.5 706.5 842.5 706.5C968.5 706.5 1010.5 802.5 1136.5 802.5C1262.5 802.5 1304.5 706.5 1430.5 706.5C1556.5 706.5 1598.5 802.5 1724.5 802.5' stroke='%23D2B883' stroke-width='3'/%3E%3C/svg%3E");
    background-size: cover;
    background-position: center;
}

.gold-text {
    color: #0A0A0A;
}

.form-container {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    overflow: visible;
}

.noUi-connect {
    background: #0A0A0A;
}

.noUi-handle {
    background: #0A0A0A;
    border: 2px solid white;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    border-radius: 50%;
    cursor: pointer;
}

.noUi-handle:before, .noUi-handle:after {
    display: none;
}

.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
    background: #0A0A0A;
    border-color: #0A0A0A;
    color: #fff;
}

.flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus {
    background: #F4F4F5;
    border-color: #F4F4F5;
    color: #0A0A0A;
}

.dropdown {
    position: relative;
}


.dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    transition: all 0.2s;
    white-space: nowrap;
}

.dropdown-content a:hover {
    background-color: #f9f9f9;
}

.custom-logo-link {
    display: inline-flex;
    align-items: center;
}
.custom-logo-link img {
    max-width: clamp(195px, 14vw, 265px);
    max-height: 68px;
    width: auto;
    height: auto;
    object-fit: contain;
}

@media screen and (min-width: 769px) {
    .custom-logo-link img {
        max-width: clamp(195px, 14vw, 265px);
    }
}

@media screen and (max-width: 768px) {
    .custom-logo-link img {
        max-width: clamp(200px, 52vw, 280px);
        max-height: 58px;
    }
}

.seo-section {
    background: var(--white-100);
}

.seo-content {
    color: #4b5563;
    line-height: 1.625;
}

.slider-nav__button {
    width: 48px;
    height: 48px;
    color: var(--text-main);
    border: 1px solid currentColor;
    background: transparent;
    outline: none;
    border-radius: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: 0.2s;
}

.slider-nav__button:disabled {
    pointer-events: none;
    opacity: .5;
}

@media screen and (max-width: 768px) {
    .slider-nav__button {
        width: 36px;
        height: 36px;
    }

    .slider-nav__button svg {
        width: 12px;
        height: auto;
    }
}

.slider-m-mod {
    overflow: hidden;
}

.slider-m-mod .swiper {
    overflow: hidden;
}

@media screen and (max-width: 992px) {


    .slider-m-mod .swiper .swiper-button-next,
    .slider-m-mod .swiper .swiper-button-prev {
        display: none;
    }
}

@media screen and (max-width: 768px) {

}

.c-content p + p {
    margin-top: 1em;
}

.freq {
    position: relative;
    overflow: hidden;
    background-color: #fafafa;
}

.freq:before {
    content: '';
    display: block;
    background: radial-gradient(circle at 30% 20%, rgba(10, 10, 10, 0.04), rgba(255, 255, 255, 0) 60%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.freq > .container {
    position: relative;
    z-index: 1;
}

.tandi {
    position: relative;
    overflow: hidden;
}

.tandi:before {
    content: '';
    display: block;
    background: radial-gradient(circle at 70% 20%, rgba(10, 10, 10, 0.03), rgba(255, 255, 255, 0) 65%);
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.tandi > .container {
    position: relative;
    z-index: 1;
}

.product-card:hover .primary-image {
    opacity: 0;
}

.product-card:hover .secondary-image {
    opacity: 1;
}

.secondary-image {
    opacity: 0;
}

.primary-image, .secondary-image {
    transition: opacity 0.5s ease-in-out;
}

.tab-active {
    background-color: #0A0E14;
    color: #fff !important;
    border-color: #0A0E14;
    background-image: none;
}

.products .swiper-slide {
    height: auto;
}

.tab-btn + .tab-btn {
    border-left: 1px solid rgb(229 231 235 / var(--tw-border-opacity, 1));
}

.gallery__track .swiper-slide {
    max-width: 20%;
}

#booking-modal {
    width: 90vw;
    max-width: 440px;
    border-radius: 10px;
    padding: 0;
}

.product-card__image .h-full {
    height: 100% !important;
}

.prose {
    color: #374151;
    line-height: 1.75;
}

.prose h1 {
    font-weight: 700;
    color: #111827;
    margin-bottom: 1rem;
    line-height: 1.2;
}

.prose h2 {
    font-size: clamp(1.5rem, 3vw, 1.875rem);
    font-weight: 600;
    color: #111827;
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    line-height: 1.3;
}

.prose h3 {
    font-size: clamp(1.35rem, 2vw, 1.5rem);
    font-weight: 500;
    color: #111827;
    margin-top: 2rem;
    margin-bottom: 1rem;
    line-height: 1.4;
}

.prose h4 {
    font-size: clamp(1.125rem, 1.5vw, 1.25rem);
    font-weight: 600;
    color: #1f2937;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
    line-height: 1.5;
}

.prose p {
    margin-bottom: 1.5rem;
    font-size: 1rem;
}

.prose ul {
    list-style-type: disc;
    padding-left: 1.5rem;
    margin-bottom: 1.5rem;
}

.prose ol {
    list-style-type: decimal;
    padding-left: 1.5rem;
    margin-bottom: 1.5rem;
}

.prose li {
    margin-bottom: 0.5rem;
}

.prose a {
    color: #2563eb;
    text-decoration: underline;
    transition: color 0.2s ease-in-out;
}

.prose a:hover {
    color: #1d4ed8;
}

.prose img {
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    max-width: 100%;
    height: auto;
}

.prose blockquote {
    border-left: 4px solid #d1d5db;
    padding-left: 1rem;
    font-style: italic;
    color: #6b7280;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.prose table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.5rem;
}

.prose th {
    background-color: #f3f4f6;
    font-weight: 600;
    color: #111827;
    padding: 1rem;
    text-align: left;
    border-bottom: 1px solid #d1d5db;
}

.prose td {
    padding: 1rem;
    border-bottom: 1px solid #e5e7eb;
}

.prose pre {
    background-color: #111827;
    color: #ffffff;
    padding: 1rem;
    border-radius: 0.5rem;
    overflow-x: auto;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.prose code {
    background-color: #f3f4f6;
    color: #111827;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
}

.prose > *:first-child {
    margin-top: 0;
}

@media screen and (max-width: 768px) {
    .prose p {
        font-size: 14px;
    }
}


.pagination-item {
    min-width: 44px;
    text-align: center;
}

.nav-links {
    display: grid;
    grid-template-columns: repeat( 2, minmax(0, 1fr) );
    gap: 24px;
}

.nav-links a {
    color: #0A0A0A;
    text-decoration: none;
    font-weight: 500;
}

.nav-links a:hover {
    text-decoration: underline;
    color: #27272A;
}

.nav-links .nav-next {
    text-align: right;
}

.nav-links svg {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
}

.nav-links .nav-next {
    grid-column: 2;
}

.nav-links a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.post-hero {
    position: relative;
    overflow: hidden;
    background: var(--ink);
    color: #fff;
}

.post-hero__media,
.post-hero__shade {
    position: absolute;
    inset: 0;
}

.post-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.post-hero__shade {
    background: linear-gradient(180deg, rgba(10, 10, 10, .45) 0%, rgba(10, 10, 10, .85) 100%);
    pointer-events: none;
}

.post-hero__content {
    position: relative;
    z-index: 1;
    padding-top: 96px;
    padding-bottom: 96px;
}

.post-hero .h-display {
    max-width: 56rem;
    margin-bottom: 24px;
    color: #fff;
}

.post-hero__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 24px;
    font-size: 14px;
    opacity: .85;
}

.post-hero__item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.post-hero__meta svg {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
}

.post-hero__meta a {
    color: inherit;
    text-decoration: none;
}

.post-hero__meta a:hover {
    text-decoration: underline;
}

.post-layout {
    display: grid;
    gap: 40px;
    align-items: start;
}

@media (min-width: 1024px) {
    .post-layout {
        grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr);
        gap: 32px;
    }
}

.post-layout .c-content img {
    border-radius: 12px;
}

.post-nav {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid var(--line);
}

.recent-posts-widget {
    background: var(--sand-50);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 24px;
}

@media (min-width: 1024px) {
    .recent-posts-widget {
        position: sticky;
        top: calc(var(--header-h) + 16px);
    }
}

.recent-posts-widget__title {
    margin: 0 0 4px;
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 1.125rem;
    letter-spacing: -.005em;
    color: var(--ink);
}

.recent-posts-widget__item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 0;
    color: inherit;
    text-decoration: none;
}

.recent-posts-widget__item + .recent-posts-widget__item {
    border-top: 1px solid var(--line);
}

.recent-posts-widget__thumb {
    width: 80px;
    height: 80px;
    flex: 0 0 auto;
    overflow: hidden;
    border-radius: var(--r-sm);
    background: var(--sand-100);
}

.recent-posts-widget__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.recent-posts-widget__name {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-family: var(--second-family);
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.35;
    color: var(--ink);
}

.recent-posts-widget__item:hover .recent-posts-widget__name {
    color: var(--gold-strong);
}

.recent-posts-widget time {
    display: block;
    margin-top: 4px;
    color: var(--smoke);
    font-size: .875rem;
}

.related-posts {
    background: var(--bg-soft);
}

.related-posts__head {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 32px;
}

.related-posts .section-head__title {
    margin-bottom: 0;
}

.related-posts__all {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--ink);
    font-weight: 500;
    font-size: 14.5px;
    text-decoration: none;
}

.related-posts__all:hover {
    color: var(--gold-strong);
}

.related-posts .post-card__excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.wc-block-attribute-filter-list {
    overflow: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    max-height: 160px;
    padding-right: 5px;
}

.shop-sidebar .widget_block + .widget_block {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #d1d5db;
}

.shop-sidebar .widget_block .wp-block-heading {
    font-weight: 600;
}

.chero {
    position: relative;
    z-index: 22;
}

.chero:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(70% 60% at 50% 0%, rgba(10, 10, 10, 0.05), rgba(255, 255, 255, 0) 75%),
        radial-gradient(45% 50% at 80% 90%, rgba(10, 10, 10, 0.025), rgba(255, 255, 255, 0) 70%);
    z-index: 1;
    pointer-events: none;
}

.chero > * {
    position: relative;
    z-index: 2;
}

.wc-block-components-price-slider--is-input-inline .wc-block-components-price-slider__controls .wc-block-components-price-slider__amount {
    max-width: 100px !important;
}

.masonry-container {
    column-count: 1;
    column-gap: 1.5rem;
}

@media (min-width: 640px) {
    .masonry-container {
        column-count: 2;
    }
}

@media (min-width: 1024px) {
    .masonry-container {
        column-count: 3;
    }
}

.masonry-item {
    break-inside: avoid;
    margin-bottom: 1.5rem;
    display: inline-block;
    width: 100%;
}

.testimonial-card {
    transition: all 0.3s ease;
}

.testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.star-rating {
    color: #FFB800;
}

.c-content {
    font-size: 16px;
}

.c-content h1 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 20px;
}

.c-content h2 {
    font-size: 24px;
    font-weight: 600;
    margin: 18px 0 12px;
}

.c-content h3 {
    font-size: 20px;
    font-weight: 600;
    margin: 16px 0 10px;
}


.c-content p {
    margin-bottom: 16px;
}

.c-content figure {
    margin: 0 0 16px;
}

.c-content ul,
.c-content ol {
    margin: 16px 0;
    padding-left: 28px;
    list-style-type: initial;
}

.c-content li {
    font-size: 16px;
    margin-bottom: 10px;
}

.c-content a {
    text-decoration: none;
    transition: color 0.2s ease;
}

.c-content a:hover {
    text-decoration: underline;
}

/* Адаптивность */
@media (max-width: 1024px) {
    .c-content h1 {
        font-size: 24px;
    }

    .c-content h2 {
        font-size: 20px;
    }

    .c-content h3 {
        font-size: 18px;
    }
}

@media (max-width: 768px) {
    .c-content h1 {
        font-size: 20px;
    }

    .c-content h2 {
        font-size: 18px;
    }

    .c-content h3 {
        font-size: 16px;
    }

    .c-content {
        font-size: 14px;
    }
}

.container .container {
    padding: 0;
}

.m-0 {
    margin: 0 !important;
}

.atr-oldprice {
    position: relative;
    display: inline-block;
    width: auto;
    max-width: 100%;
    opacity: 0.9;
    white-space: nowrap;
    text-decoration: none;
}

.atr-oldprice:empty {
    display: none;
}

.atr-oldprice:after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    background: currentColor;
    top: 50%;
    right: 0;
    rotate: -3deg;
    opacity: 0.8;
}

.car-Card__prices-period:not(.car-Card__prices-period_active) .atr-oldprice {
    opacity: 0.6;
}/* ==========================================================================
   Alligator Rent — Modern Design System
   A refined, editorial look inspired by Tilda / Webflow showcase sites.
   Adds tokens, components and motion on top of the existing Tailwind build.
   ========================================================================== */

:root {
	/* ----- Brand palette -----
	   Premium automotive monochrome. The reference is Rolls-Royce / Aston
	   Martin Lagonda / Polestar / B&O — confident black, paper-clean white
	   and platinum greys, no chromatic accent.

	   The `--gold-*` token names are kept for backwards-compatibility with
	   the rest of the theme; the values are now neutral graphite, so every
	   "gold" button, badge, hover, divider and ring renders as understated
	   black-and-grey. */
	--ink:          #0A0A0A;   /* Primary near-black */
	--ink-soft:     #18181B;
	--graphite:     #27272A;
	--smoke:        #52525B;
	--mist:         #A1A1AA;

	/* Neutral surface scale (kept the `--sand-*` token names for compat) */
	--sand-50:      #FAFAFA;
	--sand-100:     #F4F4F5;
	--sand-200:     #E4E4E7;
	--sand-300:     #D4D4D8;

	/* Primary CTA token (was warm gold — now pure graphite black) */
	--gold:         #0A0A0A;
	--gold-soft:    #F4F4F5;
	--gold-hover:   #27272A;
	--gold-strong:  #000000;

	/* Semantic aliases */
	--accent:        var(--gold);
	--accent-hover:  var(--gold-hover);
	--accent-soft:   var(--gold-soft);
	--accent-strong: var(--gold-strong);

	--line:         #E4E4E7;
	--line-soft:    #F4F4F5;

	--bg-base:      #FFFFFF;
	--bg-soft:      #FAFAFA;
	--bg-cream:     #F4F4F5;
	--bg-dark:      #0A0A0A;
	--bg-graphite:  #18181B;

	--success:      #16A34A;
	--danger:       #DC2626;

	/* ----- Radii ----- */
	--r-xs:  4px;
	--r-sm:  6px;
	--r-md:  10px;
	--r-lg:  16px;
	--r-xl:  22px;
	--r-pill: 999px;

	/* ----- Shadows ----- */
	--shadow-xs:    0 1px 2px rgba(10,10,10,.04);
	--shadow-sm:    0 4px 12px rgba(10,10,10,.05);
	--shadow-md:    0 12px 28px rgba(10,10,10,.07);
	--shadow-lg:    0 28px 60px rgba(10,10,10,.12);
	--shadow-gold:  0 14px 32px rgba(10,10,10,.18);  /* legacy name */
	--shadow-accent: var(--shadow-gold);

	/* ----- Motion ----- */
	--ease-out:    cubic-bezier(.16,.84,.31,1);
	--ease-in-out: cubic-bezier(.65,.05,.36,1);
	--t-fast: 160ms var(--ease-out);
	--t-base: 280ms var(--ease-out);
	--t-slow: 520ms var(--ease-out);

	/* ----- Header ----- */
	--header-h: 84px;
	--topbar-h: 36px;
}

/* ==========================================================================
   Base typography
   ========================================================================== */
html { scroll-behavior: smooth; }

body {
	color: var(--ink);
	background: var(--bg-base);
	font-feature-settings: "ss01" on, "kern" on;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6,
.h-display {
	font-family: var(--second-family);
	letter-spacing: -.01em;
	color: var(--ink);
}

/* Editorial headlines (overrides where used) */
.h-display {
	font-weight: 600;
	line-height: 1.05;
	font-size: clamp(2.25rem, 4.5vw + .5rem, 4.75rem);
	letter-spacing: -.02em;
}

.h-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--font-family);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--gold-strong);
}

.h-eyebrow::before {
	content: "";
	width: 24px;
	height: 1px;
	background: var(--gold);
}

/* Section heading wrapper */
.section-head {
	max-width: 720px;
	margin-bottom: 32px;
}

@media (min-width: 768px) {
	.section-head { margin-bottom: 48px; }
}

.section-head__title {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: clamp(1.75rem, 2.3vw + .75rem, 2.75rem);
	line-height: 1.1;
	letter-spacing: -.015em;
	color: var(--ink);
	margin: 8px 0 0;
}

.section-head__subtitle {
	margin-top: 16px;
	color: var(--smoke);
	font-size: clamp(.95rem, .25vw + .85rem, 1.0625rem);
	line-height: 1.65;
	max-width: 60ch;
}

/* Section vertical rhythm */
.section { padding: 64px 0; }
.section-tight { padding: 48px 0; }
.section-lg { padding: 80px 0; }

@media (min-width: 1024px) {
	.section { padding: 96px 0; }
	.section-tight { padding: 64px 0; }
	.section-lg { padding: 120px 0; }
}

/* ==========================================================================
   Container refinement
   ========================================================================== */
.container {
	width: 100%;
	margin-inline: auto;
	padding-inline: 20px;
	max-width: 1280px;
}

@media (min-width: 768px) {
	.container { padding-inline: 32px; }
}

@media (min-width: 1280px) {
	.container { padding-inline: 40px; }
}

/* ==========================================================================
   Buttons (modern, no gradient pills)
   ========================================================================== */
.c-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 26px;
	font-family: var(--font-family);
	font-weight: 500;
	font-size: 15px;
	line-height: 1;
	border: 1.5px solid transparent;
	border-radius: var(--r-md);
	cursor: pointer;
	transition: background var(--t-base), color var(--t-base), border-color var(--t-base), transform var(--t-fast), box-shadow var(--t-base);
	text-decoration: none !important;
	white-space: nowrap;
	letter-spacing: .005em;
}

.c-btn:hover { transform: translateY(-1px); }
.c-btn:active { transform: translateY(0); }
.c-btn:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }

.c-btn--primary {
	background: var(--ink);
	color: #fff;
}
.c-btn--primary:hover { background: var(--ink-soft); box-shadow: var(--shadow-md); }

.c-btn--gold {
	background: var(--gold);
	color: #fff;
}
.c-btn--gold:hover { background: var(--gold-hover); box-shadow: var(--shadow-gold); color: #fff; }

.c-btn--ghost {
	background: transparent;
	color: var(--ink);
	border-color: var(--ink);
}
.c-btn--ghost:hover { background: var(--ink); color: #fff; }

.c-btn--gold-ghost {
	background: transparent;
	color: var(--ink);
	border-color: var(--gold);
}
.c-btn--gold-ghost:hover { background: var(--gold); color: #fff; border-color: var(--gold); }

.c-btn--light {
	background: #fff;
	color: var(--ink);
	border-color: var(--line);
}
.c-btn--light:hover { background: var(--sand-50); border-color: var(--ink); }

.c-btn--sm { padding: 10px 18px; font-size: 13.5px; }
.c-btn--lg { padding: 18px 32px; font-size: 16px; }
.c-btn--block { width: 100%; }
.c-btn--icon { padding: 12px; }

.c-btn--whatsapp {
	background: #fff;
	color: #128C7E;
	border-color: #25D366;
}
.c-btn--whatsapp:hover {
	background: #f3fbf6;
	color: #075E54;
	border-color: #25D366;
}

/* "Booking" CTA next to WhatsApp — keep the same compact height */
.cost .c-btn--block,
.product-card .c-btn--block { padding: 14px 22px; font-size: 15px; }

/* Override common Tailwind button utilities used in the theme to avoid the “AI gradient” look. */
.bg-gradient-to-r.from-amber-700\/90.to-red-700\/80,
.from-amber-700\/90,
.to-red-700\/80 {
	background: var(--ink) !important;
	background-image: none !important;
}

a.bg-amber-700,
button.bg-amber-700,
.bg-amber-700.bg-gradient-to-r {
	background: var(--ink) !important;
	color: #fff !important;
}
a.bg-amber-700:hover,
button.bg-amber-700:hover,
.bg-amber-700.bg-gradient-to-r:hover {
	background: var(--ink-soft) !important;
	box-shadow: var(--shadow-md);
}

/* Soft CTA — light surface, subtle hover (Search Now, View details) */
.search-btn,
button.search-btn,
.search-form__submit,
.car-horizontal__details {
	background: #fff !important;
	color: var(--ink) !important;
	border: 1px solid var(--line) !important;
	background-image: none !important;
	box-shadow: none !important;
	font-weight: 500;
	letter-spacing: .01em;
}
.search-btn:hover,
.search-form__submit:hover,
.car-horizontal__details:hover {
	background: var(--sand-50) !important;
	color: var(--ink) !important;
	border-color: var(--sand-300) !important;
	box-shadow: var(--shadow-xs) !important;
}
.search-form__submit svg {
	opacity: .65;
	transition: opacity var(--t-fast);
}
.search-form__submit:hover svg { opacity: .9; }

/* Retarget Tailwind's amber/yellow palette CSS variables to a neutral
   monochrome ramp so legacy `bg-amber-700`, `text-amber-700`,
   `hover:text-amber-800`, `text-yellow-500`, etc. throughout the templates
   render as graphite black — no chromatic accent. */
:root {
	--color-amber-50:  #FAFAFA;
	--color-amber-100: #F4F4F5;
	--color-amber-200: #E4E4E7;
	--color-amber-300: #D4D4D8;
	--color-amber-400: #A1A1AA;
	--color-amber-500: #52525B;
	--color-amber-600: #27272A;
	--color-amber-700: #18181B;
	--color-amber-800: #0A0A0A;
	--color-amber-900: #000000;
	--color-amber-950: #000000;

	--color-yellow-50:  #FAFAFA;
	--color-yellow-100: #F4F4F5;
	--color-yellow-200: #E4E4E7;
	--color-yellow-300: #D4D4D8;
	--color-yellow-400: #A1A1AA;
	--color-yellow-500: #0A0A0A;
	--color-yellow-600: #18181B;
	--color-yellow-700: #000000;
}

/* Stop Tailwind from painting the amber → red gradient on buttons. */
.bg-gradient-to-r.from-amber-700\/90.to-red-700\/80,
.from-amber-700\/90.to-red-700\/80 {
	background-image: none !important;
	background-color: var(--ink) !important;
	color: #fff !important;
}

/* Tailwind amber utility safety net (in case the vars above aren’t resolved) */
.text-amber-700,
.text-amber-800,
.hover\:text-amber-800:hover,
.hover\:text-yellow-500:hover { color: var(--gold) !important; }
.bg-amber-600,
.bg-amber-700,
.hover\:bg-amber-600:hover { background-color: var(--gold) !important; color: #fff !important; }
.form-checkbox.text-amber-700,
.form-radio.text-amber-700 { accent-color: var(--gold); }

/* ==========================================================================
   Surfaces & cards
   ========================================================================== */
.c-card {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	overflow: hidden;
	transition: transform var(--t-base), box-shadow var(--t-base), border-color var(--t-base);
}
.c-card:hover {
	transform: translateY(-3px);
	box-shadow: var(--shadow-md);
	border-color: var(--sand-300);
}

.c-card--dark {
	background: var(--ink);
	color: #fff;
	border-color: rgba(255,255,255,.06);
}

/* ==========================================================================
   Refined badges
   ========================================================================== */
.c-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 12px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	border-radius: var(--r-pill);
	line-height: 1;
}
.c-badge--hot { background: var(--ink); color: var(--gold-soft); }
.c-badge--featured { background: var(--gold); color: #fff; }

/* ==========================================================================
   Scroll reveal animation
   ========================================================================== */
@media (prefers-reduced-motion: no-preference) {
	[data-reveal] {
		opacity: 0;
		transform: translateY(28px);
		transition:
			opacity .9s var(--ease-out),
			transform .9s var(--ease-out);
		will-change: opacity, transform;
	}
	[data-reveal].is-visible {
		opacity: 1;
		transform: translateY(0);
	}
	[data-reveal="fade"] { transform: none; }
	[data-reveal="left"] { transform: translateX(-28px); }
	[data-reveal="right"] { transform: translateX(28px); }
	[data-reveal="left"].is-visible,
	[data-reveal="right"].is-visible { transform: translateX(0); }
	[data-reveal-delay="100"] { transition-delay: 100ms; }
	[data-reveal-delay="200"] { transition-delay: 200ms; }
	[data-reveal-delay="300"] { transition-delay: 300ms; }
	[data-reveal-delay="400"] { transition-delay: 400ms; }
	[data-reveal-delay="500"] { transition-delay: 500ms; }
}

/* ==========================================================================
   Header (scroll-shrink + modern bar)
   ========================================================================== */
.site-header {
	position: sticky;
	top: 0;
	z-index: 60;
	background: rgba(255, 255, 255, .92);
	backdrop-filter: saturate(1.1) blur(14px);
	-webkit-backdrop-filter: saturate(1.1) blur(14px);
	border-bottom: 1px solid transparent;
	transition: background var(--t-base), border-color var(--t-base), box-shadow var(--t-base);
}
.site-header.is-scrolled {
	background: rgba(255, 255, 255, .96);
	border-bottom-color: var(--line);
	box-shadow: var(--shadow-xs);
}
.site-header__topbar {
	background: var(--ink);
	color: rgba(255,255,255,.85);
	font-size: 13px;
}
.site-header__topbar a { color: rgba(255,255,255,.85); transition: color var(--t-fast); }
.site-header__topbar a:hover { color: var(--gold-soft); text-decoration: none; }
.site-header__topbar .dropdown button {
	background: transparent;
	border: 1px solid rgba(255,255,255,.18);
	color: rgba(255,255,255,.85);
}
.site-header__topbar .dropdown:hover button {
	border-color: var(--gold);
	color: #fff;
}
.site-header__topbar .dropdown-content {
	background: var(--ink-soft);
	border: 1px solid rgba(255,255,255,.08);
	box-shadow: var(--shadow-lg);
}
.site-header__topbar .dropdown-content a { color: rgba(255,255,255,.85); }
.site-header__topbar .dropdown-content a:hover { background: rgba(255,255,255,.06); color: #fff; }
.site-header__topbar .container { min-height: var(--topbar-h); }
.site-header__cluster { gap: 18px; }
.site-header__phone { gap: 8px; }
.site-header__social { gap: 12px; }
.site-header__tools,
.site-header__actions { gap: 10px; }
.site-header__topbar .dropdown button { gap: 6px; padding: 6px 12px; border-radius: var(--r-pill); }
.site-header__caret { font-size: 10px; opacity: .65; }
.site-header__main > .container { min-height: var(--header-h); }
.site-header__burger {
	padding: 10px;
	border: 0;
	border-radius: var(--r-sm);
	background: none;
	color: var(--ink);
}
.site-overlay {
	background: rgba(10, 10, 10, .55);
	backdrop-filter: blur(4px);
	z-index: 55;
}

.site-header__main {
	min-height: var(--header-h);
}
.site-header__main > .container {
	align-items: center;
}
.site-header__main .custom-logo-link {
	display: inline-flex;
	align-items: center;
	line-height: 0;
	transform: translateY(3px);
}
@media (min-width: 769px) {
	.site-header__main .custom-logo-link {
		transform: translateY(4px);
	}
}
.site-header__main .custom-logo-link img {
	max-height: 58px;
	max-width: clamp(200px, 18vw, 280px);
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}
@media (min-width: 769px) {
	.site-header__main .custom-logo-link img {
		max-height: 68px;
		max-width: clamp(195px, 14vw, 265px);
	}
}
@media (min-width: 1024px) {
	:root { --header-h: 88px; }
}

.site-header__book {
	background: transparent;
	color: var(--ink);
	border-color: var(--line);
	font-weight: 500;
	box-shadow: none;
}
.site-header__book:hover {
	background: var(--sand-50);
	color: var(--ink);
	border-color: var(--sand-300);
	box-shadow: none;
	transform: none;
}
.mobile-menu__cta .site-header__book {
	padding: 14px 22px;
}

/* Primary nav */
.site-nav > ul { display: flex; gap: 6px; }
.site-nav a {
	position: relative;
	padding: 10px 14px;
	font-weight: 500;
	font-size: 15px;
	color: var(--ink);
	transition: color var(--t-fast);
}
.site-nav a:hover { color: var(--gold-strong); text-decoration: none; }
.site-nav a::after {
	content: "";
	position: absolute;
	left: 14px;
	right: 14px;
	bottom: 4px;
	height: 1.5px;
	background: var(--gold);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform var(--t-base);
}
.site-nav a:hover::after { transform: scaleX(1); }

.site-nav .dropdown-content {
	min-width: 220px;
	padding: 8px;
	border-radius: var(--r-md);
	border: 1px solid var(--line);
	box-shadow: var(--shadow-md);
}
.site-nav .dropdown-content a {
	padding: 10px 12px;
	border-radius: var(--r-sm);
	font-size: 14px;
}
.site-nav .dropdown-content a:hover { background: var(--sand-50); }
.site-nav .dropdown-content a::after { display: none; }

/* ==========================================================================
   Mobile menu — full-height premium drawer
   ========================================================================== */
.mobile-menu {
	position: fixed;
	inset: 0;
	width: 100%;
	max-width: 100%;
	height: 100%;
	max-height: 100dvh;
	background: #fff;
	display: flex;
	flex-direction: column;
	z-index: 70;
	box-shadow: none;
	transform: translateX(-100%);
	transition: transform .35s var(--ease-out);
	overflow: hidden;
	padding-bottom: env(safe-area-inset-bottom, 0);
}
.mobile-menu.active { transform: translateX(0); }

.mobile-menu__head {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	padding: 14px 16px 12px;
	gap: 12px;
	border-bottom: 1px solid var(--line);
	background: #fff;
	flex-shrink: 0;
	position: relative;
}
.mobile-menu__chips {
	display: flex;
	gap: 10px;
	position: relative;
	margin-right: auto;
}
.mobile-menu__chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 14px;
	border: 1px solid var(--line);
	border-radius: var(--r-pill);
	background: #fff;
	color: var(--ink);
	font-weight: 500;
	font-size: 13px;
	cursor: pointer;
	transition: border-color var(--t-fast);
}
.mobile-menu__chip:hover { border-color: var(--ink); }
.mobile-menu__chip-dropdown {
	position: absolute;
	left: 0;
	top: 100%;
	margin-top: 6px;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-md);
	overflow: hidden;
	min-width: 120px;
	z-index: 5;
}
.mobile-menu__chip-dropdown a {
	display: block;
	padding: 10px 16px;
	color: var(--ink);
	font-size: 14px;
}
.mobile-menu__chip-dropdown a:hover { background: var(--sand-100); text-decoration: none; }

.mobile-menu__close {
	width: 44px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 0;
	color: var(--ink);
	border-radius: var(--r-sm);
	font-size: 22px;
	cursor: pointer;
	flex-shrink: 0;
	margin-left: auto;
	transition: background var(--t-fast);
}
.mobile-menu__close:hover { background: var(--sand-100); }

.mobile-menu__nav {
	flex: 1;
	overflow-y: auto;
	padding: 16px 8px 8px;
	-webkit-overflow-scrolling: touch;
}
.mobile-menu__nav ul { list-style: none; padding: 0; margin: 0; }
.mobile-menu__nav > ul > li { border-bottom: 1px solid var(--line-soft); }
.mobile-menu__nav > ul > li:last-child { border-bottom: 0; }
.mobile-menu__nav > ul > li > a,
.mobile-menu__nav > ul > li > div > a {
	display: block;
	padding: 16px 16px;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 18px;
	color: var(--ink) !important;
	border-radius: var(--r-sm);
	letter-spacing: -.01em;
	transition: background var(--t-fast), color var(--t-fast);
}
.mobile-menu__nav > ul > li > a:hover,
.mobile-menu__nav > ul > li > div > a:hover { background: var(--sand-100); text-decoration: none; }
.mobile-menu__nav > ul > li > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-right: 12px;
}
.mobile-menu__nav .submenu-toggle {
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 0;
	color: var(--smoke);
	border-radius: var(--r-sm);
	cursor: pointer;
	transition: background var(--t-fast), color var(--t-fast);
}
.mobile-menu__nav .submenu-toggle:hover { background: var(--sand-100); color: var(--ink); }
.mobile-menu__nav .submenu {
	max-height: 0;
	overflow: hidden;
	padding: 0 12px;
	transition: max-height .3s ease;
}
.mobile-menu__nav .submenu.active { max-height: 1000px; padding: 4px 12px 12px; }
.mobile-menu__nav .submenu a {
	display: block;
	padding: 10px 16px;
	color: var(--smoke) !important;
	font-size: 15px;
	border-radius: var(--r-sm);
	transition: background var(--t-fast), color var(--t-fast);
}
.mobile-menu__nav .submenu a:hover { background: var(--sand-50); color: var(--ink) !important; text-decoration: none; }

.mobile-menu__cta {
	padding: 16px 20px;
	border-top: 1px solid var(--line);
	background: #fff;
	flex-shrink: 0;
}

.mobile-menu__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 18px 20px;
	background: var(--bg-dark);
	color: #fff;
	flex-shrink: 0;
}
.mobile-menu__phone {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #fff !important;
	font-weight: 500;
	font-size: 15px;
}
.mobile-menu__phone:hover { color: #fff !important; text-decoration: none; }
.mobile-menu__phone i { color: rgba(255,255,255,.7); font-size: 13px; }
.mobile-menu__socials { display: flex; gap: 10px; }
.mobile-menu__socials a {
	width: 38px;
	height: 38px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(255,255,255,.08);
	border-radius: var(--r-pill);
	color: #fff !important;
	font-size: 16px;
	transition: background var(--t-fast);
}
.mobile-menu__socials a:hover { background: rgba(255,255,255,.18); text-decoration: none; }

#overlay { z-index: 55; }
#overlay.hidden { display: none; }

/* ==========================================================================
   Hero block (chero)
   ========================================================================== */
.chero {
	background:
		radial-gradient(80% 60% at 50% 0%, rgba(10,10,10,.04), transparent 70%),
		linear-gradient(180deg, #fff 0%, var(--sand-50) 100%);
	overflow-x: clip;
	overflow-y: visible;
}
.chero::after {
	opacity: .08;
	width: min(110vw, 1400px);
	height: min(110vw, 1400px);
}

/* Neutralise any colour the editor may have set inside the H1 (e.g. blue spans). */
.chero__title,
.chero__title span,
.chero__title em,
.chero__title strong,
.chero__title b,
.chero__title i,
.chero__title a {
	color: var(--ink) !important;
}
.chero__title em,
.chero__title i { font-style: italic; font-weight: 600; color: var(--smoke) !important; }
.chero__title {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: clamp(2.25rem, 4.2vw + 1rem, 4.75rem);
	line-height: 1.04;
	letter-spacing: -.02em;
	color: var(--ink);
	margin: 0 0 18px;
}
.chero > .container { padding-top: 56px; padding-bottom: 32px; }
.chero__title svg { width: 1em; height: auto; transform: translateY(15%); }
.chero__subtitle {
	color: var(--smoke);
	font-size: clamp(1rem, .35vw + .9rem, 1.125rem);
	line-height: 1.6;
	max-width: 56ch;
	margin: 0 auto;
}
.chero__image {
	margin-top: 12px;
	width: 100%;
	max-width: 800px;
	margin-inline: auto;
}
.chero__image img {
	width: auto;
	max-width: min(100%, 800px);
	height: auto;
	display: block;
	margin-inline: auto;
	object-fit: contain;
	object-position: center;
	filter: drop-shadow(0 30px 60px rgba(10,10,10,.16));
	animation: chero-float 6s ease-in-out infinite;
}
@media (min-width: 768px) {
	.chero__image img {
		max-width: 800px;
	}
}
@keyframes chero-float {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(-10px); }
}
@media (prefers-reduced-motion: reduce) {
	.chero__image img { animation: none; }
}

/* Search form */
.search-form {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	box-shadow: var(--shadow-md);
	padding: 8px;
	display: grid;
	grid-template-columns: 1fr;
	gap: 4px;
	max-width: 100%;
	overflow: visible;
}
.search-form__field {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 6px;
	padding: 14px 18px;
	border-radius: var(--r-md);
	min-width: 0;
	overflow: visible;
}
@media (min-width: 768px) {
	.search-form__field { border-radius: 0; }
}
@media (min-width: 1024px) {
	.search-form__field { border-right: 1px solid var(--line-soft); }
	.search-form__field:last-child,
	.search-form__submit-wrap { border-right: none; }
}

/* Hover — без заливки ячейки; лёгкий акцент на подписи и chevron */
.search-form__field:not(.search-form__submit-wrap):not(.search-form__price):hover .search-form__label {
	color: var(--ink);
	opacity: 0.5;
}
.search-form__field:has(.type-options):hover .dropdown-caret {
	opacity: 0.85 !important;
}

/* Body Types dropdown — must escape the form card without being clipped */
.search-form .type-options { position: relative; }
.search-form .type-options.open { z-index: 30; }
.search-form__field:has(.type-options.open) {
	position: relative;
	z-index: 30;
}
.search-form .type-options .dropdown-content {
	top: calc(100% + 6px);
	left: 0;
	right: 0;
	width: 100%;
	min-width: 200px;
	max-height: min(300px, 50vh);
	overflow-y: auto;
	overflow-x: hidden;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	z-index: 100;
	border: 1px solid var(--line);
	border-radius: var(--r-md);
	box-shadow: var(--shadow-lg);
	padding: 6px 0;
	background: #fff;
}
.search-form .type-options .dropdown-content a {
	padding: 12px 18px;
	white-space: nowrap;
	color: var(--ink);
	font-size: 15px;
	font-weight: 500;
}
.search-form .type-options .dropdown-content a:hover {
	background: var(--sand-100);
	text-decoration: none;
}

@media (min-width: 768px) and (max-width: 1023.98px) {
	.search-form {
		grid-template-columns: 1fr 1fr 1fr;
		gap: 0;
		padding: 6px;
	}
	.search-form__field:nth-child(1) { grid-column: 1; border-right: 1px solid var(--line-soft); }
	.search-form__field:nth-child(2) { grid-column: 2; border-right: 1px solid var(--line-soft); }
	.search-form__field:nth-child(3) { grid-column: 3; }
	.search-form__price {
		grid-column: 1 / -1;
		border-top: 1px solid var(--line-soft);
		border-right: none !important;
	}
	.search-form__submit-wrap {
		grid-column: 1 / -1;
		border-top: 1px solid var(--line-soft);
	}
}

/* Desktop: 5 columns — body | pickup | dropoff | price | submit */
@media (min-width: 1024px) {
	.search-form {
		grid-template-columns: minmax(140px, 1.15fr) minmax(110px, 0.85fr) minmax(110px, 0.85fr) minmax(200px, 1.55fr) auto;
		gap: 0;
		padding: 10px 12px;
		align-items: center;
	}
	.search-form__field {
		padding: 10px 16px;
		min-height: 56px;
	}
}

.search-form__label {
	display: block;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: var(--smoke);
	margin-bottom: 0;
	line-height: 1.2;
	transition: color var(--t-fast), opacity var(--t-fast);
}
.search-form__value {
	font-size: 15px;
	font-weight: 500;
	color: var(--ink);
	width: 100%;
	background: transparent;
	border: none;
	outline: none;
	padding: 0;
	text-align: left;
	cursor: pointer;
}
.dropdown-caret { font-size: 11px; opacity: .55; }
.search-form__value::placeholder { color: var(--mist); }

/* Price range */
.search-form__price { min-width: 0; }
.search-form__price-inner { display: flex; flex-direction: column; justify-content: center; gap: 8px; min-width: 0; max-width: 100%; }
.search-form__price-row {
	display: flex;
	align-items: center;
	gap: 12px;
	color: var(--ink);
	font-weight: 500;
	font-size: 14px;
	min-width: 0;
	width: 100%;
}
.search-form__price-value {
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
	font-size: 13px;
	flex-shrink: 0;
	min-width: 72px;
}
.search-form__price-value:first-child { text-align: left; }
.search-form__price-value:last-child { text-align: right; }
.search-form__slider {
	flex: 1 1 auto;
	min-width: 60px;
	max-width: 100%;
	display: block;
	height: 28px;
}
@media (min-width: 1024px) {
	.search-form__price-inner { gap: 8px; }
	.search-form__price-row { gap: 12px; }
	.search-form__price-value { font-size: 13px; min-width: 72px; }
	.search-form__slider { height: 28px; min-width: 80px; }
}

/* Submit button cell */
.search-form__submit-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 8px;
}
@media (min-width: 1024px) {
	.search-form__submit-wrap {
		padding: 0 6px 0 10px;
		align-self: center;
		justify-content: flex-end;
		min-height: 0;
	}
}
.search-form__submit {
	width: 100%;
	padding: 12px 20px;
	border-radius: var(--r-md);
	font-size: 14px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	white-space: nowrap;
	transition: background var(--t-base), color var(--t-base), border-color var(--t-base), box-shadow var(--t-base);
}
@media (min-width: 1024px) {
	.search-form__submit {
		width: auto;
		height: auto;
		min-height: 0;
		min-width: 0;
		padding: 10px 16px;
		font-size: 13.5px;
		gap: 7px;
	}
	.search-form__submit svg {
		width: 15px;
		height: 15px;
	}
}
.search-form__submit:active { box-shadow: none !important; }

/* Mobile */
@media (max-width: 767.98px) {
	.chero { overflow-x: clip; overflow-y: visible; }
	.chero .container { padding-left: 16px; padding-right: 16px; }
	.form-container { max-width: 100%; overflow: visible; }
	.search-form { padding: 6px; max-width: 100%; }
	.search-form__field { padding: 16px 18px; min-width: 0; }
	.search-form__label { font-size: 12px; margin-bottom: 6px; text-align: left; }
	.search-form__value { font-size: 16px; text-align: left; }
	.search-form__field .dropdown-content { left: 0; right: 0; min-width: 100%; transform: none; max-height: min(260px, 42vh); }
	.search-form__price { padding: 16px 18px 18px; }
	.search-form__price-row { gap: 10px; }
	.search-form__price-value { font-size: 13px; min-width: 64px; }
	.search-form__submit-wrap { padding: 4px 6px 6px; }
	.search-form__submit { padding: 16px 22px; font-size: 16px; }
}

/* Defensive: confine the toolcool web component to its parent width */
tc-range-slider {
	max-width: 100%;
	box-sizing: border-box;
}

/* ==========================================================================
   Categories block
   ========================================================================== */
.cat-block {
	background: var(--sand-50);
}
.cat-block__media {
	position: relative;
	overflow: hidden;
	border-radius: var(--r-lg);
	aspect-ratio: 4/5;
	background: var(--sand-100);
}
@media (min-width: 768px) { .cat-block__media { aspect-ratio: 4/4.5; } }
.cat-block__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 1s var(--ease-out);
}
.cat-block__card:hover .cat-block__media img { transform: scale(1.04); }
.cat-block__panel {
	background: #fff;
	border-radius: var(--r-lg);
	padding: 28px;
	border: 1px solid var(--line);
}
.cat-block .section-head__title { margin-bottom: 12px; }
.cat-block .section-head__subtitle { margin-top: 0; margin-bottom: 24px; }
.cat-block__panel > .flex { gap: 12px; }
@media (min-width: 768px) { .cat-block__panel { padding: 40px; } }

.cat-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2px;
	border-radius: var(--r-md);
	overflow: hidden;
	border: 1px solid var(--line);
	background: var(--line);
}
@media (min-width: 640px) { .cat-list { grid-template-columns: 1fr 1fr; } }
.cat-list__item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	background: #fff;
	transition: background var(--t-fast), color var(--t-fast);
	text-decoration: none;
}
.cat-list__item:hover { background: var(--sand-50); text-decoration: none; }
.cat-list__label { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--smoke); display: block; margin-bottom: 2px; }
.cat-list__name { font-weight: 500; color: var(--ink); }
.cat-list__arrow {
	width: 32px;
	height: 32px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--r-pill);
	background: var(--sand-100);
	color: var(--ink);
	transition: background var(--t-fast), color var(--t-fast), transform var(--t-base);
}
.cat-list__item:hover .cat-list__arrow { background: var(--ink); color: var(--gold-soft); transform: translateX(3px); }

/* ==========================================================================
   Features block
   ========================================================================== */
.features {
	background: linear-gradient(180deg, #080808 0%, var(--ink) 40%, #0e0e10 100%);
	color: #fff;
	position: relative;
	overflow: hidden;
}
.features::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(ellipse 80% 60% at 10% 20%, rgba(255,255,255,.04), transparent 60%),
		radial-gradient(ellipse 60% 50% at 90% 80%, rgba(255,255,255,.03), transparent 55%);
	pointer-events: none;
}
.features > .container { position: relative; z-index: 1; }
.features__hero {
	background:
		linear-gradient(145deg, #222225 0%, #141416 45%, var(--ink) 100%);
	border-radius: var(--r-lg);
	padding: 36px;
	min-height: 320px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.06);
}
.features__hero::before {
	content: "";
	position: absolute; inset: 0;
	background:
		radial-gradient(ellipse 70% 80% at 0% 100%, rgba(255,255,255,.08), transparent 65%),
		radial-gradient(ellipse 50% 60% at 100% 0%, rgba(255,255,255,.05), transparent 55%),
		linear-gradient(180deg, transparent 40%, rgba(0,0,0,.25) 100%);
	pointer-events: none;
}
.features__hero::after {
	content: "";
	position: absolute;
	top: -40%;
	right: -20%;
	width: 60%;
	height: 80%;
	background: radial-gradient(circle, rgba(255,255,255,.04) 0%, transparent 70%);
	pointer-events: none;
}
.features__hero-title {
	position: relative;
	z-index: 1;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: clamp(1.5rem, 1.8vw + .75rem, 2.25rem);
	line-height: 1.1;
	letter-spacing: -.015em;
	margin-top: 14px;
	color: #fff;
}
.features__hero .h-eyebrow { color: var(--gold-soft); }
.features__item {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.06);
	border-radius: var(--r-lg);
	padding: 28px;
	transition: background var(--t-base), border-color var(--t-base), transform var(--t-base), box-shadow var(--t-base);
}
.features__item::before {
	content: "";
	position: absolute;
	inset: 0;
	opacity: .85;
	pointer-events: none;
	transition: opacity var(--t-base);
}
.features__item::after {
	content: "";
	position: absolute;
	top: -30%;
	right: -15%;
	width: 50%;
	height: 60%;
	background: radial-gradient(circle, rgba(255,255,255,.06) 0%, transparent 70%);
	pointer-events: none;
	opacity: 0;
	transition: opacity var(--t-base);
}
.features__item:nth-child(1)::before { background: linear-gradient(145deg, #2a2a2e 0%, #1a1a1d 100%); }
.features__item:nth-child(2)::before { background: linear-gradient(155deg, #242428 0%, #161619 100%); }
.features__item:nth-child(3)::before { background: linear-gradient(135deg, #1e1e22 0%, #28282c 100%); }
.features__item:nth-child(4)::before { background: linear-gradient(160deg, #202024 0%, #141417 100%); }
.features__item > * { position: relative; z-index: 1; }
.features__item:hover {
	border-color: rgba(255,255,255,.14);
	transform: translateY(-4px);
	box-shadow: 0 20px 48px rgba(0,0,0,.35);
}
.features__item:hover::after { opacity: 1; }
.features__icon {
	width: 48px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--r-md);
	background: rgba(255,255,255,.08);
	color: #fff;
	margin-bottom: 20px;
	transition: background var(--t-base), color var(--t-base);
	border: 1px solid rgba(255,255,255,.08);
}
.features__item:hover .features__icon { background: #fff; color: var(--ink); border-color: #fff; }
.features__item-title {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.125rem;
	color: #fff;
	margin: 0 0 8px;
}
.features__item-text { color: rgba(255,255,255,.65); font-size: 14px; line-height: 1.6; }

/* ==========================================================================
   Testimonials
   ========================================================================== */
.testimonials {
	background: var(--ink);
	color: #fff;
}
.testimonials .section-head__title { color: #fff; }
.testimonials .section-head__subtitle { color: rgba(255,255,255,.65); }
.testimonial-card {
	background: var(--ink-soft);
	border: 1px solid rgba(255,255,255,.06);
	color: rgba(255,255,255,.85);
	border-radius: var(--r-lg);
	padding: 28px;
	transition: border-color var(--t-base), transform var(--t-base), background var(--t-base);
}
.testimonial-card:hover {
	background: var(--graphite);
	border-color: rgba(255,255,255,.16);
	transform: translateY(-4px);
	box-shadow: 0 20px 40px rgba(0,0,0,.4);
}
.testimonial-card__text {
	font-size: 15px;
	line-height: 1.65;
	color: rgba(255,255,255,.85);
	margin-bottom: 20px;
}
.testimonial-card__name { color: #fff; font-weight: 600; font-size: 15px; }
.testimonial-card__country { color: rgba(255,255,255,.55); font-size: 13px; }
.testimonial-card > .flex { gap: 14px; }
.testimonial-card__avatar {
	width: 48px;
	height: 48px;
	border-radius: var(--r-pill);
	overflow: hidden;
	flex-shrink: 0;
	border: 1.5px solid rgba(255,255,255,.18);
	background: var(--graphite);
}
.testimonial-card__avatar img { width: 100%; height: 100%; object-fit: cover; }
.testimonial-card .star-rating,
.star-rating,
.testimonial-stars { color: #B89968 !important; }
.testimonial-card .star-rating i,
.star-rating i { text-shadow: 0 0 0.5px rgba(184,153,104,.45); }

/* ==========================================================================
   Single-product attribute items
   ========================================================================== */
.attr-item {
	display: flex;
	align-items: center;
	gap: 14px;
}
.attr-item__icon {
	width: 44px;
	height: 44px;
	border-radius: var(--r-md);
	background: #fff;
	border: 1px solid var(--line);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	color: var(--ink);
	font-size: 18px;
}
.attr-item__body { min-width: 0; }
.attr-item__label {
	color: var(--smoke);
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .08em;
	font-weight: 500;
	margin: 0 0 4px;
}
.attr-item__value {
	color: var(--ink);
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 17px;
	letter-spacing: -.005em;
	margin: 0;
}

/* ==========================================================================
   FAQ
   ========================================================================== */
.faq-list { border-top: 1px solid var(--line); }
.faq-item {
	border-bottom: 1px solid var(--line);
	padding: 20px 0;
	transition: padding var(--t-base);
}
.faq-item__btn {
	display: flex;
	width: 100%;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	background: transparent;
	border: 0;
	padding: 0;
	text-align: left;
	cursor: pointer;
}
.faq-item__question {
	font-family: var(--second-family);
	font-weight: 600;
	color: var(--ink);
	font-size: clamp(1rem, .5vw + .85rem, 1.25rem);
	line-height: 1.35;
	margin: 0;
}
.faq-item__icon {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--r-pill);
	color: var(--ink);
	border: 1.5px solid var(--ink);
	transition: transform var(--t-base), background var(--t-base), color var(--t-base);
	font-size: 11px;
}
.faq-item.is-open .faq-item__icon { background: var(--ink); color: var(--gold-soft); transform: rotate(180deg); }

.faq__answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height .42s var(--ease-out);
}
.faq__answer-inner {
	padding: 14px 0 4px;
	color: var(--smoke);
	font-size: 15px;
	line-height: 1.7;
	max-width: 70ch;
}

/* ==========================================================================
   Product cards
   ========================================================================== */
.product-card {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	overflow: hidden;
	box-shadow: none;
	transition: transform var(--t-base), box-shadow var(--t-base), border-color var(--t-base);
	display: flex;
	flex-direction: column;
	height: 100%;
}
.product-card > .p-5,
.product-card > .p-6,
.product-card > [class*="p-5"],
.product-card > [class*="p-6"] {
	flex: 1;
	display: flex;
	flex-direction: column;
	/* Extra bottom breathing room so the price + CTA arrow row sits comfortably
	   away from the card edge — and all cards line up to the same height. */
	padding-bottom: 24px !important;
}

/* Ensure the "price + arrow" group inside cards has space above (separates from
   the period tabs) and rests slightly lower from the card bottom edge. */
.product-card .mt-auto > div + div,
.product-card .mt-auto > div + .flex {
	margin-top: 12px;
}
.product-card .mt-auto .flex.items-end {
	padding-top: 4px;
}
/* Swiper / grid containers — stretch slides; clip overflow so cards never spill right. */
.products .swiper,
.freq .swiper,
.frequently-cars .swiper {
	overflow: hidden !important;
	width: 100%;
}
.products .swiper-wrapper,
.freq .swiper-wrapper,
.frequently-cars .swiper-wrapper { align-items: stretch; }
.products .swiper-slide,
.freq .swiper-slide,
.frequently-cars .swiper-slide,
.swiper-slide.product-slide,
.products-grid > * { height: auto; display: flex; align-items: stretch; }
.products .swiper-slide > *,
.freq .swiper-slide > *,
.frequently-cars .swiper-slide > * { width: 100%; display: flex; }
.product-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--shadow-md);
	border-color: var(--sand-300);
}
.product-card__image {
	display: block;
	position: relative;
	background: var(--sand-50);
	aspect-ratio: 4/3;
	height: auto !important;
	overflow: hidden;
}
.product-card__image > img {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	transition: transform 1s var(--ease-out);
}
.product-card:hover .product-card__image > img { transform: scale(1.04); }
.product-card__image .year-badge {
	position: absolute;
	bottom: 12px;
	right: 16px;
	color: #fff;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.5rem;
	letter-spacing: -.01em;
	text-shadow: 0 4px 16px rgba(0,0,0,.5);
}

.product-card__title {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.25rem;
	color: var(--ink);
	margin: 0 0 14px;
	letter-spacing: -.005em;
	min-height: 3.2em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.product-card__title a {
	color: inherit;
	text-decoration: none;
	background-image: linear-gradient(currentColor, currentColor);
	background-position: 0 100%;
	background-repeat: no-repeat;
	background-size: 0 1px;
	transition: background-size var(--t-base), color var(--t-fast);
}
.product-card__title a:hover {
	color: var(--ink);
	background-size: 100% 1px;
}
.product-card__title a:focus-visible {
	outline: 2px solid var(--ink);
	outline-offset: 3px;
	border-radius: 2px;
}

.product-card__price {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.5rem;
	color: var(--ink);
	letter-spacing: -.01em;
}
.product-card__cta {
	width: 44px;
	height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--r-pill);
	background: var(--ink);
	color: #fff;
	transition: background var(--t-base), transform var(--t-base);
}
.product-card__cta:hover { background: var(--gold); color: #fff; border-color: var(--gold); transform: translateX(3px); }

/* ==========================================================================
   Horizontal car card (archive list)
   ----------------------------------------------------------------------------
   Native CSS-grid layout that doesn't depend on Tailwind `md:` utilities — keeps
   image and content side-by-side at proper proportions and stacks cleanly on
   mobile. Image ≈ 42 %, content ≈ 58 % at ≥ 768 px.
   ========================================================================== */
.product-card.car-horizontal {
	display: grid;
	grid-template-columns: 1fr;
	height: auto;
	overflow: hidden;
}
@media (min-width: 768px) {
	.product-card.car-horizontal {
		grid-template-columns: minmax(0, 42%) minmax(0, 58%);
		align-items: stretch;
	}
}
.car-horizontal__media {
	position: relative;
	display: block;
	background: var(--sand-50);
	overflow: hidden;
	aspect-ratio: 4/3;
	height: auto !important;
	min-height: 240px;
}
@media (min-width: 768px) {
	.car-horizontal__media {
		aspect-ratio: auto;
		min-height: 320px;
		height: 100% !important;
	}
}
.car-horizontal__media img,
.car-horizontal__media .primary-image,
.car-horizontal__media .secondary-image {
	position: absolute !important;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	object-position: center center;
	transition: transform 1s var(--ease-out), opacity .35s var(--ease-out);
}
.product-card.car-horizontal:hover .car-horizontal__media .secondary-image { opacity: 1; }
.product-card.car-horizontal:hover .car-horizontal__media .primary-image { transform: scale(1.04); }
.car-horizontal__media .secondary-image { opacity: 0; }
.car-horizontal__media .year-badge {
	position: absolute;
	bottom: 14px;
	right: 18px;
	color: #fff;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.625rem;
	letter-spacing: -.01em;
	text-shadow: 0 4px 16px rgba(0,0,0,.5);
	z-index: 2;
}

.car-horizontal__body {
	display: flex;
	flex-direction: column;
	padding: 28px 28px 28px;
	gap: 20px;
	min-width: 0;
}
@media (min-width: 768px) {
	.car-horizontal__body { padding: 32px 36px; gap: 22px; }
}
.car-horizontal__header { min-width: 0; }
.car-horizontal__title {
	margin: 0 !important;
	font-size: 1.5rem !important;
	min-height: 0 !important;
	display: block !important;
	-webkit-line-clamp: unset !important;
	overflow: visible !important;
	line-height: 1.2;
	letter-spacing: -.01em;
}
@media (min-width: 768px) {
	.car-horizontal__title { font-size: 1.625rem !important; }
}

.car-horizontal__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	align-items: start;
	min-width: 0;
}
@media (min-width: 900px) {
	.car-horizontal__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 28px; }
}

.car-horizontal__pricing { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.car-horizontal__pricing .period-tabs { width: 100%; max-width: 100%; }
.car-horizontal .period-tabs--compact .tab-btn {
	padding: 9px 4px 11px;
	font-size: 10px;
	letter-spacing: .13em;
}
@media (min-width: 768px) {
	.car-horizontal .period-tabs--compact .tab-btn {
		font-size: 10.5px;
		padding: 10px 6px 12px;
		letter-spacing: .14em;
	}
}

.car-horizontal__price { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.car-horizontal__price-row {
	display: flex;
	align-items: baseline;
	gap: 8px;
	flex-wrap: wrap;
}
.car-horizontal__price-row .atr-oldprice { font-size: 13.5px; }
.car-horizontal__price-row .atr-oldprice__cur { font-size: 11px; margin-left: 2px; }
.car-horizontal__price-row .product-card__price { font-size: 1.75rem; line-height: 1; }
.car-horizontal__cur { font-size: 0.95rem; font-weight: 500; color: var(--smoke); }
.car-horizontal__period { font-size: 0.875rem; color: var(--smoke); }
.car-horizontal__daily { font-size: 0.825rem; color: var(--smoke); }

.car-horizontal__attrs {
	display: grid;
	grid-template-columns: max-content 1fr;
	gap: 8px 18px;
	margin: 0;
	font-size: 0.9375rem;
	color: var(--ink-soft);
	align-self: start;
	min-width: 0;
}
.car-horizontal__attrs dt {
	color: var(--smoke);
	font-weight: 500;
	margin: 0;
}
.car-horizontal__attrs dd {
	color: var(--ink);
	font-weight: 500;
	margin: 0;
	min-width: 0;
	word-wrap: break-word;
}

.car-horizontal__actions {
	display: flex;
	justify-content: flex-end;
	margin-top: auto;
	padding-top: 8px;
}
.car-horizontal__details {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 13px 28px;
	min-width: 168px;
	font-size: 14.5px;
	text-decoration: none !important;
	white-space: nowrap;
	border-radius: var(--r-md);
	transition: background var(--t-base), color var(--t-base), border-color var(--t-base), box-shadow var(--t-base), gap var(--t-fast);
}
.car-horizontal__details:hover { gap: 10px; }
.car-horizontal__details i {
	font-size: 11px;
	opacity: .55;
	transition: transform var(--t-fast), opacity var(--t-fast);
}
.car-horizontal__details:hover i {
	opacity: .85;
	transform: translateX(2px);
}

/* Card price block — unified layout for carousel + archive cards */
.card-price {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4px;
	min-width: 0;
}
.card-price__old {
	display: inline-block;
	align-self: flex-start;
	width: auto;
	max-width: 100%;
	font-size: 13px;
	line-height: 1.2;
	color: var(--mist);
	letter-spacing: .01em;
	text-decoration: none;
}
.card-price__old[hidden] { display: none !important; }
.card-price__main {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 6px;
	line-height: 1;
}
.card-price__amount {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.5rem;
	color: var(--ink);
	letter-spacing: -.01em;
}
.car-horizontal .card-price__amount { font-size: 1.75rem; }
.card-price__suffix {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	font-size: 14px;
	font-weight: 500;
	color: var(--smoke);
}
.card-price__daily {
	margin: 0;
	font-size: 12px;
	line-height: 1.35;
	color: var(--smoke);
}
.card-price__daily.is-hidden { display: none; }

/* Period tabs — luxury underline (Mercedes / RR style) */
.period-tabs {
	--period-active: 0;
	--period-count: 3;
	display: grid;
	grid-template-columns: repeat(var(--period-count, 3), minmax(0, 1fr));
	border: none;
	border-bottom: 1px solid var(--line-soft);
	border-radius: 0;
	padding: 0;
	gap: 0;
	background: transparent;
	max-width: 100%;
	width: 100%;
	position: relative;
	isolation: isolate;
}
.period-tabs::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -1px;
	width: calc(100% / var(--period-count, 3));
	height: 2px;
	background: var(--ink);
	transform: translateX(calc(var(--period-active, 0) * 100%));
	transition: transform 0.38s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 1;
}
.period-tabs .tab-btn {
	min-width: 0;
	padding: 11px 8px 13px;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: .14em;
	text-transform: uppercase;
	border-radius: 0;
	color: var(--mist);
	background: transparent;
	border: 0;
	transition: color var(--t-base);
	cursor: pointer;
	white-space: nowrap;
	text-align: center;
	overflow: hidden;
	text-overflow: ellipsis;
	position: relative;
	z-index: 0;
}
@media (min-width: 1024px) {
	.period-tabs .tab-btn {
		font-size: 11.5px;
		padding: 12px 10px 14px;
		letter-spacing: .15em;
	}
}
.period-tabs .tab-btn:hover:not(.tab-active) { color: var(--smoke); background: transparent; }
.period-tabs .tab-btn.tab-active {
	background: transparent !important;
	color: var(--ink) !important;
	font-weight: 600;
	box-shadow: none !important;
	background-image: none !important;
}
.period-tabs .tab-btn:focus-visible {
	outline: 2px solid var(--ink);
	outline-offset: 3px;
	z-index: 2;
}
@media (prefers-reduced-motion: reduce) {
	.period-tabs::after { transition: none; }
}

.tab-btn + .tab-btn { border-left: 0 !important; }

/* Old price strike — single line via main.css ::after pseudo */
.atr-oldprice {
	display: inline-block;
	width: auto;
	max-width: 100%;
	color: var(--mist);
	font-weight: 400;
	text-decoration: none !important;
}

/* Single product — separate bordered cards (not pill tabs) */
.cost .car-Card__prices {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	background: transparent;
	border: none;
	padding: 0;
	max-width: 100%;
	width: 100%;
}
.cost .car-Card__prices .car-Card__prices-period {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 14px 8px !important;
	border: 1px solid var(--line) !important;
	background: #fff !important;
	border-radius: var(--r-md) !important;
	min-width: 0;
	cursor: pointer;
	overflow: hidden;
	transition: border-color var(--t-fast), color var(--t-fast);
}
.cost .car-Card__prices-period-name {
	display: block;
	font-size: 10px !important;
	font-weight: 600;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--smoke);
	line-height: 1.2;
}
.cost .car-Card__prices-period-price {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	min-width: 0;
	width: 100%;
}
.cost .car-Card__prices-period-old {
	font-size: 10px;
	line-height: 1.2;
	opacity: .75;
	text-decoration: none !important;
}
.cost .car-Card__prices-period .js__aed {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: .95rem;
	line-height: 1.15;
	color: var(--ink);
	word-break: break-word;
}
.cost .car-Card__prices-period-price-per-day {
	font-size: 10px;
	color: var(--smoke);
	line-height: 1.2;
}
.cost .car-Card__prices-period:not(.car-Card__prices-period_active):hover {
	border-color: var(--sand-300) !important;
}
.cost .car-Card__prices-period.car-Card__prices-period_active {
	position: relative;
	border-color: var(--sand-300) !important;
	background: #fff !important;
	box-shadow: none !important;
}
.cost .car-Card__prices-period.car-Card__prices-period_active::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 3px;
	background: var(--ink);
	border-radius: 0;
	opacity: 1;
}
.cost .car-Card__prices-period.car-Card__prices-period_active .car-Card__prices-period-name { color: var(--smoke) !important; }
.cost .car-Card__prices-period.car-Card__prices-period_active .js__aed { color: var(--ink) !important; font-weight: 700; }
.cost .car-Card__prices-period.car-Card__prices-period_active .car-Card__prices-period-old { color: var(--mist) !important; opacity: 1; }
.cost .car-Card__prices-period.car-Card__prices-period_active .car-Card__prices-period-price-per-day { color: var(--smoke) !important; }

/* Carousel / archive period tabs (pill grid) */
.car-Card__prices.period-tabs .car-Card__prices-period {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 12px 6px !important;
	border: 0 !important;
	background: transparent !important;
	border-radius: var(--r-sm) !important;
	min-width: 0;
	cursor: pointer;
}
.car-Card__prices-period-name {
	display: block;
	font-size: 10px !important;
	font-weight: 600;
	letter-spacing: .07em;
	text-transform: uppercase;
	color: var(--smoke);
	line-height: 1.2;
}
.car-Card__prices-period-price {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	min-width: 0;
	width: 100%;
}
.car-Card__prices-period-old {
	font-size: 10px;
	line-height: 1.2;
	opacity: .8;
	text-decoration: none !important;
}
.car-Card__prices-period .js__aed {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: .95rem;
	line-height: 1.15;
	color: var(--ink);
	word-break: break-word;
}
.car-Card__prices-period-price-per-day {
	font-size: 10px;
	color: var(--smoke);
	line-height: 1.2;
}
.car-Card__prices.period-tabs .car-Card__prices-period.tab-active,
.car-Card__prices.period-tabs .car-Card__prices-period.car-Card__prices-period_active {
	background: var(--ink) !important;
}
.car-Card__prices.period-tabs .car-Card__prices-period.tab-active .car-Card__prices-period-name,
.car-Card__prices.period-tabs .car-Card__prices-period.car-Card__prices-period_active .car-Card__prices-period-name { color: rgba(255,255,255,.72) !important; }
.car-Card__prices.period-tabs .car-Card__prices-period.tab-active .js__aed,
.car-Card__prices.period-tabs .car-Card__prices-period.car-Card__prices-period_active .js__aed { color: #fff !important; }
.car-Card__prices.period-tabs .car-Card__prices-period.tab-active .car-Card__prices-period-old,
.car-Card__prices.period-tabs .car-Card__prices-period.car-Card__prices-period_active .car-Card__prices-period-old { color: rgba(255,255,255,.55) !important; }
.car-Card__prices.period-tabs .car-Card__prices-period.tab-active .car-Card__prices-period-price-per-day,
.car-Card__prices.period-tabs .car-Card__prices-period.car-Card__prices-period_active .car-Card__prices-period-price-per-day { color: rgba(255,255,255,.65) !important; }

/* ==========================================================================
   Brands slider
   ========================================================================== */
.brands {
	background: #fff;
	border-top: 1px solid var(--line-soft);
	border-bottom: 1px solid var(--line-soft);
}
.brands .swiper-wrapper { transition-timing-function: linear !important; }
.brands .swiper-slide { width: auto; height: auto; }
.brands .swiper-slide img {
	width: clamp(56px, 6vw, 96px);
	height: clamp(56px, 6vw, 96px);
	object-fit: contain;
}
.brands .swiper-slide a {
	filter: grayscale(100%);
	opacity: .55;
	transition: filter var(--t-base), opacity var(--t-base);
}
.brands .swiper-slide a:hover {
	filter: grayscale(0%);
	opacity: 1;
}

/* ==========================================================================
   News / blog cards
   ========================================================================== */
.post-card {
	background: #fff;
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	overflow: hidden;
	transition: transform var(--t-base), box-shadow var(--t-base), border-color var(--t-base);
}
.post-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--shadow-md);
	border-color: var(--sand-300);
}
.post-card__image {
	display: block;
	position: relative;
	overflow: hidden;
	aspect-ratio: 16/10;
	background: var(--sand-50);
}
.post-card__image img {
	width: 100%; height: 100%;
	object-fit: cover;
	transition: transform 1s var(--ease-out);
}
.post-card:hover .post-card__image img { transform: scale(1.04); }
.post-card__body { padding: 22px 24px 24px; }
.post-card__meta { font-size: 12px; color: var(--smoke); letter-spacing: .04em; text-transform: uppercase; }
.post-card__title {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.125rem;
	line-height: 1.3;
	margin: 8px 0 12px;
}
.post-card__title a { color: var(--ink); }
.post-card__title a:hover { color: var(--gold-strong); text-decoration: none; }
.post-card__excerpt { color: var(--smoke); font-size: 14.5px; line-height: 1.6; margin-bottom: 16px; }
.post-card__more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--ink);
	font-weight: 500;
	font-size: 14.5px;
	transition: color var(--t-fast), gap var(--t-fast);
}
.post-card__more:hover { color: var(--gold-strong); gap: 10px; text-decoration: none; }

/* ==========================================================================
   Text & Image block
   ========================================================================== */
.tandi {
	background: #fff;
}
.tandi:before { background: radial-gradient(circle at 30% 0%, rgba(10,10,10,.04), transparent 70%); }
.tandi__image-wrap {
	position: relative;
	border-radius: var(--r-lg);
	overflow: hidden;
	aspect-ratio: 4/3;
	background: var(--sand-100);
}
.tandi__image-wrap img {
	position: absolute; inset: 0;
	width: 100%; height: 100%;
	object-fit: cover;
}
.tandi .c-content { color: var(--smoke); line-height: 1.7; }
.tandi .flex.flex-wrap { gap: 12px; }

/* ==========================================================================
   Requirements block
   ========================================================================== */
.reqs__card {
	background: var(--sand-50);
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	padding: 28px;
	transition: border-color var(--t-base), transform var(--t-base);
}
.reqs__card:hover {
	border-color: var(--sand-300);
	transform: translateY(-3px);
}
.reqs__title {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.25rem;
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 18px;
	color: var(--ink);
}
.reqs__list { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.reqs__list li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	font-size: 14.5px;
	color: var(--ink-soft);
	line-height: 1.55;
}
.reqs__check {
	flex-shrink: 0;
	width: 22px; height: 22px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: var(--r-pill);
	background: var(--ink);
	color: var(--gold-soft);
	font-size: 10px;
	margin-top: 1px;
}
.reqs__title img { width: 1.75rem; height: 1.75rem; object-fit: contain; }
.reqs__card > a {
	gap: 6px;
	margin-top: 18px;
	font-weight: 500;
	color: var(--ink);
	border-bottom: 1.5px solid var(--gold);
	padding-bottom: 2px;
}
.reqs__card > a i { font-size: 11px; }

/* ==========================================================================
   SEO text section
   ========================================================================== */
.seo-section { background: var(--bg-soft); border-top: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.seo-content { color: var(--smoke); line-height: 1.75; max-height: none; overflow: visible; }

/* ==========================================================================
   Footer
   ========================================================================== */
.site-footer {
	background: var(--ink);
	color: rgba(255,255,255,.7);
}
.site-footer__heading {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1rem;
	letter-spacing: .04em;
	color: #fff;
	margin: 0 0 16px;
	text-transform: uppercase;
}
.site-footer a {
	color: rgba(255,255,255,.65);
	transition: color var(--t-fast);
	text-decoration: none;
}
.site-footer a:hover {
	color: rgba(255,255,255,.92);
	text-decoration: none;
}
.site-footer__main { padding-top: 72px; padding-bottom: 48px; }
.site-footer__grid { row-gap: 48px; }
.site-footer__links { list-style: none; padding: 0; margin: 0; }
.site-footer__address { line-height: 1.6; color: rgba(255,255,255,.7); }
.site-footer__map {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%;
	border-radius: var(--r-md);
	overflow: hidden;
	border: 1px solid rgba(255,255,255,.08);
}
.site-footer__contacts { padding-top: 24px; padding-bottom: 24px; }
.site-footer__contacts-row { gap: 24px; }
.site-footer__channels { gap: 24px; line-height: 1.6; }
.site-footer__socials { gap: 10px; }
.site-footer__bottom .container { padding-top: 18px; padding-bottom: 18px; }
.site-footer__map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	border: 0;
}
.site-footer__divider { border-top: 1px solid rgba(255,255,255,.08); }
.site-footer .accent { color: rgba(255,255,255,.78); }
.site-footer .accent:hover { color: #fff; text-decoration: none; }
.site-footer .social {
	width: 38px; height: 38px;
	display: inline-flex; align-items: center; justify-content: center;
	border-radius: var(--r-pill);
	border: 1px solid rgba(255,255,255,.12);
	color: rgba(255,255,255,.7);
	transition: border-color var(--t-base), background var(--t-base), color var(--t-base);
}
.site-footer .social:hover {
	border-color: rgba(255,255,255,.32);
	background: rgba(255,255,255,.1);
	color: #fff;
}
.site-footer__bottom {
	background: var(--bg-graphite);
	color: rgba(255,255,255,.55);
	font-size: 13px;
}

/* ==========================================================================
   Breadcrumbs
   ========================================================================== */
.breadcrumbs {
	background: var(--bg-soft);
	border-bottom: 1px solid var(--line-soft);
	padding: 14px 0;
}
.breadcrumbs__sep { margin: 0 8px; opacity: .45; }
.breadcrumbs a { color: var(--smoke); }
.breadcrumbs a:hover { color: var(--ink); text-decoration: none; }
.breadcrumbs [aria-current="page"] span { color: var(--ink); font-weight: 500; }

/* ==========================================================================
   Pagination
   ========================================================================== */
nav.inline-flex.rounded-md a,
nav.inline-flex.rounded-md a:hover,
.pagination-item,
.pagination-item:hover {
	text-decoration: none !important;
}
.pagination-item {
	min-width: 44px;
	padding: 10px 14px !important;
	border-color: var(--line) !important;
	color: var(--ink) !important;
	transition: background var(--t-fast), color var(--t-fast);
}
.pagination-item:hover { background: var(--sand-50) !important; }
.pagination-item.bg-gradient-to-r,
nav .px-4.py-2.bg-gradient-to-r {
	background: var(--ink) !important;
	color: #fff !important;
	border-color: var(--ink) !important;
	background-image: none !important;
}

/* ==========================================================================
   Booking modal
   ========================================================================== */
#booking-modal {
	border-radius: var(--r-lg) !important;
	max-width: 480px !important;
	width: 92vw !important;
	padding: 0 !important;
}
#booking-modal .booking-form {
	border-radius: var(--r-lg);
	padding: 36px 32px !important;
	background: #fff;
}
#booking-modal .cpopup__title {
	font-family: var(--second-family);
	font-weight: 600;
	color: var(--ink);
	font-size: 1.625rem;
	letter-spacing: -.015em;
	margin: 0 0 24px;
	text-align: center;
}
#booking-modal .cinput {
	display: block;
	margin-bottom: 18px;
}
#booking-modal .cinput__label {
	display: block;
	color: var(--smoke);
	font-weight: 600;
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: .08em;
	margin-bottom: 8px;
}
#booking-modal .cinput__field {
	display: block;
	width: 100%;
	border: 1px solid var(--line) !important;
	border-radius: var(--r-md) !important;
	background: #fff !important;
	padding: 14px 16px !important;
	font-size: 15px;
	color: var(--ink);
	line-height: 1.3;
	outline: none;
	box-shadow: none;
	transition: border-color var(--t-fast), box-shadow var(--t-fast);
	-webkit-appearance: none;
	appearance: none;
}
#booking-modal .cinput__field::placeholder { color: var(--mist); opacity: 1; }
#booking-modal .cinput__field:hover { border-color: var(--mist) !important; }
#booking-modal .cinput__field:focus,
#booking-modal .cinput__field:focus-visible {
	border-color: var(--ink) !important;
	box-shadow: 0 0 0 4px rgba(10,10,10,.06) !important;
	outline: none !important;
}
#booking-modal .cinput__field:required:invalid { box-shadow: none; }
#booking-modal .cinput__action { margin-top: 8px; }
#booking-modal .btn.btn--main,
#booking-modal .btn--main,
#booking-modal button.btn--main[type="submit"] {
	display: block;
	width: 100%;
	background: var(--ink) !important;
	background-image: none !important;
	color: #fff !important;
	border: 1px solid var(--ink) !important;
	border-radius: var(--r-md) !important;
	box-shadow: none !important;
	padding: 16px 24px !important;
	font-weight: 600;
	font-size: 15px;
	letter-spacing: .01em;
	cursor: pointer;
	transition: background var(--t-fast), box-shadow var(--t-fast);
}
#booking-modal .btn--main:hover {
	background: var(--ink-soft) !important;
	color: #fff !important;
	box-shadow: var(--shadow-md) !important;
}
/* Flatpickr inside the booking modal — premium monochrome */
.flatpickr-calendar { box-shadow: var(--shadow-lg); border-radius: var(--r-md); border: 1px solid var(--line); }
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover {
	background: var(--ink) !important;
	border-color: var(--ink) !important;
	color: #fff !important;
}
.flatpickr-day.inRange { background: var(--sand-100) !important; border-color: var(--sand-100) !important; box-shadow: -5px 0 0 var(--sand-100), 5px 0 0 var(--sand-100) !important; color: var(--ink) !important; }
.flatpickr-day:hover { background: var(--sand-100); }

/* ==========================================================================
   Gallery (single product)
   ========================================================================== */
.gallery__main .swiper-slide img {
	width: 100%;
	max-height: 540px;
	object-fit: cover;
	border-radius: var(--r-lg);
}
.gallery__main .swiper-button-next,
.gallery__main .swiper-button-prev {
	color: var(--ink);
	background: #fff;
	width: 44px;
	height: 44px;
	border-radius: var(--r-pill);
	box-shadow: 0 4px 16px rgba(10, 10, 10, .16);
	top: 50%;
	margin-top: 0;
	transform: translateY(-50%);
}
.gallery__main .swiper-button-prev { left: 16px; }
.gallery__main .swiper-button-next { right: 16px; }
.gallery__main .swiper-button-next:after,
.gallery__main .swiper-button-prev:after { font-size: 14px; font-weight: 700; }
.gallery__main .swiper-pagination { bottom: 14px; }
@media (min-width: 768px) {
	.gallery__main .swiper-button-next,
	.gallery__main .swiper-button-prev { display: flex; }
}
.gallery__track .swiper-slide {
	max-width: none;
	cursor: pointer;
	border-radius: var(--r-md);
	overflow: hidden;
	opacity: .65;
	transition: opacity var(--t-base);
}
.gallery__track .swiper-slide:hover,
.gallery__track .swiper-slide-thumb-active { opacity: 1; }
.gallery__track .swiper-slide img {
	border-radius: var(--r-md);
	height: 80px; object-fit: cover; width: 100%;
}
@media (min-width: 768px) {
	.gallery__track .swiper-slide img { height: 90px; }
}

/* Cost / sidebar */
.cost {
	background: var(--sand-50) !important;
	border: 1px solid var(--line);
	border-radius: var(--r-lg) !important;
	padding: 28px !important;
}
.cost-benefits { list-style: none; padding: 0; margin: 0; }
.cost-benefits__item { gap: 12px; margin-bottom: 10px; }
.cost__actions { display: grid; gap: 10px; }
.panel {
	background: var(--sand-50);
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	padding: 24px;
}
.section-head__title--sub { font-size: 1.5rem; }
.car-intro,
.car-stage { padding-bottom: 24px; }
.car-intro .section-head__title,
.catalog__title { margin: 0; }
.car-attrs { gap: 22px 28px; }
.section--soft { background: var(--bg-soft); }
.catalog__list { gap: 24px; }
.product-card__foot { gap: 12px; }
.pager { gap: 8px; }
.pager__link { padding: 8px 12px; text-decoration: none; }
.pager__link.is-current { font-weight: 700; }
.booking-modal,
.js-or-similar { display: none; }
.shop-sidebar { border-radius: var(--r-lg); }
.shop-sidebar__head {
	padding-bottom: 20px;
	border-bottom: 1px solid var(--line);
	margin-bottom: 16px;
}
.shop-sidebar__close {
	color: var(--ink);
	background: none;
	border: 0;
	font-size: 20px;
	cursor: pointer;
}
#filter-overlay { background: rgba(10, 10, 10, .55); }
.cost-benefits__check {
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--r-sm);
	background: linear-gradient(160deg, #fff 0%, var(--sand-50) 100%);
	border: 1px solid var(--sand-200);
	color: var(--graphite);
	font-size: 9px;
	margin-top: 1px;
	box-shadow: var(--shadow-xs);
	transition: border-color var(--t-fast), color var(--t-fast), box-shadow var(--t-fast), transform var(--t-fast);
}
.cost-benefits li:hover .cost-benefits__check {
	border-color: var(--sand-300);
	color: var(--ink);
	box-shadow: var(--shadow-sm);
	transform: translateY(-1px);
}
.cost .site-header__book {
	background: #fff;
}
.cost-benefits__link {
	color: var(--ink);
	font-weight: 500;
	text-decoration: underline;
	text-decoration-color: var(--sand-300);
	text-underline-offset: 3px;
	transition: color var(--t-fast), text-decoration-color var(--t-fast);
}
.cost-benefits__link:hover {
	color: var(--graphite);
	text-decoration-color: var(--ink);
}
.cost-benefits__item--deposit-free .cost-benefits__check {
	border-color: var(--sand-300);
	color: var(--ink);
}

/* DepositFree explainer (single product, after Required documents) */
.deposit-free {
	margin-top: 40px;
	padding: 28px 26px 26px;
	background: #fff;
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	box-shadow: var(--shadow-sm);
	scroll-margin-top: calc(var(--header-h) + 20px);
	outline: none;
}
.deposit-free:focus-visible {
	box-shadow: var(--shadow-sm), 0 0 0 2px var(--ink);
}
.deposit-free__title {
	font-size: 1.375rem;
	margin: 0 0 16px;
	line-height: 1.25;
}
.deposit-free__lead {
	margin: 0 0 22px;
	font-size: 15px;
	line-height: 1.65;
	color: var(--ink-soft);
	max-width: 62ch;
}
.deposit-free__subtitle {
	margin: 0 0 14px;
	font-family: var(--second-family);
	font-size: 1rem;
	font-weight: 600;
	color: var(--ink);
	letter-spacing: .01em;
}
.deposit-free__steps {
	list-style: none;
	margin: 0 0 22px;
	padding: 0;
	display: grid;
	gap: 14px;
}
.deposit-free__step {
	display: flex;
	gap: 14px;
	align-items: flex-start;
	padding: 16px 18px;
	background: var(--sand-50);
	border: 1px solid var(--line-soft);
	border-radius: var(--r-md);
}
.deposit-free__step-num {
	flex-shrink: 0;
	width: 28px;
	height: 28px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: var(--r-pill);
	background: var(--ink);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
	margin-top: 2px;
}
.deposit-free__step strong {
	display: block;
	margin-bottom: 6px;
	font-size: 14.5px;
	font-weight: 600;
	color: var(--ink);
	line-height: 1.35;
}
.deposit-free__step p {
	margin: 0;
	font-size: 14px;
	line-height: 1.6;
	color: var(--smoke);
}
.deposit-free__note {
	padding: 14px 16px;
	border-radius: var(--r-md);
	background: linear-gradient(180deg, #fff 0%, var(--sand-50) 100%);
	border: 1px solid var(--sand-200);
	border-left: 3px solid var(--graphite);
}
.deposit-free__note p {
	margin: 0;
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 13.5px;
	line-height: 1.6;
	color: var(--smoke);
}
.deposit-free__note-icon {
	flex-shrink: 0;
	line-height: 1.4;
}
@media (min-width: 768px) {
	.deposit-free {
		margin-top: 48px;
		padding: 32px 32px 28px;
	}
	.deposit-free__title { font-size: 1.5rem; }
}

/* Single product attribute block */
.single-product .c-content,
.single-product .prose { color: var(--ink-soft); }

/* ==========================================================================
   Filter sidebar (shop)
   ========================================================================== */
.shop-sidebar {
	background: var(--sand-50) !important;
	border: 1px solid var(--line);
}
@media (max-width: 1023.98px) {
	#filter-sidebar.shop-sidebar {
		top: var(--header-h);
		bottom: 0;
		height: auto;
		max-height: none;
		z-index: 50;
		padding-top: 20px;
	}
}
.shop-sidebar .widget_block + .widget_block { border-top-color: var(--line); }
.shop-sidebar__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1.125rem;
	color: var(--ink);
}
.shop-sidebar .widget_block .wp-block-heading,
.shop-sidebar .widget_block div.wp-block-heading {
	font-family: var(--second-family);
	font-weight: 600;
	font-size: 1rem;
	margin: 0 0 12px;
	color: var(--ink);
}

#filter-toggle {
	background: var(--sand-50);
	color: var(--smoke);
	border-color: var(--line);
	box-shadow: none;
	font-weight: 500;
}
#filter-toggle:hover {
	background: #fff;
	color: var(--ink);
	border-color: var(--sand-300);
	box-shadow: none;
	transform: none;
}
#filter-toggle i { opacity: .65; font-size: 12px; }

/* Sidebar always visible from lg — hide the mobile toggle */
@media (min-width: 1024px) {
	#filter-toggle {
		display: none !important;
	}
	#filter-sidebar.shop-sidebar {
		position: sticky;
		top: calc(var(--header-h, 72px) + 16px);
		align-self: flex-start;
		border-radius: var(--r-lg);
		transform: none;
	}
}

.shop-filters .widget_block .wp-block-heading { margin-bottom: 14px; }
.shop-filters .wc-block-attribute-filter-list {
	list-style: none;
	margin: 0;
	padding: 0 8px 0 0;
	display: grid;
	gap: 12px;
}
.shop-check {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	color: var(--ink-soft);
	font-size: 15px;
	line-height: 1.35;
	cursor: pointer;
}
.shop-check input {
	appearance: none;
	-webkit-appearance: none;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	margin: 1px 0 0;
	border: 1.5px solid #d4d4d8;
	border-radius: 3px;
	background: #fff;
	cursor: pointer;
}
.shop-check input:checked {
	background: var(--ink) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2' d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E") center / 14px 14px no-repeat;
	border-color: var(--ink);
}
.shop-price__slider {
	position: relative;
	height: 28px;
	margin: 4px 8px 14px;
}
.shop-price__rail,
.shop-price__fill {
	position: absolute;
	top: 12px;
	height: 3px;
	border-radius: 99px;
}
.shop-price__rail { left: 0; right: 0; background: #d4d4d8; }
.shop-price__fill { background: var(--ink); }
.shop-price__range {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 28px;
	margin: 0;
	background: none;
	pointer-events: none;
	-webkit-appearance: none;
	appearance: none;
}
.shop-price__range::-webkit-slider-runnable-track { height: 3px; background: transparent; }
.shop-price__range::-moz-range-track { height: 3px; background: transparent; border: 0; }
.shop-price__range::-webkit-slider-thumb {
	-webkit-appearance: none;
	pointer-events: auto;
	width: 18px;
	height: 18px;
	margin-top: -8px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--ink);
	box-shadow: 0 1px 2px rgba(0, 0, 0, .18);
	cursor: pointer;
}
.shop-price__range::-moz-range-thumb {
	pointer-events: auto;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #fff;
	border: 2px solid var(--ink);
	cursor: pointer;
}
.shop-price__fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}
.shop-price__box {
	display: block;
	width: 100%;
	box-sizing: border-box;
	border: 1.5px solid var(--ink);
	border-radius: 4px;
	background: #fff;
	color: var(--ink);
	font-weight: 600;
	font-size: 15px;
	padding: 8px 10px;
}
.shop-price__fields span {
	display: block;
	margin-top: 6px;
	font-size: 13px;
	color: var(--smoke);
}
.shop-price__reset { text-align: right; margin-top: 10px; }
.shop-price__reset button {
	background: none;
	border: 0;
	padding: 0;
	color: var(--ink);
	font-size: 14px;
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}
.shop-filters .c-btn { margin-top: 8px; }

/* ==========================================================================
   Slider nav buttons
   ========================================================================== */
.slider-m-mod .slider-nav,
.products.section .slider-nav,
.freq .slider-nav {
	margin-top: 36px;
}
.products.section { background: var(--bg-soft); }
.slider-nav { gap: 10px; }
.slider-nav__button {
	border-color: var(--line);
	color: var(--ink);
	background: #fff;
	transition: background var(--t-fast), color var(--t-fast), border-color var(--t-fast);
}
.slider-nav__button:hover {
	background: var(--ink);
	color: var(--gold-soft);
	border-color: var(--ink);
}

/* ==========================================================================
   Misc fixes
   ========================================================================== */
/* Hero layout typo fix (n-flex → flex) */
.chero .n-flex { display: flex; }
.chero .n-flex-col { flex-direction: column; }
.chero .n-items-center { align-items: center; }
@media (min-width: 1024px) {
	.chero .n-lg\:flex-row { flex-direction: row; }
}

/* Improve Flatpickr to match palette */
.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected:hover {
	background: var(--ink) !important;
	border-color: var(--ink) !important;
	color: #fff !important;
}
.flatpickr-day.inRange { background: var(--sand-100) !important; border-color: var(--sand-100) !important; color: var(--ink) !important; }

/* Range slider knobs */
.noUi-connect { background: var(--ink) !important; }
.noUi-handle { background: var(--ink) !important; border-color: #fff !important; }

/* Old gold text fallback */
.gold-text { color: var(--gold-strong); }

/* Smooth in/out for tab transitions */
.tab-btn { transition: background var(--t-fast), color var(--t-fast); }

/* Section transitions */
section, footer, header { transition: background var(--t-base); }

/* Form-container override (hero search) — structural wrapper only */
.form-container { box-shadow: none; background: transparent; }

/* Better focus outline */
:where(a, button, input, select, textarea):focus-visible {
	outline: 2px solid var(--gold);
	outline-offset: 2px;
}

/* Inline page article (page.php) */
.content-wrapper {
	box-shadow: none !important;
	border: 1px solid var(--line);
	border-radius: var(--r-lg) !important;
}

/* Back-to-top button restyle (created in JS) */
button[aria-label="Back to top"],
.back-to-top {
	background: var(--ink) !important;
	background-image: none !important;
	box-shadow: var(--shadow-md);
}

/* ==========================================================================
   Utility helpers (fallback for missing Tailwind classes)
   ========================================================================== */
.aspect-4-3 { aspect-ratio: 4/3; }
.aspect-16-9 { aspect-ratio: 16/9; }
.aspect-1-1 { aspect-ratio: 1/1; }
.screen-reader-text { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.line-clamp-2 {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.line-clamp-3 {
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.min-w-\[220px\] { min-width: 220px; }
.min-w-\[200px\] { min-width: 200px; }

@media (min-width: 1024px) {
	.lg\:flex { display: flex; }
}
@media (min-width: 768px) {
	.md\:flex-1 { flex: 1; }
	.md\:inline-flex { display: inline-flex; }
	.md\:items-center { align-items: center; }
	.md\:items-end { align-items: flex-end; }
	.md\:justify-between { justify-content: space-between; }
	.md\:w-auto { width: auto; }
}

/* Spacing utility fallbacks (in case compiled Tailwind misses them) */
.mb-10 { margin-bottom: 2.5rem; }
.mt-10 { margin-top: 2.5rem; }
.gap-10 { gap: 2.5rem; }
.gap-12 { gap: 3rem; }
@media (min-width: 768px) {
	.md\:mb-10 { margin-bottom: 2.5rem; }
	.md\:mt-10 { margin-top: 2.5rem; }
	.md\:gap-10 { gap: 2.5rem; }
	.md\:gap-12 { gap: 3rem; }
}
@media (min-width: 1024px) {
	.lg\:mb-10 { margin-bottom: 2.5rem; }
}

.divider {
	height: 1px;
	background: var(--line);
	margin: 16px 0;
}

.review-form {
	background: #fff;
	padding: 20px;
	margin: auto;
	width: 90%;
	border-radius: 10px;
	box-shadow: 0 0 10px rgba(0, 0, 0, .1);
}
.review-form__label { margin-bottom: 5px; display: block; text-align: left; }
.review-form__field { width: 90%; padding: 10px; margin-bottom: 10px; }
.review-form__submit {
	width: 90%;
	padding: 10px;
	background: #007bff;
	color: #fff;
	border: none;
	border-radius: 5px;
	cursor: pointer;
}
.contacts-map { border: 0; width: 100%; max-width: 700px; aspect-ratio: 1 / 1; }
.fleet-btn { background-color: #667078; }
.list-plain { list-style: none; }

.ink { color: var(--ink); }
.smoke { color: var(--smoke); }
.gold { color: var(--gold-strong); }

/* Print-friendly */
@media print {
	[data-reveal] { opacity: 1 !important; transform: none !important; }
	.site-header, .site-footer { background: #fff !important; color: #000 !important; }
}

/* ==========================================================================
   Mobile refinements
   ========================================================================== */
@media (max-width: 767px) {
	.section { padding: 56px 0; }
	.section-lg { padding: 64px 0; }
	.section-tight { padding: 40px 0; }
	.product-card__title { font-size: 1.125rem; }
	.product-card__price { font-size: 1.25rem; }
	.chero { padding-bottom: 8px; }
	.chero__image img { animation: none; }
}

/* Print/no-JS fallback */
.no-js [data-reveal] { opacity: 1 !important; transform: none !important; }
/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --color-red-600: oklch(57.7% 0.245 27.325);
    --color-red-700: oklch(50.5% 0.213 27.518);
    --color-red-900: oklch(39.6% 0.141 25.723);
    --color-orange-800: oklch(47% 0.157 37.304);
    --color-amber-400: oklch(82.8% 0.189 84.429);
    --color-amber-500: oklch(76.9% 0.188 70.08);
    --color-amber-600: oklch(66.6% 0.179 58.318);
    --color-amber-700: oklch(55.5% 0.163 48.998);
    --color-amber-800: oklch(47.3% 0.137 46.201);
    --color-amber-900: oklch(41.4% 0.112 45.904);
    --color-yellow-500: oklch(79.5% 0.184 86.047);
    --color-green-500: oklch(72.3% 0.219 149.579);
    --color-green-600: oklch(62.7% 0.194 149.214);
    --color-blue-500: oklch(62.3% 0.214 259.815);
    --color-purple-600: oklch(55.8% 0.288 302.321);
    --color-gray-50: oklch(98.5% 0.002 247.839);
    --color-gray-100: oklch(96.7% 0.003 264.542);
    --color-gray-200: oklch(92.8% 0.006 264.531);
    --color-gray-300: oklch(87.2% 0.01 258.338);
    --color-gray-400: oklch(70.7% 0.022 261.325);
    --color-gray-500: oklch(55.1% 0.027 264.364);
    --color-gray-600: oklch(44.6% 0.03 256.802);
    --color-gray-700: oklch(37.3% 0.034 259.733);
    --color-gray-800: oklch(27.8% 0.033 256.848);
    --color-gray-900: oklch(21% 0.034 264.665);
    --color-gray-950: oklch(13% 0.028 261.692);
    --color-black: #000;
    --color-white: #fff;
    --spacing: 0.25rem;
    --container-xs: 20rem;
    --container-sm: 24rem;
    --container-md: 28rem;
    --container-2xl: 42rem;
    --container-3xl: 48rem;
    --container-4xl: 56rem;
    --container-6xl: 72rem;
    --container-7xl: 80rem;
    --text-xs: 0.75rem;
    --text-xs--line-height: calc(1 / 0.75);
    --text-sm: 0.875rem;
    --text-sm--line-height: calc(1.25 / 0.875);
    --text-base: 1rem;
    --text-base--line-height: calc(1.5 / 1);
    --text-lg: 1.125rem;
    --text-lg--line-height: calc(1.75 / 1.125);
    --text-xl: 1.25rem;
    --text-xl--line-height: calc(1.75 / 1.25);
    --text-2xl: 1.5rem;
    --text-2xl--line-height: calc(2 / 1.5);
    --text-3xl: 1.875rem;
    --text-3xl--line-height: calc(2.25 / 1.875);
    --text-4xl: 2.25rem;
    --text-4xl--line-height: calc(2.5 / 2.25);
    --text-5xl: 3rem;
    --text-5xl--line-height: 1;
    --text-6xl: 3.75rem;
    --text-6xl--line-height: 1;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --tracking-wider: 0.05em;
    --leading-tight: 1.25;
    --radius-md: 0.375rem;
    --radius-lg: 0.5rem;
    --radius-xl: 0.75rem;
    --radius-3xl: 1.5rem;
    --ease-in: cubic-bezier(0.4, 0, 1, 1);
    --ease-out: cubic-bezier(0, 0, 0.2, 1);
    --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
    --default-transition-duration: 150ms;
    --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *, ::after, ::before, ::backdrop, ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html, :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b, strong {
    font-weight: bolder;
  }
  code, kbd, samp, pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol, ul, menu {
    list-style: none;
  }
  img, svg, video, canvas, audio, iframe, embed, object {
    display: block;
    vertical-align: middle;
  }
  img, video {
    max-width: 100%;
    height: auto;
  }
  button, input, select, optgroup, textarea, ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .pointer-events-auto {
    pointer-events: auto;
  }
  .pointer-events-none {
    pointer-events: none;
  }
  .collapse {
    visibility: collapse;
  }
  .invisible {
    visibility: hidden;
  }
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .not-sr-only {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip-path: none;
    white-space: normal;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .relative {
    position: relative;
  }
  .relative\! {
    position: relative !important;
  }
  .static {
    position: static;
  }
  .sticky {
    position: sticky;
  }
  .inset-0 {
    inset: calc(var(--spacing) * 0);
  }
  .inset-y-0 {
    inset-block: calc(var(--spacing) * 0);
  }
  .top-0 {
    top: calc(var(--spacing) * 0);
  }
  .top-4 {
    top: calc(var(--spacing) * 4);
  }
  .top-8 {
    top: calc(var(--spacing) * 8);
  }
  .top-24 {
    top: calc(var(--spacing) * 24);
  }
  .right-0 {
    right: calc(var(--spacing) * 0);
  }
  .right-1 {
    right: calc(var(--spacing) * 1);
  }
  .right-6 {
    right: calc(var(--spacing) * 6);
  }
  .bottom-1 {
    bottom: calc(var(--spacing) * 1);
  }
  .bottom-6 {
    bottom: calc(var(--spacing) * 6);
  }
  .left-0 {
    left: calc(var(--spacing) * 0);
  }
  .left-4 {
    left: calc(var(--spacing) * 4);
  }
  .isolate {
    isolation: isolate;
  }
  .isolation-auto {
    isolation: auto;
  }
  .z-10 {
    z-index: 10;
  }
  .z-20 {
    z-index: 20;
  }
  .z-30 {
    z-index: 30;
  }
  .z-40 {
    z-index: 40;
  }
  .z-50 {
    z-index: 50;
  }
  .col-4 {
    grid-column: 4;
  }
  .col-5 {
    grid-column: 5;
  }
  .col-7 {
    grid-column: 7;
  }
  .col-12 {
    grid-column: 12;
  }
  .col-span-2 {
    grid-column: span 2 / span 2;
  }
  .col-span-3 {
    grid-column: span 3 / span 3;
  }
  .col-span-4 {
    grid-column: span 4 / span 4;
  }
  .float-end {
    float: inline-end;
  }
  .float-left {
    float: left;
  }
  .float-none {
    float: none;
  }
  .float-right {
    float: right;
  }
  .float-start {
    float: inline-start;
  }
  .clear-both {
    clear: both;
  }
  .clear-end {
    clear: inline-end;
  }
  .clear-left {
    clear: left;
  }
  .clear-none {
    clear: none;
  }
  .clear-right {
    clear: right;
  }
  .clear-start {
    clear: inline-start;
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .-mx-4 {
    margin-inline: calc(var(--spacing) * -4);
  }
  .mx-1 {
    margin-inline: calc(var(--spacing) * 1);
  }
  .mx-auto {
    margin-inline: auto;
  }
  .my-12 {
    margin-block: calc(var(--spacing) * 12);
  }
  .me-2\.5 {
    margin-inline-end: calc(var(--spacing) * 2.5);
  }
  .mt-1 {
    margin-top: calc(var(--spacing) * 1);
  }
  .mt-2 {
    margin-top: calc(var(--spacing) * 2);
  }
  .mt-3 {
    margin-top: calc(var(--spacing) * 3);
  }
  .mt-4 {
    margin-top: calc(var(--spacing) * 4);
  }
  .mt-8 {
    margin-top: calc(var(--spacing) * 8);
  }
  .mt-10 {
    margin-top: calc(var(--spacing) * 10);
  }
  .mt-12 {
    margin-top: calc(var(--spacing) * 12);
  }
  .mt-24 {
    margin-top: calc(var(--spacing) * 24);
  }
  .mt-28 {
    margin-top: calc(var(--spacing) * 28);
  }
  .mt-auto {
    margin-top: auto;
  }
  .mr-1 {
    margin-right: calc(var(--spacing) * 1);
  }
  .mr-2 {
    margin-right: calc(var(--spacing) * 2);
  }
  .mr-3 {
    margin-right: calc(var(--spacing) * 3);
  }
  .mr-4 {
    margin-right: calc(var(--spacing) * 4);
  }
  .mb-1 {
    margin-bottom: calc(var(--spacing) * 1);
  }
  .mb-2 {
    margin-bottom: calc(var(--spacing) * 2);
  }
  .mb-3 {
    margin-bottom: calc(var(--spacing) * 3);
  }
  .mb-4 {
    margin-bottom: calc(var(--spacing) * 4);
  }
  .mb-5 {
    margin-bottom: calc(var(--spacing) * 5);
  }
  .mb-6 {
    margin-bottom: calc(var(--spacing) * 6);
  }
  .mb-7 {
    margin-bottom: calc(var(--spacing) * 7);
  }
  .mb-8 {
    margin-bottom: calc(var(--spacing) * 8);
  }
  .mb-12 {
    margin-bottom: calc(var(--spacing) * 12);
  }
  .mb-24 {
    margin-bottom: calc(var(--spacing) * 24);
  }
  .mb-32 {
    margin-bottom: calc(var(--spacing) * 32);
  }
  .ml-1 {
    margin-left: calc(var(--spacing) * 1);
  }
  .ml-2 {
    margin-left: calc(var(--spacing) * 2);
  }
  .ml-4 {
    margin-left: calc(var(--spacing) * 4);
  }
  .box-border {
    box-sizing: border-box;
  }
  .box-content {
    box-sizing: content-box;
  }
  .line-clamp-2 {
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
  }
  .line-clamp-none {
    overflow: visible;
    display: block;
    -webkit-box-orient: horizontal;
    -webkit-line-clamp: unset;
  }
  .block {
    display: block;
  }
  .contents {
    display: contents;
  }
  .flex {
    display: flex;
  }
  .flow-root {
    display: flow-root;
  }
  .grid {
    display: grid;
  }
  .grid\! {
    display: grid !important;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .inline-block {
    display: inline-block;
  }
  .inline-flex {
    display: inline-flex;
  }
  .inline-grid {
    display: inline-grid;
  }
  .inline-table {
    display: inline-table;
  }
  .list-item {
    display: list-item;
  }
  .table {
    display: table;
  }
  .table-caption {
    display: table-caption;
  }
  .table-cell {
    display: table-cell;
  }
  .table-column {
    display: table-column;
  }
  .table-column-group {
    display: table-column-group;
  }
  .table-footer-group {
    display: table-footer-group;
  }
  .table-header-group {
    display: table-header-group;
  }
  .table-row {
    display: table-row;
  }
  .table-row-group {
    display: table-row-group;
  }
  .h-3 {
    height: calc(var(--spacing) * 3);
  }
  .h-3\.5 {
    height: calc(var(--spacing) * 3.5);
  }
  .h-4 {
    height: calc(var(--spacing) * 4);
  }
  .h-5 {
    height: calc(var(--spacing) * 5);
  }
  .h-6 {
    height: calc(var(--spacing) * 6);
  }
  .h-8 {
    height: calc(var(--spacing) * 8);
  }
  .h-12 {
    height: calc(var(--spacing) * 12);
  }
  .h-20 {
    height: calc(var(--spacing) * 20);
  }
  .h-56 {
    height: calc(var(--spacing) * 56);
  }
  .h-64 {
    height: calc(var(--spacing) * 64);
  }
  .h-96 {
    height: calc(var(--spacing) * 96);
  }
  .h-full {
    height: 100%;
  }
  .min-h-\[44px\] {
    min-height: 44px;
  }
  .min-h-\[46px\] {
    min-height: 46px;
  }
  .min-h-\[200px\] {
    min-height: 200px;
  }
  .w-1\/2 {
    width: calc(1/2 * 100%);
  }
  .w-3 {
    width: calc(var(--spacing) * 3);
  }
  .w-3\.5 {
    width: calc(var(--spacing) * 3.5);
  }
  .w-4 {
    width: calc(var(--spacing) * 4);
  }
  .w-4\/5 {
    width: calc(4/5 * 100%);
  }
  .w-5 {
    width: calc(var(--spacing) * 5);
  }
  .w-5\/6 {
    width: calc(5/6 * 100%);
  }
  .w-6 {
    width: calc(var(--spacing) * 6);
  }
  .w-8 {
    width: calc(var(--spacing) * 8);
  }
  .w-12 {
    width: calc(var(--spacing) * 12);
  }
  .w-20 {
    width: calc(var(--spacing) * 20);
  }
  .w-auto {
    width: auto;
  }
  .w-full {
    width: 100%;
  }
  .max-w-2xl {
    max-width: var(--container-2xl);
  }
  .max-w-3xl {
    max-width: var(--container-3xl);
  }
  .max-w-4xl {
    max-width: var(--container-4xl);
  }
  .max-w-6xl {
    max-width: var(--container-6xl);
  }
  .max-w-7xl {
    max-width: var(--container-7xl);
  }
  .max-w-md {
    max-width: var(--container-md);
  }
  .max-w-none {
    max-width: none;
  }
  .max-w-sm {
    max-width: var(--container-sm);
  }
  .max-w-xs {
    max-width: var(--container-xs);
  }
  .min-w-\[200px\] {
    min-width: 200px;
  }
  .flex-1 {
    flex: 1;
  }
  .flex-shrink {
    flex-shrink: 1;
  }
  .flex-shrink-0 {
    flex-shrink: 0;
  }
  .shrink {
    flex-shrink: 1;
  }
  .flex-grow {
    flex-grow: 1;
  }
  .grow {
    flex-grow: 1;
  }
  .table-auto {
    table-layout: auto;
  }
  .table-fixed {
    table-layout: fixed;
  }
  .caption-bottom {
    caption-side: bottom;
  }
  .caption-top {
    caption-side: top;
  }
  .border-collapse {
    border-collapse: collapse;
  }
  .border-separate {
    border-collapse: separate;
  }
  .-translate-x-full {
    --tw-translate-x: -100%;
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .translate-y-1 {
    --tw-translate-y: calc(var(--spacing) * 1);
    translate: var(--tw-translate-x) var(--tw-translate-y);
  }
  .rotate-90 {
    rotate: 90deg;
  }
  .rotate-180 {
    rotate: 180deg;
  }
  .rotate-270 {
    rotate: 270deg;
  }
  .transform {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .transform-cpu {
    transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .transform-gpu {
    transform: translateZ(0) var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
  }
  .transform-none {
    transform: none;
  }
  .cursor-not-allowed {
    cursor: not-allowed;
  }
  .cursor-pointer {
    cursor: pointer;
  }
  .touch-pan-left {
    --tw-pan-x: pan-left;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .touch-pan-right {
    --tw-pan-x: pan-right;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .touch-pan-x {
    --tw-pan-x: pan-x;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .touch-pan-down {
    --tw-pan-y: pan-down;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .touch-pan-up {
    --tw-pan-y: pan-up;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .touch-pan-y {
    --tw-pan-y: pan-y;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .touch-pinch-zoom {
    --tw-pinch-zoom: pinch-zoom;
    touch-action: var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,);
  }
  .touch-auto {
    touch-action: auto;
  }
  .touch-manipulation {
    touch-action: manipulation;
  }
  .touch-none {
    touch-action: none;
  }
  .resize {
    resize: both;
  }
  .resize-none {
    resize: none;
  }
  .resize-x {
    resize: horizontal;
  }
  .resize-y {
    resize: vertical;
  }
  .snap-both {
    scroll-snap-type: both var(--tw-scroll-snap-strictness);
  }
  .snap-none {
    scroll-snap-type: none;
  }
  .snap-x {
    scroll-snap-type: x var(--tw-scroll-snap-strictness);
  }
  .snap-y {
    scroll-snap-type: y var(--tw-scroll-snap-strictness);
  }
  .snap-mandatory {
    --tw-scroll-snap-strictness: mandatory;
  }
  .snap-proximity {
    --tw-scroll-snap-strictness: proximity;
  }
  .snap-align-none {
    scroll-snap-align: none;
  }
  .snap-center {
    scroll-snap-align: center;
  }
  .snap-end {
    scroll-snap-align: end;
  }
  .snap-start {
    scroll-snap-align: start;
  }
  .snap-always {
    scroll-snap-stop: always;
  }
  .snap-normal {
    scroll-snap-stop: normal;
  }
  .list-inside {
    list-style-position: inside;
  }
  .list-outside {
    list-style-position: outside;
  }
  .appearance-auto {
    appearance: auto;
  }
  .appearance-none {
    appearance: none;
  }
  .break-before-all {
    break-before: all;
  }
  .break-before-auto {
    break-before: auto;
  }
  .break-before-avoid {
    break-before: avoid;
  }
  .break-before-avoid-page {
    break-before: avoid-page;
  }
  .break-before-column {
    break-before: column;
  }
  .break-before-left {
    break-before: left;
  }
  .break-before-page {
    break-before: page;
  }
  .break-before-right {
    break-before: right;
  }
  .break-inside-auto {
    break-inside: auto;
  }
  .break-inside-avoid {
    break-inside: avoid;
  }
  .break-inside-avoid-column {
    break-inside: avoid-column;
  }
  .break-inside-avoid-page {
    break-inside: avoid-page;
  }
  .break-after-all {
    break-after: all;
  }
  .break-after-auto {
    break-after: auto;
  }
  .break-after-avoid {
    break-after: avoid;
  }
  .break-after-avoid-page {
    break-after: avoid-page;
  }
  .break-after-column {
    break-after: column;
  }
  .break-after-left {
    break-after: left;
  }
  .break-after-page {
    break-after: page;
  }
  .break-after-right {
    break-after: right;
  }
  .grid-flow-col {
    grid-auto-flow: column;
  }
  .grid-flow-col-dense {
    grid-auto-flow: column dense;
  }
  .grid-flow-dense {
    grid-auto-flow: dense;
  }
  .grid-flow-row {
    grid-auto-flow: row;
  }
  .grid-flow-row-dense {
    grid-auto-flow: row dense;
  }
  .grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
  .grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .grid-cols-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .flex-col {
    flex-direction: column;
  }
  .flex-col-reverse {
    flex-direction: column-reverse;
  }
  .flex-row {
    flex-direction: row;
  }
  .flex-row-reverse {
    flex-direction: row-reverse;
  }
  .flex-nowrap {
    flex-wrap: nowrap;
  }
  .flex-wrap {
    flex-wrap: wrap;
  }
  .flex-wrap-reverse {
    flex-wrap: wrap-reverse;
  }
  .place-content-around {
    place-content: space-around;
  }
  .place-content-baseline {
    place-content: baseline;
  }
  .place-content-between {
    place-content: space-between;
  }
  .place-content-center {
    place-content: center;
  }
  .place-content-end {
    place-content: end;
  }
  .place-content-evenly {
    place-content: space-evenly;
  }
  .place-content-start {
    place-content: start;
  }
  .place-content-stretch {
    place-content: stretch;
  }
  .place-items-baseline {
    place-items: baseline;
  }
  .place-items-center {
    place-items: center;
  }
  .place-items-end {
    place-items: end;
  }
  .place-items-start {
    place-items: start;
  }
  .place-items-stretch {
    place-items: stretch;
  }
  .content-around {
    align-content: space-around;
  }
  .content-baseline {
    align-content: baseline;
  }
  .content-between {
    align-content: space-between;
  }
  .content-center {
    align-content: center;
  }
  .content-end {
    align-content: flex-end;
  }
  .content-evenly {
    align-content: space-evenly;
  }
  .content-normal {
    align-content: normal;
  }
  .content-start {
    align-content: flex-start;
  }
  .content-stretch {
    align-content: stretch;
  }
  .items-baseline {
    align-items: baseline;
  }
  .items-center {
    align-items: center;
  }
  .items-end {
    align-items: flex-end;
  }
  .items-start {
    align-items: flex-start;
  }
  .items-stretch {
    align-items: stretch;
  }
  .justify-around {
    justify-content: space-around;
  }
  .justify-between {
    justify-content: space-between;
  }
  .justify-center {
    justify-content: center;
  }
  .justify-end {
    justify-content: flex-end;
  }
  .justify-evenly {
    justify-content: space-evenly;
  }
  .justify-normal {
    justify-content: normal;
  }
  .justify-start {
    justify-content: flex-start;
  }
  .justify-stretch {
    justify-content: stretch;
  }
  .justify-items-center {
    justify-items: center;
  }
  .justify-items-end {
    justify-items: end;
  }
  .justify-items-start {
    justify-items: start;
  }
  .justify-items-stretch {
    justify-items: stretch;
  }
  .gap-1 {
    gap: calc(var(--spacing) * 1);
  }
  .gap-2 {
    gap: calc(var(--spacing) * 2);
  }
  .gap-3 {
    gap: calc(var(--spacing) * 3);
  }
  .gap-4 {
    gap: calc(var(--spacing) * 4);
  }
  .gap-5 {
    gap: calc(var(--spacing) * 5);
  }
  .gap-6 {
    gap: calc(var(--spacing) * 6);
  }
  .gap-8 {
    gap: calc(var(--spacing) * 8);
  }
  .space-y-1 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-2 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-3 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-4 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-6 {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 0;
      margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
      margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
    }
  }
  .space-y-reverse {
    :where(& > :not(:last-child)) {
      --tw-space-y-reverse: 1;
    }
  }
  .gap-x-4 {
    column-gap: calc(var(--spacing) * 4);
  }
  .space-x-2 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 2) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .space-x-3 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 3) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .space-x-4 {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 0;
      margin-inline-start: calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));
      margin-inline-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)));
    }
  }
  .space-x-reverse {
    :where(& > :not(:last-child)) {
      --tw-space-x-reverse: 1;
    }
  }
  .gap-y-1 {
    row-gap: calc(var(--spacing) * 1);
  }
  .gap-y-3 {
    row-gap: calc(var(--spacing) * 3);
  }
  .divide-x {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 0;
      border-inline-style: var(--tw-border-style);
      border-inline-start-width: calc(1px * var(--tw-divide-x-reverse));
      border-inline-end-width: calc(1px * calc(1 - var(--tw-divide-x-reverse)));
    }
  }
  .divide-y {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 0;
      border-bottom-style: var(--tw-border-style);
      border-top-style: var(--tw-border-style);
      border-top-width: calc(1px * var(--tw-divide-y-reverse));
      border-bottom-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    }
  }
  .divide-y-reverse {
    :where(& > :not(:last-child)) {
      --tw-divide-y-reverse: 1;
    }
  }
  .divide-dashed {
    :where(& > :not(:last-child)) {
      --tw-border-style: dashed;
      border-style: dashed;
    }
  }
  .divide-dotted {
    :where(& > :not(:last-child)) {
      --tw-border-style: dotted;
      border-style: dotted;
    }
  }
  .divide-double {
    :where(& > :not(:last-child)) {
      --tw-border-style: double;
      border-style: double;
    }
  }
  .divide-none {
    :where(& > :not(:last-child)) {
      --tw-border-style: none;
      border-style: none;
    }
  }
  .divide-solid {
    :where(& > :not(:last-child)) {
      --tw-border-style: solid;
      border-style: solid;
    }
  }
  .place-self-auto {
    place-self: auto;
  }
  .place-self-center {
    place-self: center;
  }
  .place-self-end {
    place-self: end;
  }
  .place-self-start {
    place-self: start;
  }
  .place-self-stretch {
    place-self: stretch;
  }
  .self-auto {
    align-self: auto;
  }
  .self-baseline {
    align-self: baseline;
  }
  .self-center {
    align-self: center;
  }
  .self-end {
    align-self: flex-end;
  }
  .self-start {
    align-self: flex-start;
  }
  .self-stretch {
    align-self: stretch;
  }
  .justify-self-auto {
    justify-self: auto;
  }
  .justify-self-center {
    justify-self: center;
  }
  .justify-self-end {
    justify-self: flex-end;
  }
  .justify-self-start {
    justify-self: flex-start;
  }
  .justify-self-stretch {
    justify-self: stretch;
  }
  .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .overflow-auto {
    overflow: auto;
  }
  .overflow-clip {
    overflow: clip;
  }
  .overflow-hidden {
    overflow: hidden;
  }
  .overflow-scroll {
    overflow: scroll;
  }
  .overflow-visible {
    overflow: visible;
  }
  .overflow-x-auto {
    overflow-x: auto;
  }
  .overflow-x-clip {
    overflow-x: clip;
  }
  .overflow-x-hidden {
    overflow-x: hidden;
  }
  .overflow-x-scroll {
    overflow-x: scroll;
  }
  .overflow-x-visible {
    overflow-x: visible;
  }
  .overflow-y-auto {
    overflow-y: auto;
  }
  .overflow-y-clip {
    overflow-y: clip;
  }
  .overflow-y-hidden {
    overflow-y: hidden;
  }
  .overflow-y-scroll {
    overflow-y: scroll;
  }
  .overflow-y-visible {
    overflow-y: visible;
  }
  .overscroll-auto {
    overscroll-behavior: auto;
  }
  .overscroll-contain {
    overscroll-behavior: contain;
  }
  .overscroll-none {
    overscroll-behavior: none;
  }
  .overscroll-x-auto {
    overscroll-behavior-x: auto;
  }
  .overscroll-x-contain {
    overscroll-behavior-x: contain;
  }
  .overscroll-x-none {
    overscroll-behavior-x: none;
  }
  .overscroll-y-auto {
    overscroll-behavior-y: auto;
  }
  .overscroll-y-contain {
    overscroll-behavior-y: contain;
  }
  .overscroll-y-none {
    overscroll-behavior-y: none;
  }
  .scroll-auto {
    scroll-behavior: auto;
  }
  .scroll-smooth {
    scroll-behavior: smooth;
  }
  .rounded {
    border-radius: 0.25rem;
  }
  .rounded-3xl {
    border-radius: var(--radius-3xl);
  }
  .rounded-full {
    border-radius: calc(infinity * 1px);
  }
  .rounded-md {
    border-radius: var(--radius-md);
  }
  .rounded-xl {
    border-radius: var(--radius-xl);
  }
  .rounded-s {
    border-start-start-radius: 0.25rem;
    border-end-start-radius: 0.25rem;
  }
  .rounded-ss {
    border-start-start-radius: 0.25rem;
  }
  .rounded-e {
    border-start-end-radius: 0.25rem;
    border-end-end-radius: 0.25rem;
  }
  .rounded-se {
    border-start-end-radius: 0.25rem;
  }
  .rounded-ee {
    border-end-end-radius: 0.25rem;
  }
  .rounded-es {
    border-end-start-radius: 0.25rem;
  }
  .rounded-t {
    border-top-left-radius: 0.25rem;
    border-top-right-radius: 0.25rem;
  }
  .rounded-l {
    border-top-left-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-l-md {
    border-top-left-radius: var(--radius-md);
    border-bottom-left-radius: var(--radius-md);
  }
  .rounded-tl {
    border-top-left-radius: 0.25rem;
  }
  .rounded-r {
    border-top-right-radius: 0.25rem;
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-r-lg {
    border-top-right-radius: var(--radius-lg);
    border-bottom-right-radius: var(--radius-lg);
  }
  .rounded-r-md {
    border-top-right-radius: var(--radius-md);
    border-bottom-right-radius: var(--radius-md);
  }
  .rounded-tr {
    border-top-right-radius: 0.25rem;
  }
  .rounded-b {
    border-bottom-right-radius: 0.25rem;
    border-bottom-left-radius: 0.25rem;
  }
  .rounded-br {
    border-bottom-right-radius: 0.25rem;
  }
  .rounded-bl {
    border-bottom-left-radius: 0.25rem;
  }
  .border {
    border-style: var(--tw-border-style);
    border-width: 1px;
  }
  .border-2 {
    border-style: var(--tw-border-style);
    border-width: 2px;
  }
  .border-x {
    border-inline-style: var(--tw-border-style);
    border-inline-width: 1px;
  }
  .border-y {
    border-block-style: var(--tw-border-style);
    border-block-width: 1px;
  }
  .border-s {
    border-inline-start-style: var(--tw-border-style);
    border-inline-start-width: 1px;
  }
  .border-e {
    border-inline-end-style: var(--tw-border-style);
    border-inline-end-width: 1px;
  }
  .border-t {
    border-top-style: var(--tw-border-style);
    border-top-width: 1px;
  }
  .border-r {
    border-right-style: var(--tw-border-style);
    border-right-width: 1px;
  }
  .border-r-0 {
    border-right-style: var(--tw-border-style);
    border-right-width: 0px;
  }
  .border-b {
    border-bottom-style: var(--tw-border-style);
    border-bottom-width: 1px;
  }
  .border-l {
    border-left-style: var(--tw-border-style);
    border-left-width: 1px;
  }
  .border-dashed {
    --tw-border-style: dashed;
    border-style: dashed;
  }
  .border-dotted {
    --tw-border-style: dotted;
    border-style: dotted;
  }
  .border-double {
    --tw-border-style: double;
    border-style: double;
  }
  .border-hidden {
    --tw-border-style: hidden;
    border-style: hidden;
  }
  .border-none {
    --tw-border-style: none;
    border-style: none;
  }
  .border-solid {
    --tw-border-style: solid;
    border-style: solid;
  }
  .border-amber-500 {
    border-color: var(--color-amber-500);
  }
  .border-amber-700 {
    border-color: var(--color-amber-700);
  }
  .border-gray-200 {
    border-color: var(--color-gray-200);
  }
  .border-gray-300 {
    border-color: var(--color-gray-300);
  }
  .border-gray-400 {
    border-color: var(--color-gray-400);
  }
  .border-gray-800 {
    border-color: var(--color-gray-800);
  }
  .bg-amber-600 {
    background-color: var(--color-amber-600);
  }
  .bg-amber-700 {
    background-color: var(--color-amber-700);
  }
  .bg-black {
    background-color: var(--color-black);
  }
  .bg-gray-50 {
    background-color: var(--color-gray-50);
  }
  .bg-gray-100 {
    background-color: var(--color-gray-100);
  }
  .bg-gray-200 {
    background-color: var(--color-gray-200);
  }
  .bg-gray-200\/70 {
    background-color: color-mix(in srgb, oklch(92.8% 0.006 264.531) 70%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      background-color: color-mix(in oklab, var(--color-gray-200) 70%, transparent);
    }
  }
  .bg-gray-300 {
    background-color: var(--color-gray-300);
  }
  .bg-gray-800 {
    background-color: var(--color-gray-800);
  }
  .bg-gray-900 {
    background-color: var(--color-gray-900);
  }
  .bg-gray-950 {
    background-color: var(--color-gray-950);
  }
  .bg-green-500 {
    background-color: var(--color-green-500);
  }
  .bg-red-600 {
    background-color: var(--color-red-600);
  }
  .bg-white {
    background-color: var(--color-white);
  }
  .bg-gradient-to-br {
    --tw-gradient-position: to bottom right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-l {
    --tw-gradient-position: to left in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .bg-gradient-to-r {
    --tw-gradient-position: to right in oklab;
    background-image: linear-gradient(var(--tw-gradient-stops));
  }
  .from-amber-700 {
    --tw-gradient-from: var(--color-amber-700);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-amber-700\/90 {
    --tw-gradient-from: color-mix(in srgb, oklch(55.5% 0.163 48.998) 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-amber-700) 90%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-amber-900\/90 {
    --tw-gradient-from: color-mix(in srgb, oklch(41.4% 0.112 45.904) 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-from: color-mix(in oklab, var(--color-amber-900) 90%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-blue-500 {
    --tw-gradient-from: var(--color-blue-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .from-green-500 {
    --tw-gradient-from: var(--color-green-500);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-amber-600 {
    --tw-gradient-to: var(--color-amber-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-green-600\/60 {
    --tw-gradient-to: color-mix(in srgb, oklch(62.7% 0.194 149.214) 60%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-green-600) 60%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-purple-600 {
    --tw-gradient-to: var(--color-purple-600);
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-red-700\/80 {
    --tw-gradient-to: color-mix(in srgb, oklch(50.5% 0.213 27.518) 80%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-red-700) 80%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .to-red-900\/90 {
    --tw-gradient-to: color-mix(in srgb, oklch(39.6% 0.141 25.723) 90%, transparent);
    @supports (color: color-mix(in lab, red, red)) {
      --tw-gradient-to: color-mix(in oklab, var(--color-red-900) 90%, transparent);
    }
    --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
  }
  .box-decoration-clone {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  .box-decoration-slice {
    -webkit-box-decoration-break: slice;
    box-decoration-break: slice;
  }
  .decoration-clone {
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
  }
  .decoration-slice {
    -webkit-box-decoration-break: slice;
    box-decoration-break: slice;
  }
  .bg-fixed {
    background-attachment: fixed;
  }
  .bg-local {
    background-attachment: local;
  }
  .bg-scroll {
    background-attachment: scroll;
  }
  .bg-clip-border {
    background-clip: border-box;
  }
  .bg-clip-content {
    background-clip: content-box;
  }
  .bg-clip-padding {
    background-clip: padding-box;
  }
  .bg-clip-text {
    background-clip: text;
  }
  .bg-no-repeat {
    background-repeat: no-repeat;
  }
  .bg-repeat {
    background-repeat: repeat;
  }
  .bg-repeat-round {
    background-repeat: round;
  }
  .bg-repeat-space {
    background-repeat: space;
  }
  .bg-repeat-x {
    background-repeat: repeat-x;
  }
  .bg-repeat-y {
    background-repeat: repeat-y;
  }
  .bg-origin-border {
    background-origin: border-box;
  }
  .bg-origin-content {
    background-origin: content-box;
  }
  .bg-origin-padding {
    background-origin: padding-box;
  }
  .mask-repeat {
    mask-repeat: repeat;
  }
  .object-contain {
    object-fit: contain;
  }
  .object-cover {
    object-fit: cover;
  }
  .object-fill {
    object-fit: fill;
  }
  .object-none {
    object-fit: none;
  }
  .object-scale-down {
    object-fit: scale-down;
  }
  .p-3 {
    padding: calc(var(--spacing) * 3);
  }
  .p-4 {
    padding: calc(var(--spacing) * 4);
  }
  .p-5 {
    padding: calc(var(--spacing) * 5);
  }
  .p-6 {
    padding: calc(var(--spacing) * 6);
  }
  .px-1 {
    padding-inline: calc(var(--spacing) * 1);
  }
  .px-2 {
    padding-inline: calc(var(--spacing) * 2);
  }
  .px-3 {
    padding-inline: calc(var(--spacing) * 3);
  }
  .px-4 {
    padding-inline: calc(var(--spacing) * 4);
  }
  .px-6 {
    padding-inline: calc(var(--spacing) * 6);
  }
  .px-8 {
    padding-inline: calc(var(--spacing) * 8);
  }
  .py-1 {
    padding-block: calc(var(--spacing) * 1);
  }
  .py-2 {
    padding-block: calc(var(--spacing) * 2);
  }
  .py-3 {
    padding-block: calc(var(--spacing) * 3);
  }
  .py-4 {
    padding-block: calc(var(--spacing) * 4);
  }
  .py-6 {
    padding-block: calc(var(--spacing) * 6);
  }
  .py-8 {
    padding-block: calc(var(--spacing) * 8);
  }
  .py-10 {
    padding-block: calc(var(--spacing) * 10);
  }
  .py-12 {
    padding-block: calc(var(--spacing) * 12);
  }
  .py-16 {
    padding-block: calc(var(--spacing) * 16);
  }
  .pt-1 {
    padding-top: calc(var(--spacing) * 1);
  }
  .pt-2 {
    padding-top: calc(var(--spacing) * 2);
  }
  .pt-4 {
    padding-top: calc(var(--spacing) * 4);
  }
  .pt-12 {
    padding-top: calc(var(--spacing) * 12);
  }
  .pb-1 {
    padding-bottom: calc(var(--spacing) * 1);
  }
  .pb-2 {
    padding-bottom: calc(var(--spacing) * 2);
  }
  .pb-3 {
    padding-bottom: calc(var(--spacing) * 3);
  }
  .pb-4 {
    padding-bottom: calc(var(--spacing) * 4);
  }
  .pb-5 {
    padding-bottom: calc(var(--spacing) * 5);
  }
  .pb-6 {
    padding-bottom: calc(var(--spacing) * 6);
  }
  .pb-70 {
    padding-bottom: calc(var(--spacing) * 70);
  }
  .pb-\[23px\] {
    padding-bottom: 23px;
  }
  .pl-4 {
    padding-left: calc(var(--spacing) * 4);
  }
  .text-center {
    text-align: center;
  }
  .text-end {
    text-align: end;
  }
  .text-justify {
    text-align: justify;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .text-start {
    text-align: start;
  }
  .align-baseline {
    vertical-align: baseline;
  }
  .align-bottom {
    vertical-align: bottom;
  }
  .align-middle {
    vertical-align: middle;
  }
  .align-sub {
    vertical-align: sub;
  }
  .align-super {
    vertical-align: super;
  }
  .align-text-bottom {
    vertical-align: text-bottom;
  }
  .align-text-top {
    vertical-align: text-top;
  }
  .align-top {
    vertical-align: top;
  }
  .font-sans {
    font-family: var(--font-sans);
  }
  .text-2xl {
    font-size: var(--text-2xl);
    line-height: var(--tw-leading, var(--text-2xl--line-height));
  }
  .text-3xl {
    font-size: var(--text-3xl);
    line-height: var(--tw-leading, var(--text-3xl--line-height));
  }
  .text-base {
    font-size: var(--text-base);
    line-height: var(--tw-leading, var(--text-base--line-height));
  }
  .text-lg {
    font-size: var(--text-lg);
    line-height: var(--tw-leading, var(--text-lg--line-height));
  }
  .text-lg\/6 {
    font-size: var(--text-lg);
    line-height: calc(var(--spacing) * 6);
  }
  .text-sm {
    font-size: var(--text-sm);
    line-height: var(--tw-leading, var(--text-sm--line-height));
  }
  .text-sm\/6 {
    font-size: var(--text-sm);
    line-height: calc(var(--spacing) * 6);
  }
  .text-xl {
    font-size: var(--text-xl);
    line-height: var(--tw-leading, var(--text-xl--line-height));
  }
  .text-xs {
    font-size: var(--text-xs);
    line-height: var(--tw-leading, var(--text-xs--line-height));
  }
  .leading-tight {
    --tw-leading: var(--leading-tight);
    line-height: var(--leading-tight);
  }
  .font-bold {
    --tw-font-weight: var(--font-weight-bold);
    font-weight: var(--font-weight-bold);
  }
  .font-medium {
    --tw-font-weight: var(--font-weight-medium);
    font-weight: var(--font-weight-medium);
  }
  .font-semibold {
    --tw-font-weight: var(--font-weight-semibold);
    font-weight: var(--font-weight-semibold);
  }
  .tracking-wider {
    --tw-tracking: var(--tracking-wider);
    letter-spacing: var(--tracking-wider);
  }
  .text-balance {
    text-wrap: balance;
  }
  .text-nowrap {
    text-wrap: nowrap;
  }
  .text-pretty {
    text-wrap: pretty;
  }
  .text-wrap {
    text-wrap: wrap;
  }
  .break-normal {
    overflow-wrap: normal;
    word-break: normal;
  }
  .break-words {
    overflow-wrap: break-word;
  }
  .break-all {
    word-break: break-all;
  }
  .break-keep {
    word-break: keep-all;
  }
  .overflow-ellipsis {
    text-overflow: ellipsis;
  }
  .text-clip {
    text-overflow: clip;
  }
  .text-ellipsis {
    text-overflow: ellipsis;
  }
  .hyphens-auto {
    -webkit-hyphens: auto;
    hyphens: auto;
  }
  .hyphens-manual {
    -webkit-hyphens: manual;
    hyphens: manual;
  }
  .hyphens-none {
    -webkit-hyphens: none;
    hyphens: none;
  }
  .whitespace-break-spaces {
    white-space: break-spaces;
  }
  .whitespace-normal {
    white-space: normal;
  }
  .whitespace-nowrap {
    white-space: nowrap;
  }
  .whitespace-pre {
    white-space: pre;
  }
  .whitespace-pre-line {
    white-space: pre-line;
  }
  .whitespace-pre-wrap {
    white-space: pre-wrap;
  }
  .text-amber-500 {
    color: var(--color-amber-500);
  }
  .text-amber-700 {
    color: var(--color-amber-700);
  }
  .text-gray-300 {
    color: var(--color-gray-300);
  }
  .text-gray-400 {
    color: var(--color-gray-400);
  }
  .text-gray-500 {
    color: var(--color-gray-500);
  }
  .text-gray-600 {
    color: var(--color-gray-600);
  }
  .text-gray-700 {
    color: var(--color-gray-700);
  }
  .text-gray-800 {
    color: var(--color-gray-800);
  }
  .text-gray-900 {
    color: var(--color-gray-900);
  }
  .text-white {
    color: var(--color-white);
  }
  .capitalize {
    text-transform: capitalize;
  }
  .lowercase {
    text-transform: lowercase;
  }
  .normal-case {
    text-transform: none;
  }
  .uppercase {
    text-transform: uppercase;
  }
  .italic {
    font-style: italic;
  }
  .not-italic {
    font-style: normal;
  }
  .diagonal-fractions {
    --tw-numeric-fraction: diagonal-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .lining-nums {
    --tw-numeric-figure: lining-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .oldstyle-nums {
    --tw-numeric-figure: oldstyle-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .ordinal {
    --tw-ordinal: ordinal;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .proportional-nums {
    --tw-numeric-spacing: proportional-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .slashed-zero {
    --tw-slashed-zero: slashed-zero;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .stacked-fractions {
    --tw-numeric-fraction: stacked-fractions;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .tabular-nums {
    --tw-numeric-spacing: tabular-nums;
    font-variant-numeric: var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);
  }
  .normal-nums {
    font-variant-numeric: normal;
  }
  .line-through {
    text-decoration-line: line-through;
  }
  .no-underline {
    text-decoration-line: none;
  }
  .overline {
    text-decoration-line: overline;
  }
  .underline {
    text-decoration-line: underline;
  }
  .decoration-dashed {
    text-decoration-style: dashed;
  }
  .decoration-dotted {
    text-decoration-style: dotted;
  }
  .decoration-double {
    text-decoration-style: double;
  }
  .decoration-solid {
    text-decoration-style: solid;
  }
  .decoration-wavy {
    text-decoration-style: wavy;
  }
  .antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .subpixel-antialiased {
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
  }
  .opacity-0 {
    opacity: 0%;
  }
  .opacity-40 {
    opacity: 40%;
  }
  .opacity-50 {
    opacity: 50%;
  }
  .opacity-70 {
    opacity: 70%;
  }
  .opacity-80 {
    opacity: 80%;
  }
  .opacity-90 {
    opacity: 90%;
  }
  .bg-blend-color {
    background-blend-mode: color;
  }
  .bg-blend-color-burn {
    background-blend-mode: color-burn;
  }
  .bg-blend-color-dodge {
    background-blend-mode: color-dodge;
  }
  .bg-blend-darken {
    background-blend-mode: darken;
  }
  .bg-blend-difference {
    background-blend-mode: difference;
  }
  .bg-blend-exclusion {
    background-blend-mode: exclusion;
  }
  .bg-blend-hard-light {
    background-blend-mode: hard-light;
  }
  .bg-blend-hue {
    background-blend-mode: hue;
  }
  .bg-blend-lighten {
    background-blend-mode: lighten;
  }
  .bg-blend-luminosity {
    background-blend-mode: luminosity;
  }
  .bg-blend-multiply {
    background-blend-mode: multiply;
  }
  .bg-blend-normal {
    background-blend-mode: normal;
  }
  .bg-blend-overlay {
    background-blend-mode: overlay;
  }
  .bg-blend-saturation {
    background-blend-mode: saturation;
  }
  .bg-blend-screen {
    background-blend-mode: screen;
  }
  .bg-blend-soft-light {
    background-blend-mode: soft-light;
  }
  .mix-blend-color {
    mix-blend-mode: color;
  }
  .mix-blend-color-burn {
    mix-blend-mode: color-burn;
  }
  .mix-blend-color-dodge {
    mix-blend-mode: color-dodge;
  }
  .mix-blend-darken {
    mix-blend-mode: darken;
  }
  .mix-blend-difference {
    mix-blend-mode: difference;
  }
  .mix-blend-exclusion {
    mix-blend-mode: exclusion;
  }
  .mix-blend-hard-light {
    mix-blend-mode: hard-light;
  }
  .mix-blend-hue {
    mix-blend-mode: hue;
  }
  .mix-blend-lighten {
    mix-blend-mode: lighten;
  }
  .mix-blend-luminosity {
    mix-blend-mode: luminosity;
  }
  .mix-blend-multiply {
    mix-blend-mode: multiply;
  }
  .mix-blend-normal {
    mix-blend-mode: normal;
  }
  .mix-blend-overlay {
    mix-blend-mode: overlay;
  }
  .mix-blend-plus-darker {
    mix-blend-mode: plus-darker;
  }
  .mix-blend-plus-lighter {
    mix-blend-mode: plus-lighter;
  }
  .mix-blend-saturation {
    mix-blend-mode: saturation;
  }
  .mix-blend-screen {
    mix-blend-mode: screen;
  }
  .mix-blend-soft-light {
    mix-blend-mode: soft-light;
  }
  .shadow {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-lg {
    --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-md {
    --tw-shadow: 0 4px 6px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 2px 4px -2px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .shadow-sm {
    --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
  .outline {
    outline-style: var(--tw-outline-style);
    outline-width: 1px;
  }
  .blur {
    --tw-blur: blur(8px);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .drop-shadow {
    --tw-drop-shadow-size: drop-shadow(0 1px 2px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.1))) drop-shadow(0 1px 1px var(--tw-drop-shadow-color, rgb(0 0 0 / 0.06)));
    --tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow( 0 1px 1px rgb(0 0 0 / 0.06));
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .grayscale {
    --tw-grayscale: grayscale(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .invert {
    --tw-invert: invert(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .sepia {
    --tw-sepia: sepia(100%);
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter {
    filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
  }
  .filter-none {
    filter: none;
  }
  .backdrop-blur {
    --tw-backdrop-blur: blur(8px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-grayscale {
    --tw-backdrop-grayscale: grayscale(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-invert {
    --tw-backdrop-invert: invert(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-sepia {
    --tw-backdrop-sepia: sepia(100%);
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-filter {
    -webkit-backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
    backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
  }
  .backdrop-filter-none {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  .transition {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, content-visibility, overlay, pointer-events;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-all {
    transition-property: all;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-colors {
    transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-opacity {
    transition-property: opacity;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-shadow {
    transition-property: box-shadow;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .transition-transform {
    transition-property: transform, translate, scale, rotate;
    transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
    transition-duration: var(--tw-duration, var(--default-transition-duration));
  }
  .duration-200 {
    --tw-duration: 200ms;
    transition-duration: 200ms;
  }
  .duration-300 {
    --tw-duration: 300ms;
    transition-duration: 300ms;
  }
  .duration-500 {
    --tw-duration: 500ms;
    transition-duration: 500ms;
  }
  .ease-in {
    --tw-ease: var(--ease-in);
    transition-timing-function: var(--ease-in);
  }
  .ease-in-out {
    --tw-ease: var(--ease-in-out);
    transition-timing-function: var(--ease-in-out);
  }
  .ease-out {
    --tw-ease: var(--ease-out);
    transition-timing-function: var(--ease-out);
  }
  .contain-inline-size {
    --tw-contain-size: inline-size;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-layout {
    --tw-contain-layout: layout;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-paint {
    --tw-contain-paint: paint;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-size {
    --tw-contain-size: size;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-style {
    --tw-contain-style: style;
    contain: var(--tw-contain-size,) var(--tw-contain-layout,) var(--tw-contain-paint,) var(--tw-contain-style,);
  }
  .contain-content {
    contain: content;
  }
  .contain-none {
    contain: none;
  }
  .contain-strict {
    contain: strict;
  }
  .forced-color-adjust-auto {
    forced-color-adjust: auto;
  }
  .forced-color-adjust-none {
    forced-color-adjust: none;
  }
  .outline-dashed {
    --tw-outline-style: dashed;
    outline-style: dashed;
  }
  .outline-dotted {
    --tw-outline-style: dotted;
    outline-style: dotted;
  }
  .outline-double {
    --tw-outline-style: double;
    outline-style: double;
  }
  .outline-none {
    --tw-outline-style: none;
    outline-style: none;
  }
  .select-all {
    -webkit-user-select: all;
    user-select: all;
  }
  .select-auto {
    -webkit-user-select: auto;
    user-select: auto;
  }
  .select-none {
    -webkit-user-select: none;
    user-select: none;
  }
  .select-text {
    -webkit-user-select: text;
    user-select: text;
  }
  .backface-hidden {
    backface-visibility: hidden;
  }
  .divide-x-reverse {
    :where(& > :not(:last-child)) {
      --tw-divide-x-reverse: 1;
    }
  }
  .ring-inset {
    --tw-ring-inset: inset;
  }
  .group-hover\:text-amber-700 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-amber-700);
      }
    }
  }
  .group-hover\:text-current {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: currentcolor;
      }
    }
  }
  .group-hover\:text-gray-900 {
    &:is(:where(.group):hover *) {
      @media (hover: hover) {
        color: var(--color-gray-900);
      }
    }
  }
  .hover\:scale-105 {
    &:hover {
      @media (hover: hover) {
        --tw-scale-x: 105%;
        --tw-scale-y: 105%;
        --tw-scale-z: 105%;
        scale: var(--tw-scale-x) var(--tw-scale-y);
      }
    }
  }
  .hover\:border-amber-500 {
    &:hover {
      @media (hover: hover) {
        border-color: var(--color-amber-500);
      }
    }
  }
  .hover\:bg-amber-600 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-600);
      }
    }
  }
  .hover\:bg-amber-700 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-amber-700);
      }
    }
  }
  .hover\:bg-gray-50 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-50);
      }
    }
  }
  .hover\:bg-gray-100 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-100);
      }
    }
  }
  .hover\:bg-gray-200 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-200);
      }
    }
  }
  .hover\:bg-gray-300 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-gray-300);
      }
    }
  }
  .hover\:bg-green-600 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-green-600);
      }
    }
  }
  .hover\:bg-orange-800 {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-orange-800);
      }
    }
  }
  .hover\:bg-white {
    &:hover {
      @media (hover: hover) {
        background-color: var(--color-white);
      }
    }
  }
  .hover\:bg-gradient-to-r {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-position: to right in oklab;
        background-image: linear-gradient(var(--tw-gradient-stops));
      }
    }
  }
  .hover\:from-amber-600 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-from: var(--color-amber-600);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:from-amber-700\/90 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-from: color-mix(in srgb, oklch(55.5% 0.163 48.998) 90%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-gradient-from: color-mix(in oklab, var(--color-amber-700) 90%, transparent);
        }
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:to-amber-700 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-to: var(--color-amber-700);
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:to-red-700\/80 {
    &:hover {
      @media (hover: hover) {
        --tw-gradient-to: color-mix(in srgb, oklch(50.5% 0.213 27.518) 80%, transparent);
        @supports (color: color-mix(in lab, red, red)) {
          --tw-gradient-to: color-mix(in oklab, var(--color-red-700) 80%, transparent);
        }
        --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
      }
    }
  }
  .hover\:text-amber-400 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-amber-400);
      }
    }
  }
  .hover\:text-amber-500 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-amber-500);
      }
    }
  }
  .hover\:text-amber-700 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-amber-700);
      }
    }
  }
  .hover\:text-amber-800 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-amber-800);
      }
    }
  }
  .hover\:text-gray-300 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-gray-300);
      }
    }
  }
  .hover\:text-gray-900 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-gray-900);
      }
    }
  }
  .hover\:text-white {
    &:hover {
      @media (hover: hover) {
        color: var(--color-white);
      }
    }
  }
  .hover\:text-yellow-500 {
    &:hover {
      @media (hover: hover) {
        color: var(--color-yellow-500);
      }
    }
  }
  .hover\:opacity-100 {
    &:hover {
      @media (hover: hover) {
        opacity: 100%;
      }
    }
  }
  .hover\:shadow-lg {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 10px 15px -3px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 4px 6px -4px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .hover\:shadow-xl {
    &:hover {
      @media (hover: hover) {
        --tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
      }
    }
  }
  .focus\:border-transparent {
    &:focus {
      border-color: transparent;
    }
  }
  .focus\:ring-2 {
    &:focus {
      --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .focus\:ring-amber-400 {
    &:focus {
      --tw-ring-color: var(--color-amber-400);
    }
  }
  .focus\:outline-none {
    &:focus {
      --tw-outline-style: none;
      outline-style: none;
    }
  }
  .sm\:mb-3 {
    @media (width >= 40rem) {
      margin-bottom: calc(var(--spacing) * 3);
    }
  }
  .sm\:mb-8 {
    @media (width >= 40rem) {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }
  .sm\:w-2\/3 {
    @media (width >= 40rem) {
      width: calc(2/3 * 100%);
    }
  }
  .sm\:flex-row {
    @media (width >= 40rem) {
      flex-direction: row;
    }
  }
  .sm\:py-16 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 16);
    }
  }
  .sm\:py-24 {
    @media (width >= 40rem) {
      padding-block: calc(var(--spacing) * 24);
    }
  }
  .sm\:text-3xl {
    @media (width >= 40rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .sm\:text-4xl {
    @media (width >= 40rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .sm\:text-lg {
    @media (width >= 40rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .sm\:text-sm {
    @media (width >= 40rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .md\:col-span-2 {
    @media (width >= 48rem) {
      grid-column: span 2 / span 2;
    }
  }
  .md\:mt-0 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .md\:mt-5 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 5);
    }
  }
  .md\:mt-6 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 6);
    }
  }
  .md\:mt-12 {
    @media (width >= 48rem) {
      margin-top: calc(var(--spacing) * 12);
    }
  }
  .md\:mr-4 {
    @media (width >= 48rem) {
      margin-right: calc(var(--spacing) * 4);
    }
  }
  .md\:mb-0 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }
  .md\:mb-2 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 2);
    }
  }
  .md\:mb-4 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 4);
    }
  }
  .md\:mb-5 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 5);
    }
  }
  .md\:mb-6 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 6);
    }
  }
  .md\:mb-8 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }
  .md\:mb-10 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 10);
    }
  }
  .md\:mb-12 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 12);
    }
  }
  .md\:mb-16 {
    @media (width >= 48rem) {
      margin-bottom: calc(var(--spacing) * 16);
    }
  }
  .md\:block {
    @media (width >= 48rem) {
      display: block;
    }
  }
  .md\:flex {
    @media (width >= 48rem) {
      display: flex;
    }
  }
  .md\:hidden {
    @media (width >= 48rem) {
      display: none;
    }
  }
  .md\:inline {
    @media (width >= 48rem) {
      display: inline;
    }
  }
  .md\:h-auto {
    @media (width >= 48rem) {
      height: auto;
    }
  }
  .md\:w-1\/2 {
    @media (width >= 48rem) {
      width: calc(1/2 * 100%);
    }
  }
  .md\:w-1\/3 {
    @media (width >= 48rem) {
      width: calc(1/3 * 100%);
    }
  }
  .md\:w-2\/3 {
    @media (width >= 48rem) {
      width: calc(2/3 * 100%);
    }
  }
  .md\:w-2\/5 {
    @media (width >= 48rem) {
      width: calc(2/5 * 100%);
    }
  }
  .md\:w-3\/5 {
    @media (width >= 48rem) {
      width: calc(3/5 * 100%);
    }
  }
  .md\:w-auto {
    @media (width >= 48rem) {
      width: auto;
    }
  }
  .md\:grid-cols-2 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-3 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .md\:grid-cols-10 {
    @media (width >= 48rem) {
      grid-template-columns: repeat(10, minmax(0, 1fr));
    }
  }
  .md\:flex-row {
    @media (width >= 48rem) {
      flex-direction: row;
    }
  }
  .md\:items-start {
    @media (width >= 48rem) {
      align-items: flex-start;
    }
  }
  .md\:justify-between {
    @media (width >= 48rem) {
      justify-content: space-between;
    }
  }
  .md\:justify-end {
    @media (width >= 48rem) {
      justify-content: flex-end;
    }
  }
  .md\:gap-0 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 0);
    }
  }
  .md\:gap-2 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 2);
    }
  }
  .md\:gap-6 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 6);
    }
  }
  .md\:gap-8 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 8);
    }
  }
  .md\:gap-12 {
    @media (width >= 48rem) {
      gap: calc(var(--spacing) * 12);
    }
  }
  .md\:space-y-3 {
    @media (width >= 48rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .md\:space-y-4 {
    @media (width >= 48rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .md\:space-y-6 {
    @media (width >= 48rem) {
      :where(& > :not(:last-child)) {
        --tw-space-y-reverse: 0;
        margin-block-start: calc(calc(var(--spacing) * 6) * var(--tw-space-y-reverse));
        margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
      }
    }
  }
  .md\:overflow-hidden {
    @media (width >= 48rem) {
      overflow: hidden;
    }
  }
  .md\:rounded-full {
    @media (width >= 48rem) {
      border-radius: calc(infinity * 1px);
    }
  }
  .md\:border-r {
    @media (width >= 48rem) {
      border-right-style: var(--tw-border-style);
      border-right-width: 1px;
    }
  }
  .md\:p-6 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 6);
    }
  }
  .md\:p-8 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .md\:p-10 {
    @media (width >= 48rem) {
      padding: calc(var(--spacing) * 10);
    }
  }
  .md\:py-6 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 6);
    }
  }
  .md\:py-8 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 8);
    }
  }
  .md\:py-12 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 12);
    }
  }
  .md\:py-20 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 20);
    }
  }
  .md\:py-32 {
    @media (width >= 48rem) {
      padding-block: calc(var(--spacing) * 32);
    }
  }
  .md\:pt-6 {
    @media (width >= 48rem) {
      padding-top: calc(var(--spacing) * 6);
    }
  }
  .md\:pr-8 {
    @media (width >= 48rem) {
      padding-right: calc(var(--spacing) * 8);
    }
  }
  .md\:pb-6 {
    @media (width >= 48rem) {
      padding-bottom: calc(var(--spacing) * 6);
    }
  }
  .md\:text-center {
    @media (width >= 48rem) {
      text-align: center;
    }
  }
  .md\:text-2xl {
    @media (width >= 48rem) {
      font-size: var(--text-2xl);
      line-height: var(--tw-leading, var(--text-2xl--line-height));
    }
  }
  .md\:text-4xl {
    @media (width >= 48rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .md\:text-5xl {
    @media (width >= 48rem) {
      font-size: var(--text-5xl);
      line-height: var(--tw-leading, var(--text-5xl--line-height));
    }
  }
  .md\:text-base {
    @media (width >= 48rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .md\:text-lg {
    @media (width >= 48rem) {
      font-size: var(--text-lg);
      line-height: var(--tw-leading, var(--text-lg--line-height));
    }
  }
  .md\:text-sm {
    @media (width >= 48rem) {
      font-size: var(--text-sm);
      line-height: var(--tw-leading, var(--text-sm--line-height));
    }
  }
  .md\:text-xl {
    @media (width >= 48rem) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .md\:uppercase {
    @media (width >= 48rem) {
      text-transform: uppercase;
    }
  }
  .lg\:static {
    @media (width >= 64rem) {
      position: static;
    }
  }
  .lg\:order-1 {
    @media (width >= 64rem) {
      order: 1;
    }
  }
  .lg\:order-2 {
    @media (width >= 64rem) {
      order: 2;
    }
  }
  .lg\:col-12 {
    @media (width >= 64rem) {
      grid-column: 12;
    }
  }
  .lg\:col-span-1 {
    @media (width >= 64rem) {
      grid-column: span 1 / span 1;
    }
  }
  .lg\:col-span-2 {
    @media (width >= 64rem) {
      grid-column: span 2 / span 2;
    }
  }
  .lg\:col-span-4 {
    @media (width >= 64rem) {
      grid-column: span 4 / span 4;
    }
  }
  .lg\:col-span-8 {
    @media (width >= 64rem) {
      grid-column: span 8 / span 8;
    }
  }
  .lg\:mx-10 {
    @media (width >= 64rem) {
      margin-inline: calc(var(--spacing) * 10);
    }
  }
  .lg\:my-16 {
    @media (width >= 64rem) {
      margin-block: calc(var(--spacing) * 16);
    }
  }
  .lg\:mt-0 {
    @media (width >= 64rem) {
      margin-top: calc(var(--spacing) * 0);
    }
  }
  .lg\:mb-0 {
    @media (width >= 64rem) {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }
  .lg\:mb-6 {
    @media (width >= 64rem) {
      margin-bottom: calc(var(--spacing) * 6);
    }
  }
  .lg\:mb-8 {
    @media (width >= 64rem) {
      margin-bottom: calc(var(--spacing) * 8);
    }
  }
  .lg\:mb-12 {
    @media (width >= 64rem) {
      margin-bottom: calc(var(--spacing) * 12);
    }
  }
  .lg\:block {
    @media (width >= 64rem) {
      display: block;
    }
  }
  .lg\:grid {
    @media (width >= 64rem) {
      display: grid;
    }
  }
  .lg\:hidden {
    @media (width >= 64rem) {
      display: none;
    }
  }
  .lg\:h-12 {
    @media (width >= 64rem) {
      height: calc(var(--spacing) * 12);
    }
  }
  .lg\:h-full {
    @media (width >= 64rem) {
      height: 100%;
    }
  }
  .lg\:w-1\/3 {
    @media (width >= 64rem) {
      width: calc(1/3 * 100%);
    }
  }
  .lg\:w-1\/4 {
    @media (width >= 64rem) {
      width: calc(1/4 * 100%);
    }
  }
  .lg\:w-2\/3 {
    @media (width >= 64rem) {
      width: calc(2/3 * 100%);
    }
  }
  .lg\:w-3\/4 {
    @media (width >= 64rem) {
      width: calc(3/4 * 100%);
    }
  }
  .lg\:translate-x-0 {
    @media (width >= 64rem) {
      --tw-translate-x: calc(var(--spacing) * 0);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
  .lg\:grid-cols-3 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-4 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }
  }
  .lg\:grid-cols-12 {
    @media (width >= 64rem) {
      grid-template-columns: repeat(12, minmax(0, 1fr));
    }
  }
  .lg\:flex-row {
    @media (width >= 64rem) {
      flex-direction: row;
    }
  }
  .lg\:justify-center {
    @media (width >= 64rem) {
      justify-content: center;
    }
  }
  .lg\:rounded-xl {
    @media (width >= 64rem) {
      border-radius: var(--radius-xl);
    }
  }
  .lg\:bg-gray-100 {
    @media (width >= 64rem) {
      background-color: var(--color-gray-100);
    }
  }
  .lg\:p-8 {
    @media (width >= 64rem) {
      padding: calc(var(--spacing) * 8);
    }
  }
  .lg\:py-12 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 12);
    }
  }
  .lg\:py-16 {
    @media (width >= 64rem) {
      padding-block: calc(var(--spacing) * 16);
    }
  }
  .lg\:pl-6 {
    @media (width >= 64rem) {
      padding-left: calc(var(--spacing) * 6);
    }
  }
  .lg\:text-3xl {
    @media (width >= 64rem) {
      font-size: var(--text-3xl);
      line-height: var(--tw-leading, var(--text-3xl--line-height));
    }
  }
  .lg\:text-4xl {
    @media (width >= 64rem) {
      font-size: var(--text-4xl);
      line-height: var(--tw-leading, var(--text-4xl--line-height));
    }
  }
  .lg\:text-6xl {
    @media (width >= 64rem) {
      font-size: var(--text-6xl);
      line-height: var(--tw-leading, var(--text-6xl--line-height));
    }
  }
  .lg\:text-base {
    @media (width >= 64rem) {
      font-size: var(--text-base);
      line-height: var(--tw-leading, var(--text-base--line-height));
    }
  }
  .lg\:text-xl {
    @media (width >= 64rem) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .lg\:shadow-none {
    @media (width >= 64rem) {
      --tw-shadow: 0 0 #0000;
      box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }
  }
  .xl\:sticky {
    @media (width >= 80rem) {
      position: sticky;
    }
  }
  .xl\:mb-0 {
    @media (width >= 80rem) {
      margin-bottom: calc(var(--spacing) * 0);
    }
  }
  .xl\:text-xl {
    @media (width >= 80rem) {
      font-size: var(--text-xl);
      line-height: var(--tw-leading, var(--text-xl--line-height));
    }
  }
  .rtl\:rotate-180 {
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      rotate: 180deg;
    }
  }
  .rtl\:space-x-reverse {
    &:where(:dir(rtl), [dir="rtl"], [dir="rtl"] *) {
      :where(& > :not(:last-child)) {
        --tw-space-x-reverse: 1;
      }
    }
  }
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}
@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}
@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-x {
  syntax: "*";
  inherits: false;
}
@property --tw-pan-y {
  syntax: "*";
  inherits: false;
}
@property --tw-pinch-zoom {
  syntax: "*";
  inherits: false;
}
@property --tw-scroll-snap-strictness {
  syntax: "*";
  inherits: false;
  initial-value: proximity;
}
@property --tw-space-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-space-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-divide-x-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-divide-y-reverse {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-gradient-position {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-via {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-to {
  syntax: "<color>";
  inherits: false;
  initial-value: #0000;
}
@property --tw-gradient-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-via-stops {
  syntax: "*";
  inherits: false;
}
@property --tw-gradient-from-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 0%;
}
@property --tw-gradient-via-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 50%;
}
@property --tw-gradient-to-position {
  syntax: "<length-percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
@property --tw-font-weight {
  syntax: "*";
  inherits: false;
}
@property --tw-tracking {
  syntax: "*";
  inherits: false;
}
@property --tw-ordinal {
  syntax: "*";
  inherits: false;
}
@property --tw-slashed-zero {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-figure {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-spacing {
  syntax: "*";
  inherits: false;
}
@property --tw-numeric-fraction {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-outline-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-blur {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-brightness {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-contrast {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-grayscale {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-hue-rotate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-invert {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-opacity {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-saturate {
  syntax: "*";
  inherits: false;
}
@property --tw-backdrop-sepia {
  syntax: "*";
  inherits: false;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-ease {
  syntax: "*";
  inherits: false;
}
@property --tw-contain-size {
  syntax: "*";
  inherits: false;
}
@property --tw-contain-layout {
  syntax: "*";
  inherits: false;
}
@property --tw-contain-paint {
  syntax: "*";
  inherits: false;
}
@property --tw-contain-style {
  syntax: "*";
  inherits: false;
}
@property --tw-scale-x {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-y {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@property --tw-scale-z {
  syntax: "*";
  inherits: false;
  initial-value: 1;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-pan-x: initial;
      --tw-pan-y: initial;
      --tw-pinch-zoom: initial;
      --tw-scroll-snap-strictness: proximity;
      --tw-space-y-reverse: 0;
      --tw-space-x-reverse: 0;
      --tw-divide-x-reverse: 0;
      --tw-border-style: solid;
      --tw-divide-y-reverse: 0;
      --tw-gradient-position: initial;
      --tw-gradient-from: #0000;
      --tw-gradient-via: #0000;
      --tw-gradient-to: #0000;
      --tw-gradient-stops: initial;
      --tw-gradient-via-stops: initial;
      --tw-gradient-from-position: 0%;
      --tw-gradient-via-position: 50%;
      --tw-gradient-to-position: 100%;
      --tw-leading: initial;
      --tw-font-weight: initial;
      --tw-tracking: initial;
      --tw-ordinal: initial;
      --tw-slashed-zero: initial;
      --tw-numeric-figure: initial;
      --tw-numeric-spacing: initial;
      --tw-numeric-fraction: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-outline-style: solid;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
      --tw-backdrop-blur: initial;
      --tw-backdrop-brightness: initial;
      --tw-backdrop-contrast: initial;
      --tw-backdrop-grayscale: initial;
      --tw-backdrop-hue-rotate: initial;
      --tw-backdrop-invert: initial;
      --tw-backdrop-opacity: initial;
      --tw-backdrop-saturate: initial;
      --tw-backdrop-sepia: initial;
      --tw-duration: initial;
      --tw-ease: initial;
      --tw-contain-size: initial;
      --tw-contain-layout: initial;
      --tw-contain-paint: initial;
      --tw-contain-style: initial;
      --tw-scale-x: 1;
      --tw-scale-y: 1;
      --tw-scale-z: 1;
    }
  }
}
