/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap');

/* CSS Variables - Soft & Elegant Color Palette */
:root {
  /* Primary Colors - Warm Beige */
--primary-50: #fff9f3;
--primary-100: #fff2e6;
--primary-200: #fee6d5;
--primary-300: #fdceb8;
--primary-400: #fbb896;
--primary-500: #f7a377;
--primary-600: #f1895a;
--primary-700: #da6f42;
--primary-800: #b85732;
--primary-900: #944228;

/* Secondary Colors - Soft Caramel */
--secondary-50: #fffaf5;
--secondary-100: #fff3ea;
--secondary-200: #fde7d6;
--secondary-300: #fcd6c0;
--secondary-400: #f9bfa1;
--secondary-500: #f49a7f;
--secondary-600: #e8805d;
--secondary-700: #cf6646;
--secondary-800: #b14e33;
--secondary-900: #933d26;

/* Neutral Colors - Warm Sand */
--neutral-50: #fdfaf6;
--neutral-100: #faf5f0;
--neutral-200: #f3ede4;
--neutral-300: #e9e0d4;
--neutral-400: #d6c8b4;
--neutral-500: #bfa78e;
--neutral-600: #a4886f;
--neutral-700: #816550;
--neutral-800: #654836;
--neutral-900: #4b3224;

/* Accent Colors */
--accent-rose: #f7c6b6;
--accent-cream: #fff8f1;
--accent-lavender: #ecd9e9;
--accent-mint: #d9f2e8;

/* Functional Colors */
--success: #059669;
--warning: #d97706;
--error: #dc2626;
--info: #0ea5e9;


    /* Typography */
    --font-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-display: 'Playfair Display', Georgia, serif;

    /* Font Sizes */
    --text-xs: 0.75rem; /* 12px */
    --text-sm: 0.875rem; /* 14px */
    --text-base: 1rem; /* 16px */
    --text-lg: 1.125rem; /* 18px */
    --text-xl: 1.25rem; /* 20px */
    --text-2xl: 1.5rem; /* 24px */
    --text-3xl: 1.875rem; /* 30px */
    --text-4xl: 2.25rem; /* 36px */
    --text-5xl: 3rem; /* 48px */

    /* Spacing */
    --spacing-1: 0.25rem; /* 4px */
    --spacing-2: 0.5rem; /* 8px */
    --spacing-3: 0.75rem; /* 12px */
    --spacing-4: 1rem; /* 16px */
    --spacing-5: 1.25rem; /* 20px */
    --spacing-6: 1.5rem; /* 24px */
    --spacing-8: 2rem; /* 32px */
    --spacing-10: 2.5rem; /* 40px */
    --spacing-12: 3rem; /* 48px */
    --spacing-16: 4rem; /* 64px */
    --spacing-20: 5rem; /* 80px */

    /* Border Radius */
    --radius-sm: 0.375rem; /* 6px */
    --radius-md: 0.5rem; /* 8px */
    --radius-lg: 0.75rem; /* 12px */
    --radius-xl: 1rem; /* 16px */
    --radius-2xl: 2.5rem; /* 24px */

    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
    --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
    --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);

    /* Transitions */
    --transition-fast: 150ms ease-in-out;
    --transition-normal: 300ms ease-in-out;
    --transition-slow: 500ms ease-in-out;
}

/* Reset & Base Styles */
*, *::before, *::after {
    box-sizing: border-box;
}

* {
    margin: 0;
    padding: 0;
}

html {
    font-size: 16px;
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-primary), sans-serif;
    font-weight: 400;
    line-height: 1.6;
    color: var(--neutral-700);
    background-color: var(--neutral-50);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

img, picture, video, canvas, svg {
    display: block;
    max-width: 100%;
    height: auto;
}

input, button, textarea, select {
    font: inherit;
}

p, h1, h2, h3, h4, h5, h6 {
    overflow-wrap: break-word;
}

/* Typography */
.font-display {
    font-family: var(--font-display);
}

.text-xs {
    font-size: var(--text-xs);
}

.text-sm {
    font-size: var(--text-sm);
}

.text-base {
    font-size: var(--text-base);
}

.text-lg {
    font-size: var(--text-lg);
}

.text-xl {
    font-size: var(--text-xl);
}

.text-2xl {
    font-size: var(--text-2xl);
}

.text-3xl {
    font-size: var(--text-3xl);
}

.text-4xl {
    font-size: var(--text-4xl);
}

.text-5xl {
    font-size: var(--text-5xl);
}

.font-light {
    font-weight: 300;
}

.font-normal {
    font-weight: 400;
}

.font-medium {
    font-weight: 500;
}

.font-semibold {
    font-weight: 600;
}

.font-bold {
    font-weight: 700;
}

.text-center {
    text-align: center;
}

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

/* Layout */
.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 var(--spacing-4);
}

@media (min-width: 640px) {
    .container {
        padding: 0 var(--spacing-6);
    }
}

@media (min-width: 1024px) {
    .container {
        padding: 0 var(--spacing-8);
    }
}

/* Fix flex utilities */
.min-h-screen {
    min-height: 100vh;
}

.flex-1 {
    flex: 1;
}

.w-full {
    width: 100%;
}

.h-full {
    height: 100%;
}

.max-w-none {
    max-width: none;
}

/* Grid System */
.grid {
    display: grid;
    gap: var(--spacing-6);
}

.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));
}

.grid-cols-6 {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

/* Responsive breakpoints - улучшенная адаптивность */
@media (max-width: 640px) {
    .grid {
        gap: var(--spacing-4);
    }

    .grid-cols-2,
    .grid-cols-3,
    .grid-cols-4,
    .grid-cols-6 {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 641px) and (max-width: 768px) {
    .grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .grid-cols-3,
    .grid-cols-4,
    .grid-cols-6 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .grid {
        gap: var(--spacing-5);
    }
}

@media (min-width: 769px) and (max-width: 1024px) {
    .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-cols-6 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .grid {
        gap: var(--spacing-6);
    }
}

@media (min-width: 1025px) and (max-width: 1200px) {
    .grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .grid-cols-6 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* Flex Utilities */
.flex {
    display: flex;
}

.inline-flex {
    display: inline-flex;
}

.flex-col {
    flex-direction: column;
}

.items-center {
    align-items: center;
}

.items-start {
    align-items: flex-start;
}

.items-end {
    align-items: flex-end;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.justify-end {
    justify-content: flex-end;
}

.gap-2 {
    gap: var(--spacing-2);
}

.gap-4 {
    gap: var(--spacing-4);
}

.gap-6 {
    gap: var(--spacing-6);
}

.gap-8 {
    gap: var(--spacing-8);
}

/* Spacing */
.m-0 {
    margin: 0;
}

.mt-4 {
    margin-top: var(--spacing-4);
}

.mt-6 {
    margin-top: var(--spacing-6);
}

.mt-8 {
    margin-top: var(--spacing-8);
}

.mb-4 {
    margin-bottom: var(--spacing-4);
}

.mb-6 {
    margin-bottom: var(--spacing-6);
}

.mb-8 {
    margin-bottom: var(--spacing-8);
}

.mb-12 {
    margin-bottom: var(--spacing-12);
}

.p-4 {
    padding: var(--spacing-4);
}

.p-6 {
    padding: var(--spacing-6);
}

.p-8 {
    padding: var(--spacing-8);
}

.px-4 {
    padding-left: var(--spacing-4);
    padding-right: var(--spacing-4);
}

.px-6 {
    padding-left: var(--spacing-6);
    padding-right: var(--spacing-6);
}

.py-4 {
    padding-top: var(--spacing-4);
    padding-bottom: var(--spacing-4);
}

.py-6 {
    padding-top: var(--spacing-6);
    padding-bottom: var(--spacing-6);
}

.py-8 {
    padding-top: var(--spacing-8);
    padding-bottom: var(--spacing-8);
}

.py-12 {
    padding-top: var(--spacing-12);
    padding-bottom: var(--spacing-12);
}

.py-16 {
    padding-top: var(--spacing-16);
    padding-bottom: var(--spacing-16);
}

.py-20 {
    padding-top: var(--spacing-20);
    padding-bottom: var(--spacing-20);
}

/* Header */
.header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(250, 250, 249, 0.95);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--neutral-200);
    transition: var(--transition-normal);
}

.nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--spacing-4) 0;
}

.logo {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    font-style: italic;
    text-shadow: 0 1px 6px var(--neutral-300);
    font-weight: 600;
    color: var(--primary-600);
    text-decoration: none;
    transition: var(--transition-fast);
}

.logo:hover {
    color: var(--primary-700);
}

.nav-links {
    display: flex;
    align-items: center;
    gap: var(--spacing-8);
    list-style: none;
}

.nav-link {
    position: relative;
    color: var(--neutral-600);
    text-decoration: none;
    font-weight: 800;
    text-transform: uppercase;
    font-size: var(--text-sm);
    letter-spacing: 0.025em;
    transition: var(--transition-fast);
    padding: var(--spacing-2) 0;
}

.nav-link:hover,
.nav-link.active {
    color: var(--primary-600);
}

.nav-link::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 0;
    height: 2px;
    background: var(--primary-500);
    transition: var(--transition-fast);
}

.nav-link:hover::after,
.nav-link.active::after {
    width: 100%;
}

.mobile-menu-btn {
    display: none;
    background: none;
    border: none;
    cursor: pointer;
    padding: var(--spacing-2);
    color: var(--neutral-600);
}

.mobile-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: white;
    border-bottom: 1px solid var(--neutral-200);
    box-shadow: var(--shadow-lg);
}

.mobile-nav.active {
    display: block;
}

.mobile-nav-links {
    list-style: none;
    padding: var(--spacing-4) 0;
}

.mobile-nav-link {
    display: block;
    color: var(--neutral-600);
    text-decoration: none;
    font-weight: 500;
    padding: var(--spacing-3) var(--spacing-6);
    transition: var(--transition-fast);
    border-left: 3px solid transparent;
}

.mobile-nav-link:hover {
    color: var(--primary-600);
    background: var(--primary-50);
    border-left-color: var(--primary-500);
}

@media (max-width: 768px) {
    .nav-links {
        display: none;
    }

    .mobile-menu-btn {
        display: block;
    }
}

/* Hero Section */
.hero {
    background: linear-gradient(135deg, var(--accent-cream) 0%, var(--secondary-200) 50%, var(--secondary-300) 100%);
    position: relative;
    overflow: hidden;
}

.hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background-size: contain;
    background-repeat: no-repeat;
    bottom: 0; 
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg version='1.0' xmlns='http://www.w3.org/2000/svg' width='989.000000pt' height='1280.000000pt' viewBox='0 0 989.000000 1280.000000' preserveAspectRatio='xMidYMid meet'%3e%3cmetadata%3e Created by potrace 1.15, written by Peter Selinger 2001-2017 %3c/metadata%3e%3cg transform='translate(0.000000,1280.000000) scale(0.100000,-0.100000)' fill='%23000000' stroke='none'%3e%3cpath d='M4523 12118 c-32 -36 -40 -57 -53 -153 -16 -109 -48 -195 -65 -172 -6 8 -71 49 -145 92 -73 42 -148 88 -165 101 -40 30 -53 30 -66 0 -16 -35 10 -76 95 -149 41 -34 73 -64 71 -65 -2 -2 -25 6 -52 18 -92 41 -177 71 -190 66 -7 -3 -13 -17 -13 -32 0 -36 54 -85 124 -114 54 -23 54 -23 39 -46 -26 -40 -13 -143 30 -249 20 -49 41 -124 47 -165 6 -41 15 -98 20 -127 5 -28 6 -83 3 -122 -5 -62 -7 -68 -17 -49 -16 32 -60 36 -80 6 -20 -28 -20 -65 -1 -98 8 -14 14 -33 15 -43 0 -15 -7 -16 -56 -11 -55 7 -57 6 -90 -29 -27 -31 -40 -37 -72 -37 -45 0 -56 -10 -74 -65 -10 -30 -20 -41 -48 -50 -41 -14 -89 -76 -90 -116 0 -17 15 -45 41 -75 50 -60 79 -115 79 -149 0 -28 -13 -31 -72 -15 -76 22 -168 -29 -154 -85 8 -33 55 -54 142 -62 35 -3 69 -12 75 -19 8 -9 -3 -36 -44 -106 -92 -156 -330 -647 -366 -753 -19 -55 -47 -131 -63 -169 -37 -84 -38 -144 -9 -271 33 -142 99 -553 126 -786 44 -378 60 -464 174 -954 108 -465 144 -579 287 -904 60 -139 70 -171 101 -330 88 -457 140 -675 223 -937 77 -241 83 -281 72 -471 -14 -227 -2 -209 -387 -603 -183 -187 -211 -223 -270 -340 -72 -143 -155 -436 -155 -544 1 -63 31 -173 69 -251 53 -108 124 -199 222 -286 179 -157 344 -335 484 -519 l78 -103 -44 7 c-70 10 -383 34 -656 51 -409 25 -482 54 -568 225 -50 100 -81 137 -140 166 -46 22 -64 26 -102 20 -60 -8 -134 -43 -203 -96 -121 -92 -246 -132 -450 -145 -223 -14 -363 -46 -417 -97 -18 -17 -29 -19 -60 -14 -65 13 -75 9 -143 -61 -75 -76 -93 -118 -63 -148 10 -11 16 -29 15 -45 -2 -15 5 -37 16 -50 18 -22 20 -22 73 -9 67 16 158 14 241 -5 35 -8 119 -22 188 -31 92 -13 158 -29 250 -62 219 -79 200 -75 590 -123 542 -67 729 -114 1150 -288 107 -44 292 -117 410 -160 267 -99 564 -231 735 -325 71 -40 143 -77 160 -84 18 -7 90 -12 177 -12 175 -1 193 4 346 100 170 105 214 157 248 290 33 129 -5 372 -101 649 -77 221 -279 562 -487 822 -49 61 -87 112 -85 115 4 4 255 -56 854 -203 198 -48 340 -96 588 -196 410 -167 586 -221 854 -263 189 -29 267 -31 338 -10 103 31 149 83 180 209 16 66 16 68 -10 154 -14 48 -29 107 -32 132 -23 167 -96 235 -380 356 -49 21 -120 57 -156 81 -155 99 -356 182 -479 198 -68 8 -265 112 -625 328 -357 215 -596 322 -890 397 -88 23 -163 45 -168 49 -4 4 -12 35 -18 70 l-11 62 84 127 c47 70 124 174 172 232 48 58 102 132 121 165 34 60 112 246 135 320 7 22 16 44 20 48 4 5 36 14 72 22 129 27 257 115 327 224 43 66 78 165 100 283 11 57 23 115 26 129 5 20 0 34 -23 60 -16 19 -37 50 -47 69 -10 19 -75 127 -145 240 -162 261 -224 371 -257 456 -25 67 -26 77 -33 379 -5 171 -6 328 -4 350 3 22 6 177 9 345 2 168 8 323 12 345 9 41 16 46 86 60 18 4 31 15 38 32 5 14 21 39 34 55 29 34 32 75 10 118 -17 33 -28 40 -19 13 5 -15 4 -16 -5 -3 -18 26 -12 68 14 96 14 15 25 36 25 48 0 20 -1 19 -13 -3 -15 -31 -34 -37 -40 -14 -4 14 -5 13 -6 -4 -2 -40 -20 -25 -27 22 -3 25 -10 47 -14 50 -4 3 -4 22 1 42 5 21 9 54 9 73 0 49 -18 25 -23 -30 -2 -25 -4 -4 -4 45 -1 60 -6 103 -17 129 -9 22 -14 48 -10 58 3 10 -1 37 -10 61 -10 28 -19 112 -26 247 -17 314 -37 487 -62 529 -35 61 -200 200 -386 326 -97 66 -215 150 -262 186 -47 36 -191 139 -320 229 -405 281 -555 403 -578 469 -12 37 -11 43 39 157 32 73 57 149 65 198 8 43 23 122 33 175 11 53 31 181 46 286 25 180 25 192 11 255 -36 149 -51 352 -38 498 5 58 4 96 -2 102 -16 16 -41 11 -63 -12z m-207 -616 c7 -26 -4 -97 -14 -88 -3 4 -18 42 -32 84 -15 42 -30 86 -34 97 -4 11 11 0 33 -25 23 -25 44 -55 47 -68z m53 -1520 c98 -69 199 -161 461 -416 l175 -171 -65 -11 c-36 -7 -95 -18 -132 -25 -38 -6 -68 -16 -68 -20 0 -5 7 -6 15 -3 8 4 15 2 15 -4 0 -14 -25 -22 -69 -22 -85 0 -128 -11 -140 -36 -8 -18 -18 -24 -44 -24 -60 0 -155 -37 -205 -80 -27 -22 -55 -40 -63 -40 -20 0 -92 -39 -106 -58 -7 -9 -13 -27 -13 -40 0 -15 -7 -26 -20 -29 -11 -3 -20 -9 -20 -14 0 -5 -23 -23 -50 -40 -50 -30 -160 -149 -160 -172 -1 -21 -17 17 -24 55 -8 45 17 124 78 247 68 136 109 252 216 615 56 187 103 343 106 348 8 13 14 10 113 -60z m1791 -2012 c0 -5 -5 -10 -11 -10 -5 0 -7 5 -4 10 3 6 8 10 11 10 2 0 4 -4 4 -10z m-83 -87 c-2 -16 -4 -3 -4 27 0 30 2 43 4 28 2 -16 2 -40 0 -55z m86 11 c22 -44 22 -66 -1 -94 l-19 -23 -15 22 c-12 16 -13 32 -7 64 4 23 8 48 9 55 0 22 15 12 33 -24z m-743 -351 c-1 -27 -28 -107 -37 -110 -13 -5 -6 70 9 100 9 17 28 24 28 10z m-1130 -202 c5 -11 16 -25 23 -33 7 -7 31 -40 54 -73 42 -62 63 -78 123 -93 l35 -8 -70 -51 c-38 -29 -72 -50 -76 -47 -4 2 -15 30 -24 62 -20 69 -75 213 -87 227 -11 12 -10 35 2 35 5 0 14 -9 20 -19z m1129 -61 c11 -54 10 -65 -6 -98 -13 -27 -25 -38 -45 -40 -28 -3 -28 -3 -28 60 0 35 3 80 6 101 6 32 10 37 34 37 26 0 28 -4 39 -60z'/%3e%3c/g%3e%3c/svg%3e ");
    opacity: 0.3;
}

.hero-content {
    position: relative;
    z-index: 1;
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.hero h1 {
    font-family: var(--font-display);
    font-size: clamp(2.5rem, 5vw, 4rem);
    font-weight: 800;
    font-style: italic;
    text-decoration: underline;
    color: var(--neutral-800);
    margin-bottom: var(--spacing-6);
    line-height: 1.2;
}

.hero p {
    font-size: var(--text-xl);
    color: var(--neutral-600);
    margin-bottom: var(--spacing-8);
    line-height: 1.6;
}

.hero-buttons {
    display: flex;
    gap: var(--spacing-4);
    justify-content: center;
    flex-wrap: wrap;
}

.hero-buttons .btn:last-child{
    order: -1;
}

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--spacing-2);
    padding: var(--spacing-3) var(--spacing-6);
    border: none;
    border-radius: var(--radius-2xl);
    font-weight: 800;
    font-size: var(--text-base);
    text-decoration: none;
    cursor: pointer;
    text-transform: uppercase;
    transition: var(--transition-normal);
    position: relative;
    overflow: hidden;
    min-height: 45px; 
    min-width: 200px;
}

.btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: var(--transition-normal);
}

.btn:hover::before {
    left: 100%;
}

.btn-primary {
    background: linear-gradient(135deg, var(--primary-400), var(--primary-700));
    color: white;
    box-shadow: var(--shadow-md);
}

.btn-primary:hover {
    background: linear-gradient(135deg, var(--primary-600), var(--primary-700));
    box-shadow: var(--shadow-lg);
    transform: translateY(-2px);
}

.btn-secondary {
    background: white;
    color: var(--primary-600);
    border: 2px solid var(--primary-200);
    box-shadow: var(--shadow-sm);
}

.btn-secondary:hover {
    background: var(--primary-50);
    border-color: var(--primary-300);
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.btn-outline {
    background: transparent;
    color: var(--primary-600);
    border: 2px solid var(--primary-500);
}

.btn-outline:hover {
    background: var(--primary-500);
    color: white;
}

.btn-lg {
    padding: var(--spacing-4) var(--spacing-8);
    font-size: var(--text-lg);
    min-height: 56px;
}

/* Cards */
.card {
    background: white;
    border-radius: var(--radius-xl);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    transition: var(--transition-normal);
    border: 1px solid var(--neutral-100);
    height: 100%;
    display: flex;
    flex-direction: column;
}

.card:hover {
    box-shadow: var(--shadow-xl);
    transform: translateY(-4px);
}

.card a {
    text-decoration: none;
    color: inherit;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.card-image {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: var(--transition-normal);
}

.card:hover .card-image {
    transform: scale(1.05);
}

.card-image-container {
    overflow: hidden;
    position: relative;
}

.card-image-container::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 40px;
    background: linear-gradient(transparent, rgba(0, 0, 0, 0.1));
}

.card-content {
    padding: var(--spacing-6);
    flex: 1;
}

.card-title {
    font-family: var(--font-display);
    font-size: var(--text-xl);
    font-weight: 600;
    color: var(--neutral-800);
    margin-bottom: var(--spacing-2);
}

.card-subtitle {
    color: var(--primary-600);
    font-weight: 500;
    font-size: var(--text-sm);
    margin-bottom: var(--spacing-3);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.card-description {
    color: var(--neutral-600);
    line-height: 1.6;
    font-style: italic;
    font-size: .87rem;
    margin-bottom: var(--spacing-4);
}

.top-card .card-subtitle{
    margin: 0;
    font-weight: 600;
    position: relative;
    padding-left: 26px;
}

.top-card{
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.top-card .card-subtitle::before{
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    display: block;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23b85732' d='M12 2C8.1 2 5 5.1 5 9c0 5.2 7 13 7 13s7-7.8 7-13c0-3.9-3.1-7-7-7zm0 9.5c-1.4 0-2.5-1.1-2.5-2.5S10.6 6.5 12 6.5s2.5 1.1 2.5 2.5S13.4 11.5 12 11.5z'/></svg>");
    background-repeat: no-repeat;
    background-size: contain;
    opacity: 0.98;
    pointer-events: none;
}

.section_modals .card-image{
    max-width: 1000px;
    max-height: 1000px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.section_modals .card-image{
    max-width: 1000px;
    max-height: 1000px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.top-card .card-subtitle{
    margin: 0;
    font-weight: 600;
}

.card-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-4);
    flex-direction: column;
    margin-top: auto;
}

.model-card {
    box-shadow: 0 1px 20px var(--neutral-400);
}
/* Исправление кнопок View Profile на десктопе */
@media (min-width: 769px) {
    .card-footer .btn {
        width: auto;
        min-width: 100px;
        white-space: nowrap;
        flex-shrink: 0;
    }

    .card-footer {
        flex-direction: column;
        align-items: center;
        justify-content: space-between;
    }

    .card-footer .tags {
        flex: 1;
        margin-right: var(--spacing-2);
    }
}

/* Tags */
.tags {
    display: flex;
    gap: var(--spacing-2);
    flex-wrap: wrap;
}

.tag {
    background: var(--primary-300);
    color: var(--primary-700);
    padding: var(--spacing-1) var(--spacing-3);
    border-radius: var(--radius-sm);
    font-size: var(--text-xs);
    font-weight: 500;
    border: 1px solid var(--primary-100);
}

/* Sections */
.section {
    padding: var(--spacing-16) 0;
}

.section-sm {
    padding: var(--spacing-12) 0;
}

.section-lg {
    padding: var(--spacing-20) 0;
}

.section-alt {
    background: white;
}

.section-alt .card-content{
    min-height: 40px;
    background: var(--neutral-400);
}
.section-alt .grid{
    grid-template-columns: repeat(3, 1fr);
}
.section-alt a{
    color: var(--neutral-900);
    text-transform: uppercase;
    text-decoration: none;
}
.section-title {
    font-family: var(--font-display);
    font-size: clamp(2rem, 4vw, 3rem);
    font-weight: 600;
    color: var(--neutral-800);
    text-align: center;
    margin-bottom: var(--spacing-4);
    line-height: 1.2;
}

.section-subtitle {
    font-size: var(--text-lg);
    color: var(--neutral-600);
    text-align: center;
    max-width: 600px;
    margin: 0 auto var(--spacing-12);
    line-height: 1.6;
}
.usp_section{
    background: #fff;
}

.usp_section .text-center>div{
    border-radius: 10px !important;
}

.usp_section .text-neutral{
    font-style: italic;
}

.faq_section>div{ 
    position: relative;
} 
.faq{
    max-width: 600px;
    margin-left: auto;
}
.faq_section>div::before{
    content: '';
    position: absolute;
    top: 0;
    z-index: -1;
    left: 0;
    right: 0;
    background-size: contain;
    background-repeat: no-repeat;
    bottom: 0;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg version='1.0' xmlns='http://www.w3.org/2000/svg' width='1280.000000pt' height='1024.000000pt' viewBox='0 0 1280.000000 1024.000000' preserveAspectRatio='xMidYMid meet'%3e%3cmetadata%3e Created by potrace 1.15, written by Peter Selinger 2001-2017 %3c/metadata%3e%3cg transform='translate(0.000000,1024.000000) scale(0.100000,-0.100000)' fill='%23000000' stroke='none'%3e%3cpath d='M6785 10004 c-21 -32 -14 -80 18 -120 12 -15 29 -58 39 -94 32 -122 18 -152 -21 -42 -32 92 -84 202 -109 232 l-22 25 -30 -33 c-36 -39 -36 -45 -6 -135 25 -73 49 -187 42 -195 -4 -4 -11 18 -55 174 -34 118 -79 167 -121 129 -29 -26 -33 -66 -14 -141 23 -95 43 -217 37 -227 -3 -5 -12 -2 -21 7 -10 8 -30 17 -47 21 -16 4 -51 15 -76 25 -78 32 -158 40 -292 28 -149 -12 -191 -30 -248 -104 -75 -97 -94 -220 -59 -379 39 -178 36 -221 -24 -382 -15 -39 -14 -45 9 -114 l25 -72 -21 -35 c-11 -19 -18 -41 -15 -48 3 -7 1 -16 -4 -19 -19 -12 -111 -161 -120 -195 -10 -40 -75 -391 -84 -461 -13 -91 -9 -218 7 -243 18 -27 101 -82 138 -91 25 -6 27 -12 49 -143 12 -75 33 -180 46 -235 l24 -99 -58 -63 c-32 -35 -64 -76 -72 -92 -8 -15 -29 -50 -46 -78 -42 -67 -127 -225 -121 -225 2 0 30 43 62 96 31 52 58 94 60 92 10 -10 -19 -122 -45 -173 -34 -67 -179 -269 -188 -261 -2 3 11 36 31 73 37 71 68 143 63 143 -2 0 -27 -40 -55 -89 -104 -184 -179 -264 -367 -396 -243 -170 -401 -324 -455 -442 -61 -133 -60 -287 5 -417 40 -83 98 -146 186 -206 71 -48 232 -127 279 -136 17 -4 34 -11 37 -15 3 -5 12 -9 21 -9 9 0 21 -7 28 -17 8 -11 14 -13 19 -5 4 7 2 12 -4 12 -6 0 -8 5 -5 10 18 30 24 16 75 -200 35 -148 60 -220 121 -352 77 -168 111 -378 79 -499 -12 -47 -91 -292 -96 -298 -7 -8 -204 124 -383 257 -108 81 -237 173 -286 205 -50 33 -153 100 -230 150 -77 50 -199 119 -272 154 -289 139 -481 136 -706 -14 -121 -81 -125 -122 -48 -520 24 -124 38 -157 146 -343 91 -155 134 -214 289 -392 54 -62 115 -138 134 -168 19 -30 48 -66 64 -79 16 -12 63 -66 105 -120 42 -53 127 -157 188 -231 62 -74 116 -146 120 -160 12 -38 72 -128 95 -142 24 -15 213 -265 285 -377 26 -40 65 -113 86 -161 77 -178 165 -617 176 -876 l6 -142 -64 -61 -64 -60 3 -83 c1 -45 7 -87 12 -92 6 -6 4 -16 -7 -28 -13 -15 -14 -23 -5 -43 14 -30 38 -32 132 -9 65 15 485 187 507 208 9 9 8 40 -7 141 -20 134 -27 337 -10 300 5 -11 39 -132 76 -270 36 -137 67 -256 70 -262 5 -17 47 -16 89 1 19 8 35 17 35 19 0 2 -11 37 -25 78 -47 135 -165 603 -171 674 -5 54 -2 90 15 155 27 108 27 132 -4 168 -14 17 -25 40 -25 53 0 56 -35 133 -85 184 -27 28 -61 58 -73 66 -24 14 -24 15 -7 57 24 58 42 51 70 -27 27 -74 62 -114 99 -114 45 0 58 20 51 75 -7 46 -6 48 18 48 18 0 28 -8 37 -30 16 -38 86 -90 121 -90 43 0 62 36 45 88 -7 19 -4 22 22 22 23 0 38 -9 63 -41 37 -46 66 -61 93 -47 16 9 18 18 13 63 l-5 53 66 27 c77 33 175 99 245 166 l48 46 63 -42 c35 -23 92 -52 127 -64 85 -29 250 -43 345 -30 78 11 177 41 201 61 23 19 33 -8 33 -92 0 -79 -19 -146 -65 -224 -42 -73 -67 -164 -64 -236 2 -37 -2 -74 -9 -87 -19 -35 -14 -69 20 -136 37 -73 50 -144 36 -207 -5 -24 -9 -81 -9 -125 0 -44 -8 -104 -16 -133 -14 -45 -14 -59 -3 -92 10 -32 11 -57 1 -132 -7 -51 -16 -110 -21 -131 -10 -46 7 -67 53 -67 55 0 59 9 74 141 8 68 16 125 18 128 2 2 90 -18 194 -44 195 -48 220 -50 261 -17 18 14 24 34 32 107 5 49 14 93 20 96 17 11 -39 107 -72 124 -24 12 -30 22 -30 49 0 18 -9 114 -20 214 -11 99 -20 211 -21 249 -1 94 19 238 42 301 23 63 24 122 3 177 -22 58 -29 210 -14 331 9 82 9 111 0 134 -9 22 -9 52 0 132 6 57 16 146 21 198 6 52 17 120 27 150 9 30 17 89 17 130 1 41 5 131 9 200 7 113 6 131 -14 195 -12 39 -35 93 -50 121 -16 27 -33 79 -40 115 -23 134 -129 292 -234 347 -46 24 -61 27 -147 26 l-96 -1 -46 76 c-57 95 -83 148 -113 228 -13 35 -47 114 -75 176 -101 219 -119 301 -119 534 0 140 3 175 26 265 36 145 39 162 25 154 -20 -13 -12 11 9 25 14 9 27 39 39 89 10 41 30 118 44 170 91 333 111 743 56 1120 -12 81 -56 264 -89 370 -28 91 -27 94 19 86 28 -4 42 -2 48 7 16 26 90 77 104 72 9 -3 40 14 73 40 32 25 66 45 75 45 24 0 95 76 121 130 13 25 40 70 61 100 45 64 65 117 79 207 6 36 18 76 28 91 9 14 20 57 23 96 7 66 4 80 -36 201 -62 187 -82 269 -90 363 -9 119 -28 181 -90 299 -104 199 -162 266 -282 325 -55 27 -81 33 -181 41 -64 4 -175 6 -245 3 -140 -7 -244 1 -229 16 13 13 155 38 220 38 49 0 54 2 80 39 15 22 45 48 66 57 26 12 43 29 52 51 8 18 27 39 44 48 39 20 47 37 65 140 21 120 19 200 -5 271 -25 73 -127 224 -151 224 -4 0 -14 -12 -24 -26z m685 -2149 c-7 -8 -16 -15 -21 -15 -13 0 -11 24 3 38 18 18 35 -3 18 -23z m-39 -162 c-9 -16 -10 -15 -11 9 0 14 3 35 8 45 6 15 8 14 10 -9 2 -15 -1 -35 -7 -45z m69 2 c0 -14 -4 -25 -10 -25 -11 0 -14 33 -3 43 11 11 13 8 13 -18z m-63 -107 c-3 -8 -6 -5 -6 6 -1 11 2 17 5 13 3 -3 4 -12 1 -19z m-393 -1604 c-8 -76 -21 -148 -27 -159 -6 -11 -16 -38 -23 -60 l-13 -40 0 33 c-1 43 17 161 35 237 45 180 50 177 28 -11z m-1766 -4027 c31 -24 76 -56 98 -71 41 -27 42 -28 31 -62 -6 -19 -14 -33 -18 -32 -11 5 -179 192 -179 201 0 13 11 7 68 -36z m87 -167 c10 -11 16 -20 13 -20 -3 0 -13 9 -23 20 -10 11 -16 20 -13 20 3 0 13 -9 23 -20z'/%3e%3cpath d='M7461 7475 c-7 -16 -24 -52 -38 -80 -23 -45 -24 -48 -5 -31 28 25 65 101 59 123 -3 14 -7 11 -16 -12z'/%3e%3c/g%3e%3c/svg%3e");
    opacity: 0.3;
}
/* Forms */
.form {
    background: white;
    padding: var(--spacing-8);
    border-radius: var(--radius-2xl);
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--neutral-100);
    width: 100%;
}

@media (max-width: 768px) {
    .form {
        padding: var(--spacing-6);
        border-radius: var(--radius-lg);
    }
}

.form-grid {
    display: grid;
    gap: var(--spacing-4);
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}

.form-grid-3 {
    display: grid;
    gap: var(--spacing-4);
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 640px) {
    .form-grid,
    .form-grid-3 {
        grid-template-columns: 1fr;
    }
}

.form-group {
    margin-bottom: var(--spacing-4);
}

.form-label {
    display: block;
    font-weight: 500;
    color: var(--neutral-700);
    margin-bottom: var(--spacing-2);
    font-size: var(--text-sm);
}

.form-input,
.form-select,
.form-textarea {
    width: 100%;
    padding: var(--spacing-3) var(--spacing-4);
    border: 2px solid var(--neutral-200);
    border-radius: var(--radius-lg);
    font-size: var(--text-base);
    transition: var(--transition-fast);
    background: var(--neutral-50);
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
    outline: none;
    border-color: var(--primary-500);
    background: white;
    box-shadow: 0 0 0 3px rgba(237, 125, 95, 0.1);
}

.form-textarea {
    resize: vertical;
    min-height: 120px;
    font-family: inherit;
}

.form-checkbox {
    width: 18px;
    height: 18px;
    accent-color: var(--primary-500);
}

.form-error {
    color: var(--error);
    font-size: var(--text-sm);
    margin-top: var(--spacing-1);
}

.form-input.error,
.form-select.error,
.form-textarea.error {
    border-color: var(--error);
    background: rgba(220, 38, 38, 0.05);
}

/* Breadcrumbs */
.breadcrumbs {
    background: var(--neutral-100);
    border-bottom: 1px solid var(--neutral-200);
    padding: var(--spacing-3) 0;
}

.breadcrumb-nav {
    display: flex;
    align-items: center;
    gap: var(--spacing-2);
    font-size: var(--text-sm);
}

.breadcrumb-link {
    color: var(--neutral-500);
    text-decoration: none;
    transition: var(--transition-fast);
}

.breadcrumb-link:hover {
    color: var(--primary-600);
}

.breadcrumb-separator {
    color: var(--neutral-400);
}

.breadcrumb-current {
    color: var(--neutral-700);
    font-weight: 500;
}

/* FAQ */
.faq {
    background: rgba(255, 255, 255, 0.573);
    border-radius: var(--radius-2xl);
    padding: var(--spacing-8);
    box-shadow: var(--shadow-md);
    border: 1px solid var(--neutral-100);
}

.faq-title {
    font-family: var(--font-display);
    font-size: var(--text-3xl);
    font-weight: 600;
    color: var(--neutral-800);
    margin-bottom: var(--spacing-8);
    text-align: center;
}

.faq-item {
    border-bottom: 1px solid var(--neutral-200);
    padding: var(--spacing-4) 0;
}

.faq-item:last-child {
    border-bottom: none;
}

.faq-question {
    width: 100%;
    font-style: italic;
    background: none;
    border: none;
    text-align: left;
    font-weight: 800;
    font-size: var(--text-lg);
    color: var(--neutral-800);
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--spacing-2) 0;
    transition: var(--transition-fast);
}

.faq-question:hover {
    color: var(--primary-600);
}

.faq-icon {
    transition: var(--transition-normal);
    color: var(--primary-500);
}

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

.faq-answer {
    padding: var(--spacing-4) 0 var(--spacing-2);
    color: var(--neutral-600);
    line-height: 1.6;
    display: none;
}

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

/* Footer */
.footer {
    background: var(--neutral-800);
    color: var(--neutral-300);
    position: relative;
}

.footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--primary-500), transparent);
}

.footer-content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--spacing-8);
    padding: var(--spacing-12) 0;
    text-align: center;
}

.footer-content .footer-section:last-child{
    padding: var(--spacing-5);
    background: #fee6d51c;
    border: 1px solid var(--neutral-600);
    border-radius: var(--radius-lg);
}

.footer-section h3 {
    font-family: var(--font-display);
    font-size: var(--text-lg);
    font-weight: 600;
    color: white;
    margin-bottom: var(--spacing-4);
}

.footer-links {
    list-style: none;
}

.footer-links li {
    margin-bottom: var(--spacing-2);
}

.footer-links a {
    color: var(--neutral-400);
    text-decoration: none;
    transition: var(--transition-fast);
}

.footer-links a:hover {
    color: var(--primary-400);
}

.footer-bottom {
    border-top: 1px solid var(--neutral-700);
    padding: var(--spacing-6) 0;
    text-align: center;
    color: var(--neutral-400);
    font-size: var(--text-sm);
}

/* Age Gate Modal */
.age-gate {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(5px);
    z-index: 1000;
    align-items: center;
    justify-content: center;
    padding: var(--spacing-4);
}

.age-gate.active {
    display: flex !important;
}

.age-gate-content {
    background: white;
    padding: var(--spacing-8);
    border-radius: var(--radius-2xl);
    max-width: 480px;
    width: 100%;
    margin: var(--spacing-4);
    text-align: center;
    box-shadow: var(--shadow-xl);
    animation: slideIn 0.3s ease-out;
}

@media (max-width: 640px) {
    .age-gate-content {
        padding: var(--spacing-6);
        margin: var(--spacing-2);
        border-radius: var(--radius-lg);
    }
    .section-alt .grid{
        grid-template-columns: 1fr 1fr;
    }
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.age-gate h2 {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    font-weight: 600;
    color: var(--neutral-800);
    margin-bottom: var(--spacing-4);
}

.age-gate p {
    color: var(--neutral-600);
    margin-bottom: var(--spacing-6);
    line-height: 1.6;
}

.age-gate-buttons {
    display: flex;
    gap: var(--spacing-4);
    justify-content: center;
    flex-wrap: wrap;
}

/* Extra small devices (mobile phones) */
@media (max-width: 480px) {
    .container {
        padding: 0 var(--spacing-4);
    }

    .hero {
        padding: var(--spacing-12) 0;
    }

    .hero-buttons {
        flex-direction: column;
        gap: var(--spacing-3);
    }

    .btn-lg {
        width: 100%;
        justify-content: center;
    }

    .form {
        padding: var(--spacing-4);
        margin: var(--spacing-4) 0;
    }

    .card {
        margin-bottom: var(--spacing-4);
    }

    .mobile-nav {
        padding: var(--spacing-4);
    }

    .section {
        padding: var(--spacing-10) 0;
    }

    .age-gate-buttons {
        flex-direction: column;
    }

    .nav {
        padding: var(--spacing-3) 0;
    }

    .logo {
        font-size: var(--text-xl);
    }

    /* Improve table readability on mobile */
    table {
        font-size: var(--text-sm);
    }

    .card-footer {
        flex-direction: column;
        gap: var(--spacing-2);
        align-items: stretch;
    }

    .card-footer .btn {
        width: auto;
        min-width: 110px;
        align-self: center;
        justify-content: center;
        padding: var(--spacing-2) var(--spacing-4);
        font-size: var(--text-sm);
    }

    .card-footer .tags {
        align-self: center;
        justify-content: center;
        margin-bottom: var(--spacing-2);
    }

    /* Stack form elements on very small screens */
    .form-grid,
    .form-grid-3 {
        grid-template-columns: 1fr !important;
    }
}
header{
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
}
/* Utility Classes */
.hidden {
    display: none;
}

.block {
    display: block;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Color utilities */
.text-primary {
    color: var(--primary-600);
}

.text-secondary {
    color: var(--secondary-600);
}

.text-neutral {
    color: var(--neutral-600);
}

.text-muted {
    color: var(--neutral-500);
}

.bg-primary {
    background-color: var(--primary-500);
}

.bg-secondary {
    background-color: var(--secondary-500);
}

.bg-neutral {
    background-color: var(--neutral-100);
}

/* Animation utilities */
.animate-fade {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.animate-fade.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Better responsive images */
.card-image {
    object-fit: cover;
    width: 100%;
    transition: transform 0.3s ease;
}

.card:hover .card-image {
    transform: scale(1.02);
}

/* Ensure consistent spacing */
.section {
    padding: var(--spacing-12) 0;
}

@media (min-width: 768px) {
    .section {
        padding: var(--spacing-16) 0;
    }
}

/* Дополнительные стили для стабильности */
.card {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.card-content {
    min-height: 300px;
}

/* Предотвращение переполнения */
* {
    box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
}

/* Улучшенные кнопки */
.btn {
    word-break: normal;
    hyphens: auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    box-sizing: border-box;
}

/* Отзывчивые кнопки */
@media (max-width: 768px) {
    .btn {
        width: 100%;
        max-width: none;
        white-space: normal;
        text-align: center;
        padding: var(--spacing-3) var(--spacing-4);
        font-size: var(--text-sm);
    }

    .btn-lg {
        padding: var(--spacing-4) var(--spacing-6);
        font-size: var(--text-base);
    }
}

/* Improve form field consistency */
.form-input,
.form-select,
.form-textarea {
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-input:focus,
.form-select:focus,
.form-textarea:focus {
    outline: 2px solid var(--primary-500);
    outline-offset: 2px;
}

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

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Tablet improvements */
@media (min-width: 768px) and (max-width: 1024px) {
    .container {
        padding: 0 var(--spacing-6);
    }

    .hero h1 {
        font-size: 3rem;
    }

    .section-title {
        font-size: 2.5rem;
    }

    .card-content {
        padding: var(--spacing-5);
    }

    /* Better spacing for tablets */
    .form {
        padding: var(--spacing-6);
    }

    /* Optimize button sizing */
    .btn-lg {
        padding: var(--spacing-3) var(--spacing-6);
        font-size: var(--text-base);
    }

    /* Profile grid improvements for tablets */
    .profile-grid {
        gap: var(--spacing-8);
    }

    .card-image {
        height: 500px;
    }

    /* Cities grid tablet fix */
    .cities-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: var(--spacing-6);
    }

    /* Better button layouts on tablets */
    .flex.gap-4 {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }
}

/* Responsive Design - улучшенная адаптивность */
@media (max-width: 640px) {
    .container {
        padding: 0 var(--spacing-4);
    }

    .hero-buttons {
        flex-direction: column;
        align-items: stretch;
        gap: var(--spacing-3);
    }

    .hero-buttons .btn {
        width: 100%;
        max-width: none;
        justify-content: center;
    }

    /* Кнопки в карточках - исправлено */
    .card-footer {
        flex-direction: column;
        gap: var(--spacing-3);
        align-items: stretch;
    }

    .card-footer .btn {
        width: auto;
        min-width: 120px;
        align-self: flex-end;
        justify-content: center;
        padding: var(--spacing-2) var(--spacing-4);
        font-size: var(--text-sm);
    }

    .card-footer .tags {
        align-self: flex-start;
        margin-bottom: var(--spacing-2);
    }

    .section {
        padding: var(--spacing-12) 0;
    }

    .form {
        padding: var(--spacing-6);
    }

    .form-grid {
        grid-template-columns: 1fr;
    }

    .age-gate-buttons {
        flex-direction: column;
        gap: var(--spacing-3);
    }

    /* Profile layout fixes - улучшенная адаптивность */
    .profile-grid {
        grid-template-columns: 1fr !important;
        gap: var(--spacing-6) !important;
    }

    .profile-grid > div:first-child {
        order: 2;
    }

    .profile-grid > div:last-child {
        order: 1;
        margin-bottom: var(--spacing-4);
    }

    /* Обеспечиваем корректные отступы для флекс элементов */
    .flex.gap-4 {
        flex-direction: column !important;
        gap: var(--spacing-3) !important;
        align-items: stretch !important;
    }

    .flex.gap-4 .btn {
        width: 100%;
        justify-content: center;
    }

    /* Model card images should maintain aspect ratio */
    .card-image {
        height: 300px;
    }

    /* Cities grid mobile fix */
    .cities-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: var(--spacing-4) !important;
    }

    /* Button group mobile fixes */
    .flex.gap-4 {
        flex-direction: column;
        gap: var(--spacing-3);
    }

    /* Form improvements */
    .form-grid {
        grid-template-columns: 1fr !important;
    }

    /* Table responsiveness */
    table {
        font-size: var(--text-sm);
    }

    table th,
    table td {
        padding: 0.5rem !important;
    }
}

/* Animation utilities for all pages */
.animate-fade {
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.animate-fade.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Image enhancements for consistent display across all pages */
.card-image {
    object-fit: cover;
    width: 100%;
    transition: transform 0.3s ease;
}

.section_modals .section-title{
    text-align: left;
}

.cta_section{
    position: relative;
}
.cta_section::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background-size: contain;
    bottom: 0;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg version='1.0' xmlns='http://www.w3.org/2000/svg' width='1280.000000pt' height='705.000000pt' viewBox='0 0 1280.000000 705.000000' preserveAspectRatio='xMidYMid meet'%3e%3cmetadata%3e Created by potrace 1.15, written by Peter Selinger 2001-2017 %3c/metadata%3e%3cg transform='translate(0.000000,705.000000) scale(0.100000,-0.100000)' fill='%23000000' stroke='none'%3e%3cpath d='M874 7041 c-104 -18 -226 -169 -195 -241 7 -14 22 -40 36 -58 18 -25 23 -42 19 -65 -14 -82 -37 -106 -172 -177 -76 -40 -94 -69 -91 -145 2 -38 -2 -60 -13 -72 -21 -24 -30 -146 -15 -201 8 -32 17 -44 35 -49 22 -5 23 -8 16 -57 -16 -99 2 -648 23 -702 3 -8 23 -22 44 -31 22 -8 39 -16 39 -17 0 -2 14 -42 30 -90 30 -85 53 -222 64 -382 4 -45 13 -104 21 -130 17 -57 11 -166 -12 -202 -8 -13 -19 -69 -24 -125 -5 -56 -12 -120 -16 -141 -5 -33 -2 -42 18 -57 58 -45 146 -9 135 54 -13 76 -18 182 -8 172 26 -26 43 -129 40 -241 -2 -66 1 -117 7 -123 6 -5 29 -12 51 -16 35 -5 46 -3 69 17 l27 24 -26 117 c-15 65 -31 129 -37 144 -20 52 -28 112 -38 268 -9 148 -9 165 9 219 11 33 20 82 20 110 0 73 16 165 51 293 28 100 35 116 75 156 l44 45 -1 98 c0 55 -4 205 -8 334 -8 262 3 376 40 416 19 20 19 26 8 130 -7 60 -13 127 -13 149 -1 22 -7 51 -15 64 -12 21 -11 23 3 18 22 -9 20 10 -3 22 -10 6 -28 27 -40 46 -22 38 -19 58 13 85 23 18 20 90 -8 189 -38 132 -91 172 -202 152z'/%3e%3cpath d='M6155 7031 c-52 -24 -121 -99 -134 -147 -13 -45 -15 -134 -3 -134 4 0 14 -27 21 -60 22 -98 -4 -133 -108 -147 -117 -15 -132 -44 -142 -263 -4 -101 -15 -206 -28 -269 -12 -58 -28 -184 -37 -280 -8 -97 -19 -192 -24 -211 -15 -63 -23 -197 -11 -204 7 -4 11 1 11 13 0 12 5 21 10 21 6 0 10 -7 10 -15 0 -9 7 -18 15 -21 20 -8 20 -17 -16 -184 -30 -143 -45 -180 -122 -320 -21 -39 -51 -120 -73 -200 -20 -74 -44 -151 -54 -170 -10 -19 -34 -85 -54 -145 -20 -61 -50 -130 -66 -154 -38 -56 -39 -86 -2 -99 54 -18 134 15 152 63 4 11 16 20 26 20 15 0 20 9 24 40 3 22 14 51 23 65 14 21 15 36 8 81 -16 95 -8 121 70 245 39 63 83 145 96 182 14 37 36 82 49 100 14 18 43 69 66 115 22 45 67 123 99 173 58 90 60 91 106 98 26 3 70 14 100 23 29 9 55 14 58 11 3 -3 12 -79 21 -169 8 -90 19 -188 24 -218 6 -30 10 -97 10 -149 0 -61 9 -143 26 -230 26 -134 26 -134 9 -221 -9 -47 -22 -96 -28 -109 -9 -18 -7 -29 7 -53 11 -19 16 -39 12 -55 -4 -15 0 -41 10 -65 15 -32 26 -41 66 -55 52 -17 103 -12 112 12 3 8 -4 38 -15 66 -12 32 -24 94 -29 162 -5 61 -12 129 -15 152 -3 22 -1 83 5 135 15 128 14 256 0 370 -13 97 -13 102 36 444 4 22 14 48 23 59 21 24 28 167 11 260 -11 62 -11 70 5 85 19 17 19 16 -1 -34 -3 -8 -1 -15 5 -15 6 0 11 4 11 9 0 25 115 179 201 268 112 119 179 213 179 253 0 35 -49 79 -175 157 -49 30 -126 79 -170 108 -103 68 -133 83 -218 106 -128 36 -149 58 -106 113 15 20 25 24 32 17 16 -16 24 -14 46 11 48 50 65 195 33 278 -14 36 -27 50 -67 72 -59 32 -77 34 -130 9z m404 -770 c58 -33 130 -69 159 -81 28 -12 52 -27 52 -32 0 -17 -149 -226 -177 -247 -15 -12 -41 -21 -62 -21 -20 0 -56 -9 -80 -20 -24 -11 -47 -20 -51 -20 -7 0 -34 79 -45 138 -6 31 2 99 27 235 11 57 39 107 60 107 6 0 59 -27 117 -59z m-660 -299 c0 -52 -6 -84 -43 -257 -32 -146 -55 -213 -67 -194 -18 28 -8 92 37 236 26 81 49 176 52 210 5 72 22 75 21 5z m581 -140 c0 -5 -11 -19 -24 -31 l-24 -23 -12 21 c-8 17 -8 22 2 25 7 3 20 7 28 9 23 8 30 8 30 -1z m20 -116 c0 -3 -4 -8 -10 -11 -5 -3 -10 -1 -10 4 0 6 5 11 10 11 6 0 10 -2 10 -4z m-305 -406 c-16 -16 -25 -30 -19 -30 12 -1 -15 -16 -45 -25 -15 -4 -21 -3 -17 3 9 15 -19 33 -39 25 -13 -5 -16 -3 -10 6 5 9 21 12 50 8 36 -5 46 -3 65 18 13 14 28 25 34 25 5 0 -3 -13 -19 -30z'/%3e%3cpath d='M9213 7034 c-61 -21 -143 -132 -143 -195 0 -13 -4 -30 -9 -37 -10 -16 -141 -52 -190 -52 -37 0 -165 -64 -190 -94 -27 -32 -5 -62 71 -99 40 -20 99 -45 130 -57 31 -12 67 -29 79 -39 l21 -17 -20 -40 c-11 -21 -32 -50 -47 -64 -57 -53 -68 -84 -61 -168 3 -42 13 -124 23 -182 l16 -106 -33 -103 c-26 -82 -31 -112 -27 -152 7 -58 42 -135 75 -164 l23 -20 -65 -161 c-96 -243 -119 -312 -112 -349 4 -17 25 -62 47 -100 23 -37 54 -98 69 -136 16 -37 65 -134 110 -214 76 -136 82 -150 76 -188 -10 -64 -55 -138 -99 -163 -21 -12 -37 -25 -35 -30 2 -5 6 -8 11 -6 4 1 7 -7 7 -18 0 -23 -4 -24 -31 -10 -32 18 -24 -18 13 -51 27 -26 37 -30 82 -27 51 3 51 3 77 56 14 29 31 58 37 64 18 18 16 -30 -3 -65 -10 -19 -11 -35 -5 -51 10 -28 29 -36 78 -35 31 1 44 9 76 45 l39 44 -17 43 c-9 23 -16 61 -16 83 0 40 1 41 33 40 24 -1 42 -11 65 -36 17 -19 32 -30 32 -24 0 6 -11 21 -25 34 -14 13 -25 33 -25 45 0 12 -9 30 -19 39 -11 10 -23 30 -26 46 -7 32 -40 50 -90 50 -34 0 -35 1 -35 43 0 23 5 107 10 185 9 120 8 159 -5 235 -17 100 -18 88 32 375 21 118 33 160 69 237 25 52 50 118 56 147 10 50 9 58 -21 128 -17 41 -53 113 -81 159 -27 46 -50 89 -50 95 0 6 7 20 15 30 8 11 15 29 15 41 0 41 56 113 109 140 37 18 61 41 93 87 42 62 43 65 42 143 0 139 -13 374 -23 437 -12 74 -45 144 -78 165 -37 24 -106 32 -150 17z m-115 -351 c20 -53 24 -93 10 -98 -22 -8 -211 19 -215 31 -5 16 42 45 117 70 82 28 76 29 88 -3z m-89 -1784 c12 -57 8 -71 -14 -48 -15 14 -19 36 -17 77 3 39 20 24 31 -29z'/%3e%3cpath d='M11552 7029 c-32 -16 -51 -36 -74 -75 -36 -65 -43 -66 -176 -24 -107 35 -236 49 -270 31 -31 -17 -28 -65 8 -126 16 -27 75 -99 130 -160 132 -144 145 -172 142 -297 -1 -53 2 -107 7 -121 5 -13 17 -64 25 -113 9 -49 18 -98 21 -109 4 -13 -10 -46 -39 -95 -72 -119 -80 -156 -81 -371 0 -200 3 -215 52 -221 21 -2 29 -13 47 -63 15 -44 28 -63 49 -73 15 -7 28 -21 28 -30 3 -44 10 -89 19 -121 17 -61 12 -106 -20 -166 -37 -70 -38 -107 -9 -283 25 -155 19 -224 -36 -418 -22 -76 -19 -109 10 -128 33 -21 78 -20 99 3 13 14 16 35 15 87 -1 38 3 101 9 139 7 39 12 101 12 138 0 89 20 208 33 200 8 -5 6 -188 -4 -378 0 -5 0 -59 2 -118 2 -123 9 -137 68 -137 64 0 99 49 68 95 -7 11 -22 43 -32 70 -29 77 -23 155 31 365 48 189 50 214 43 400 -2 63 6 132 37 297 2 12 15 34 28 50 24 29 39 95 51 222 4 35 15 86 26 113 10 27 19 59 19 72 0 53 -35 133 -102 232 l-72 105 28 56 c15 31 36 97 47 147 11 54 29 104 44 126 14 20 25 49 25 64 0 27 2 28 31 22 29 -5 31 -4 26 16 -4 12 -2 27 4 34 7 9 5 22 -5 43 -9 16 -16 35 -16 40 0 6 52 61 115 122 148 144 189 225 122 243 -50 13 -229 1 -299 -20 -13 -4 -21 4 -32 29 -18 43 -54 77 -82 77 -12 0 -35 7 -50 15 -40 20 -71 19 -122 -6z m-207 -203 l40 -12 0 -65 0 -66 -65 44 c-36 23 -78 59 -93 78 l-28 35 53 -1 c29 0 71 -6 93 -13z m580 -5 l30 -6 -48 -40 c-26 -22 -53 -40 -60 -40 -14 0 -32 58 -24 79 7 17 45 19 102 7z'/%3e%3cpath d='M3395 6987 c-22 -6 -46 -20 -54 -30 -11 -15 -21 -18 -50 -12 -58 10 -101 7 -126 -9 -37 -24 -66 -96 -67 -168 -2 -79 12 -207 23 -214 5 -3 9 -16 9 -30 0 -19 -5 -24 -24 -24 -67 0 -107 -49 -121 -145 -17 -117 -47 -243 -70 -290 -13 -27 -35 -79 -48 -115 -13 -36 -36 -89 -51 -118 l-26 -52 -51 0 c-53 0 -109 -22 -109 -43 0 -6 -3 -22 -6 -34 -5 -17 -2 -23 9 -23 8 0 17 -9 20 -20 5 -21 27 -28 27 -9 0 5 5 7 10 4 6 -3 10 3 10 13 0 32 25 45 74 38 l45 -7 71 96 c93 126 129 186 156 259 18 49 24 57 30 41 4 -11 21 -54 37 -95 33 -82 38 -149 18 -215 -7 -22 -14 -116 -16 -208 -4 -175 -1 -205 45 -362 11 -38 29 -122 40 -185 l20 -114 -21 -81 c-36 -133 -37 -150 -27 -328 8 -157 8 -180 -12 -276 -11 -57 -24 -140 -27 -183 l-6 -78 36 -15 c42 -17 100 -20 128 -5 19 11 27 50 10 50 -14 0 -34 149 -33 247 1 72 11 129 41 250 22 87 43 187 46 223 4 36 16 99 26 142 14 57 19 112 19 219 0 78 3 139 7 136 10 -10 12 -335 2 -387 -5 -28 -2 -112 8 -226 15 -169 15 -185 0 -223 -10 -23 -17 -57 -17 -77 0 -19 -7 -64 -16 -99 -16 -64 -16 -65 7 -112 22 -44 27 -48 64 -51 46 -3 79 12 56 27 -11 7 -11 13 -1 32 9 17 11 60 6 165 l-7 141 41 164 c40 158 53 284 35 331 -11 29 16 181 55 302 56 176 74 308 60 431 -12 114 -37 172 -109 255 -81 94 -85 102 -77 180 3 39 14 89 23 111 14 35 14 49 5 86 -10 36 -9 49 3 72 25 49 65 90 129 133 87 58 181 142 207 185 l23 36 -52 48 c-28 26 -86 63 -128 83 -79 38 -176 100 -232 148 -35 30 -38 31 -97 15z m76 -116 c49 -10 68 -22 161 -105 l106 -93 -32 -15 c-17 -8 -71 -36 -120 -62 -52 -28 -86 -42 -83 -33 9 23 -36 168 -76 245 -41 78 -43 87 -24 79 7 -2 38 -10 68 -16z m16 -303 c-3 -8 -6 -5 -6 6 -1 11 2 17 5 13 3 -3 4 -12 1 -19z'/%3e%3cpath d='M784 3126 c-28 -19 -72 -44 -98 -56 -56 -27 -83 -63 -95 -125 -5 -28 -19 -58 -35 -74 -30 -31 -34 -46 -9 -37 37 15 -30 -43 -83 -71 -30 -15 -54 -32 -54 -37 0 -4 6 -6 13 -3 52 22 53 22 36 1 -29 -33 -111 -186 -104 -192 4 -4 11 1 16 10 19 34 89 92 89 74 0 -2 -20 -39 -45 -82 -45 -80 -53 -104 -35 -104 6 0 10 -5 10 -11 0 -15 -65 -143 -96 -188 -13 -20 -24 -42 -24 -49 0 -8 -35 -80 -79 -160 -109 -205 -107 -200 -126 -267 -9 -33 -25 -78 -35 -100 -19 -42 -36 -125 -26 -125 4 0 10 10 15 23 8 21 9 20 18 -13 l10 -35 15 30 c8 17 19 48 23 70 14 79 48 102 63 43 4 -17 13 -33 19 -35 12 -4 12 6 -9 140 l-10 67 58 62 c77 84 132 154 155 200 23 45 34 46 98 14 l48 -25 -4 -53 c-3 -29 -15 -106 -27 -171 -21 -109 -22 -124 -10 -210 22 -148 50 -267 67 -280 35 -27 76 -283 77 -479 0 -59 7 -136 15 -171 52 -226 78 -387 78 -482 0 -56 -6 -118 -13 -139 -11 -34 -10 -39 11 -62 26 -28 46 -30 92 -8 l34 16 -2 142 c-2 109 -6 150 -20 181 -14 33 -17 66 -15 215 1 96 -2 276 -8 400 -17 338 -16 382 6 378 16 -3 17 -24 18 -253 l1 -250 28 -58 c26 -57 27 -63 21 -170 -12 -199 -10 -250 7 -283 23 -45 45 -50 79 -17 48 46 54 87 33 218 -16 96 -17 125 -7 173 6 31 16 95 22 141 10 73 9 89 -6 132 -18 49 -18 51 11 197 16 81 34 161 41 178 8 18 23 83 34 145 16 92 20 155 20 350 0 231 1 239 21 249 11 7 22 10 23 8 2 -2 21 -37 42 -78 21 -41 57 -98 80 -125 82 -102 79 -91 50 -205 -30 -116 -29 -110 -16 -110 5 0 16 16 24 35 8 19 20 35 25 35 17 0 31 -36 31 -78 0 -43 17 -102 30 -102 4 0 11 15 15 33 7 28 9 29 12 10 3 -13 9 -23 15 -23 11 0 2 94 -12 120 -4 8 -13 51 -20 95 -7 44 -25 109 -41 145 -40 91 -109 280 -109 298 0 8 -11 40 -24 71 -14 31 -38 101 -55 156 -39 130 -75 187 -139 219 -49 25 -62 44 -62 93 0 13 19 41 46 68 l47 45 -6 68 c-7 87 -75 228 -122 251 -16 8 -38 18 -47 23 -32 15 -63 8 -114 -26z'/%3e%3cpath d='M4932 3140 c-32 -14 -47 -29 -58 -57 -9 -21 -24 -47 -34 -58 -22 -24 -46 -115 -56 -210 -3 -38 -13 -83 -21 -99 -9 -16 -17 -43 -18 -60 -4 -39 -49 -165 -83 -231 -18 -35 -26 -69 -28 -111 -2 -58 -4 -64 -43 -102 -39 -38 -42 -45 -46 -104 -3 -35 -1 -69 4 -77 5 -8 36 -16 74 -20 37 -4 69 -10 72 -13 7 -7 -25 -104 -61 -182 l-27 -60 38 -32 c37 -31 37 -32 21 -55 -9 -13 -16 -35 -16 -49 0 -14 -9 -57 -20 -95 -40 -140 -100 -460 -100 -536 0 -15 16 -51 36 -80 82 -119 241 -472 232 -517 -2 -9 -14 -19 -28 -22 -18 -4 -32 -21 -48 -55 -35 -73 -49 -85 -98 -85 -24 0 -46 -5 -50 -12 -14 -23 29 -38 108 -38 65 0 81 3 98 20 30 30 43 25 25 -9 -20 -39 -32 -46 -80 -46 -31 0 -40 -4 -43 -19 -2 -11 4 -26 14 -33 24 -17 145 -17 214 1 30 8 80 17 110 21 81 11 90 22 90 121 0 80 11 171 46 388 16 97 15 152 -5 261 -13 66 -13 272 -1 415 5 63 12 189 14 280 2 91 7 202 12 247 6 70 4 91 -16 150 l-22 68 52 130 c71 178 99 350 66 413 -8 15 -26 38 -40 51 -23 22 -26 32 -25 81 1 31 -3 66 -10 77 -6 12 -11 47 -11 79 0 55 -19 132 -46 186 -8 14 -14 33 -14 41 0 13 -95 57 -123 57 -7 0 -31 -9 -55 -20z m-37 -1957 c13 -176 22 -232 50 -285 22 -42 27 -68 32 -157 3 -58 2 -146 -2 -195 -7 -85 -8 -88 -25 -70 -19 21 -65 151 -100 281 -12 46 -39 111 -61 147 -45 75 -46 90 -18 182 32 104 83 194 110 194 4 0 10 -44 14 -97z'/%3e%3cpath d='M3066 3127 c-23 -23 -30 -25 -47 -16 -28 15 -65 4 -72 -21 -5 -18 -8 -19 -31 -9 -35 16 -44 4 -24 -31 14 -24 14 -31 4 -37 -27 -16 -35 -50 -29 -120 4 -47 2 -72 -6 -77 -7 -5 0 -17 20 -34 37 -30 70 -98 71 -145 1 -18 7 -41 15 -53 7 -11 10 -24 6 -27 -3 -4 -1 -7 5 -7 16 0 24 17 12 25 -5 3 -10 17 -10 31 0 14 4 22 10 19 6 -3 7 1 4 9 -3 9 -10 16 -15 16 -5 0 -9 5 -9 11 0 18 24 4 37 -21 9 -18 9 -26 1 -31 -9 -6 -9 -11 0 -22 30 -36 -19 -68 -98 -65 l-54 3 -24 -50 c-14 -27 -29 -79 -34 -115 -17 -112 -34 -192 -60 -280 -40 -134 -46 -166 -59 -324 -9 -117 -9 -164 0 -220 17 -97 29 -149 42 -183 10 -26 12 -26 19 -8 5 13 10 -12 14 -70 4 -49 11 -120 17 -157 17 -121 13 -159 -23 -213 -18 -26 -45 -67 -60 -90 -17 -26 -33 -72 -43 -120 -9 -51 -22 -86 -36 -101 -17 -19 -19 -26 -10 -38 14 -16 9 -55 -12 -88 -18 -28 -22 -47 -42 -176 -18 -120 -10 -152 47 -196 52 -39 75 -35 99 19 17 39 19 56 12 118 -8 66 -6 93 11 200 13 81 130 327 188 395 52 61 63 92 78 222 11 101 30 220 37 232 2 4 10 5 17 2 10 -4 13 -41 14 -162 0 -86 5 -181 11 -211 6 -29 9 -83 6 -120 -3 -36 -7 -133 -9 -216 -3 -96 -10 -168 -20 -200 -9 -27 -16 -69 -16 -91 0 -23 -7 -61 -15 -84 -41 -116 2 -174 103 -139 44 15 56 52 48 157 -5 75 0 153 18 277 3 17 14 68 26 115 19 71 22 112 21 250 -1 155 1 173 32 295 l33 130 43 15 c37 13 43 13 51 0 10 -16 10 -17 33 30 l17 35 -6 -32 c-3 -18 -1 -33 4 -33 21 0 54 175 47 250 -17 188 -47 397 -75 510 -11 47 -23 130 -26 185 -8 147 -40 225 -92 225 -14 0 -38 14 -58 34 -33 33 -34 37 -33 108 1 81 9 120 24 118 6 0 9 -26 8 -60 -2 -32 1 -62 6 -65 17 -10 24 87 12 150 -10 49 -9 68 3 109 14 47 14 49 -10 75 -13 14 -31 40 -39 58 -9 18 -21 33 -26 33 -19 0 -39 28 -39 53 0 14 -8 35 -19 48 l-18 23 -27 -27z m219 -1107 c14 -91 39 -203 54 -250 46 -137 53 -178 38 -228 l-13 -44 -18 84 c-22 105 -51 168 -109 239 -66 81 -68 107 -21 249 21 65 40 117 41 116 1 -1 14 -76 28 -166z m-491 -265 c-12 -49 -23 -100 -23 -112 -1 -33 -21 -28 -21 5 0 38 55 211 64 201 2 -2 -7 -44 -20 -94z m-41 -296 c-5 -52 -8 -59 -14 -37 -6 25 8 114 17 105 2 -2 1 -33 -3 -68z'/%3e%3cpath d='M7595 3135 c-60 -17 -85 -45 -85 -94 0 -32 -6 -43 -41 -70 -25 -20 -52 -57 -72 -97 -17 -35 -34 -64 -38 -64 -4 0 -1 24 7 53 19 73 18 99 -3 95 -13 -2 -22 -23 -35 -78 l-16 -75 -1 67 c-1 63 -12 91 -26 68 -3 -5 -9 -42 -12 -80 -6 -73 -19 -83 -25 -20 -2 23 -8 35 -18 35 -10 0 -14 -9 -13 -25 1 -14 7 -77 12 -140 6 -63 11 -215 11 -337 0 -123 5 -245 11 -273 6 -28 8 -54 4 -58 -3 -3 -71 -9 -150 -12 -79 -3 -146 -7 -148 -10 -3 -3 -17 -81 -32 -175 -56 -360 -88 -520 -160 -810 -91 -362 -181 -780 -177 -816 2 -19 17 -33 55 -56 56 -33 100 -46 217 -64 41 -6 80 -14 85 -18 6 -3 26 -6 45 -7 19 0 123 -6 230 -13 130 -9 235 -10 315 -5 l120 9 31 48 c18 27 42 59 54 72 29 31 28 51 -5 355 -32 286 -43 363 -61 425 -18 60 -52 289 -94 630 -28 229 -41 324 -56 398 -5 25 -9 27 -55 27 -27 0 -49 3 -49 6 0 3 33 45 73 93 41 48 95 119 122 157 27 38 51 71 53 74 2 3 14 -7 28 -23 25 -30 54 -113 54 -159 0 -58 63 -89 138 -69 42 11 45 10 80 -20 41 -36 90 -59 128 -59 14 0 87 -15 162 -34 76 -19 162 -38 193 -41 31 -4 61 -10 68 -14 6 -4 16 -55 21 -115 13 -135 41 -282 87 -456 36 -137 50 -173 86 -222 45 -61 93 -558 68 -702 -15 -85 -58 -216 -77 -236 -8 -8 -31 -19 -51 -25 -20 -6 -38 -15 -40 -20 -1 -6 14 -21 34 -35 30 -20 51 -26 115 -29 l79 -3 37 43 c20 24 67 75 105 114 38 41 67 80 67 92 0 11 -12 41 -26 67 -34 61 -41 139 -20 238 24 117 36 249 26 309 -4 30 -23 117 -40 194 -37 161 -45 221 -61 470 -9 144 -8 196 2 260 8 44 14 114 14 155 0 64 -4 82 -28 122 -28 49 -90 104 -142 128 -17 7 -81 15 -151 18 -111 4 -121 6 -130 26 -7 18 -20 22 -80 27 -76 7 -161 38 -170 63 -3 8 -78 79 -165 157 l-160 142 6 51 c9 81 -9 220 -36 272 -37 71 -90 104 -175 109 -43 3 -88 -1 -119 -10z m-154 -372 c7 -8 3 -16 -12 -27 -41 -28 -50 -1 -22 62 l17 37 4 -30 c2 -16 8 -35 13 -42z m114 -83 c14 -27 14 -31 -9 -65 -14 -20 -41 -78 -61 -129 -38 -100 -82 -173 -95 -159 -11 12 -28 96 -35 183 l-7 75 46 56 c76 93 127 105 161 39z'/%3e%3cpath d='M10344 1971 c-38 -24 -63 -48 -67 -62 -9 -37 -25 -295 -24 -384 1 -66 -3 -92 -26 -145 -19 -47 -32 -109 -47 -225 -11 -88 -30 -189 -41 -225 -17 -49 -23 -102 -28 -215 l-6 -150 -77 -5 c-42 -3 -82 -10 -89 -17 -35 -35 66 -61 186 -48 l64 6 10 52 c9 49 46 270 57 347 7 44 69 200 88 218 11 12 25 -9 89 -140 61 -124 77 -165 82 -218 4 -36 14 -78 23 -95 10 -20 14 -53 13 -102 -3 -87 13 -120 73 -154 35 -20 58 -24 157 -27 113 -4 117 -3 175 26 47 25 81 33 169 43 117 13 169 30 240 79 l44 30 35 -43 c41 -50 61 -94 71 -154 11 -67 34 -88 122 -111 91 -23 196 -39 309 -48 80 -7 81 -6 103 21 12 16 20 33 18 38 -1 5 -42 27 -91 48 -103 44 -179 92 -155 97 16 3 187 -67 289 -118 63 -32 76 -45 105 -104 l20 -41 70 -6 c39 -3 91 -2 117 3 39 8 53 6 90 -13 23 -12 54 -30 67 -40 13 -11 37 -19 53 -19 16 0 52 -7 80 -17 54 -17 80 -11 86 21 6 26 -98 121 -176 160 -39 20 -98 53 -131 74 -33 22 -86 50 -118 62 -100 40 -227 117 -527 318 -307 206 -302 203 -391 190 -16 -3 -31 23 -95 165 -61 137 -83 176 -117 208 -36 33 -49 39 -85 39 -55 0 -88 -26 -193 -154 -43 -53 -82 -96 -86 -96 -4 0 -12 14 -18 32 -9 26 -8 38 9 73 34 71 25 114 -36 172 -33 31 -34 35 -34 108 0 73 -1 76 -31 94 -17 10 -53 22 -80 25 -79 11 -77 9 -63 75 17 83 12 211 -9 241 -9 14 -17 32 -17 41 0 35 -119 109 -173 109 -12 0 -50 -18 -83 -39z'/%3e%3c/g%3e%3c/svg%3e");
    opacity: 0.1;
    z-index: -1;
}
.cta_section p{
    color:var(--primary-900) !important;
    font-weight: 600;
}
.cta_section h2{
    font-weight: 900;
    color: var(--neutral-900);
    background: var(--primary-400);
    display: inline-block;
}
.cta_section .btn{
    animation: moves 3s ease-in-out infinite;
}

@keyframes moves {
    0%{
        transform: scale(1);
        box-shadow: 0 1px 5px var(--neutral-400);
    }
     50%{
        transform: scale(1.1);
        box-shadow: 0 1px 5px var(--neutral-600);
    }
    0%{
        transform: scale(1);
        box-shadow: 0 1px 5px var(--neutral-400);
    }
}

.section_modals .section-subtitle{
    text-align: left;
    margin-left: 0;
}
.card-image:hover {
    transform: scale(1.02);
}

/* Общий класс для profile grid */
.profile-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-8);
    align-items: start;
}

/* Полноэкранные десктопы */
@media (min-width: 1200px) {
    .profile-grid {
        gap: var(--spacing-12);
    }

    .profile-grid .card-image {
        height: 700px;
    }
}

/* Ensure city page layouts are consistent */
.city-hero {
    padding: var(--spacing-16) 0;
    background: linear-gradient(135deg, var(--primary-50) 0%, var(--secondary-50) 100%);
}

.city-content {
    padding: var(--spacing-12) 0;
}

/* Enhanced tablet responsive styles - планшеты */
@media (max-width: 1024px) and (min-width: 641px) {
    .profile-grid {
        gap: var(--spacing-8);
        grid-template-columns: 1fr 1fr;
        align-items: start;
    }

    .cities-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: var(--spacing-6);
    }

    .hero-buttons {
        gap: var(--spacing-4);
        justify-content: center;
    }

    .container {
        padding: 0 var(--spacing-6);
    }

    /* Профиль модели на планшете */
    .profile-grid .card-image {
        height: 400px;
        object-fit: cover;
    }

    .flex.gap-4 {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: var(--spacing-3);
    }

    .flex.gap-4 .btn {
        width: auto;
        flex: 1;
        min-width: 140px;
    }

    /* Кнопки View Profile на планшетах */
    .card-footer {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: var(--spacing-3);
    }

    .card-footer .btn {
        width: auto;
        min-width: 110px;
        white-space: nowrap;
        flex-shrink: 0;
        padding: var(--spacing-2) var(--spacing-4);
    }

    .card-footer .tags {
        flex: 1;
    }
}
