:root{--color-primary: #534ab7;--color-primary-light: #7f77dd;--color-primary-dark: #3c3489;--color-primary-50: #eeedfe;--color-primary-100: #cecbf6;--color-teal: #1d9e75;--color-teal-light: #e1f5ee;--color-amber: #ba7517;--color-amber-light: #faeeda;--color-coral: #d85a30;--color-coral-light: #faece7;--color-gray-50: #f1efe8;--color-gray-100: #d3d1c7;--color-gray-400: #888780;--color-gray-600: #5f5e5a;--color-gray-900: #2c2c2a;--color-text-primary: #1a1a2e;--color-text-secondary: #5f5e5a;--color-text-muted: #888780;--color-bg-primary: #ffffff;--color-bg-secondary: #f8f7fe;--color-bg-dark: #1a1a2e;--page-hero-gradient: linear-gradient(135deg, var(--color-bg-dark) 0%, var(--color-primary-dark) 100%);--page-hero-padding-block: clamp(2.5rem, 5vw, 4rem);--page-hero-inner-max: 1200px;--page-hero-grid-gap: clamp(1.75rem, 4vw, 2.5rem);--page-hero-title-size: clamp(2rem, 4vw, 3rem);--page-hero-lead-size: var(--font-size-lg);--page-hero-eyebrow-size: var(--font-size-sm);--page-hero-min-height-banner: clamp(380px, 52vh, 560px);--page-hero-on-gradient: var(--color-bg-primary);--page-hero-on-gradient-muted: color-mix(in srgb, var(--page-hero-on-gradient) 75%, transparent);--page-hero-on-gradient-subtle: color-mix(in srgb, var(--page-hero-on-gradient) 82%, transparent);--page-hero-border: color-mix(in srgb, var(--page-hero-on-gradient) 8%, transparent);--surface-glass-bg: color-mix(in srgb, var(--color-bg-primary) 90%, transparent);--surface-glass-border: color-mix(in srgb, var(--color-primary) 14%, var(--color-gray-100));--surface-glass-shadow: var(--shadow-xl);--hero-glow-primary: color-mix(in srgb, var(--color-primary-light) 38%, transparent);--hero-glow-accent: color-mix(in srgb, var(--color-primary) 28%, transparent);--section-accent-gradient: linear-gradient(90deg, var(--color-primary), var(--color-primary-light));--color-bg-overlay: color-mix(in srgb, var(--color-text-primary) 56%, transparent);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 3px rgba(83, 74, 183, .08);--shadow-md: 0 4px 16px rgba(83, 74, 183, .12);--shadow-lg: 0 8px 32px rgba(83, 74, 183, .16);--shadow-xl: 0 24px 64px color-mix(in srgb, var(--color-text-primary) 22%, transparent);--font-sans: "Inter", "Segoe UI", system-ui, sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 24px;--font-size-2xl: 32px;--font-size-3xl: 48px;--font-size-4xl: 64px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--layout-max-sm: 640px;--layout-max-md: 768px;--layout-max-lg: 1024px;--layout-max-xl: 1200px;--layout-max-2xl: 1280px;--layout-max-3xl: 1440px;--layout-gutter: clamp(var(--space-4), 3vw, var(--space-6));--layout-nav-height: 64px;--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--z-skip-link: 600;--focus-ring-width: 3px;--focus-ring-color: color-mix(in srgb, var(--color-primary-light) 55%, transparent);--focus-ring-offset: 2px;--color-surface-elevated: var(--color-bg-primary);--color-border-subtle: color-mix(in srgb, var(--color-primary) 10%, var(--color-gray-100));--color-on-primary: var(--color-bg-primary);--footer-on-dark: color-mix(in srgb, var(--color-bg-primary) 92%, transparent);--footer-on-dark-muted: color-mix(in srgb, var(--color-bg-primary) 78%, transparent);--footer-on-dark-subtle: color-mix(in srgb, var(--color-bg-primary) 55%, transparent);--footer-on-dark-faint: color-mix(in srgb, var(--color-bg-primary) 45%, transparent);--footer-border: color-mix(in srgb, var(--color-bg-primary) 10%, transparent);--property-overlay-scrim: color-mix(in srgb, var(--color-text-primary) 56%, transparent);--property-overlay-badge: color-mix(in srgb, var(--color-text-primary) 55%, transparent);--property-overlay-on-scrim: var(--color-on-primary);--property-nav-bg: var(--surface-glass-bg);--property-thumb-active: var(--color-primary);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .35s ease;--dash-border-faint: color-mix(in srgb, var(--color-primary) 6%, var(--color-gray-100));--dash-border-soft: color-mix(in srgb, var(--color-primary) 10%, var(--color-gray-100));--dash-border-default: color-mix(in srgb, var(--color-primary) 14%, var(--color-gray-100));--dash-border-strong: color-mix(in srgb, var(--color-primary) 22%, var(--color-gray-100));--dash-row-divider: color-mix(in srgb, var(--color-primary) 8%, var(--color-gray-100));--dash-row-hover-bg: color-mix(in srgb, var(--color-primary) 5.5%, var(--color-bg-primary));--dash-row-hover-accent: color-mix(in srgb, var(--color-primary) 8%, var(--color-bg-primary));--dash-tab-hover-bg: color-mix(in srgb, var(--color-primary) 5%, var(--color-bg-primary));--dash-pagination-bg: color-mix(in srgb, var(--color-gray-50) 72%, var(--color-bg-primary));--dash-segment-bg: color-mix(in srgb, var(--color-primary) 5%, var(--color-gray-50));--dash-segment-border: color-mix(in srgb, var(--color-primary) 12%, var(--color-gray-100));--dash-overlay-scrim: color-mix(in srgb, var(--color-primary-dark) 38%, transparent);--dash-overlay-modal: color-mix(in srgb, var(--color-primary-dark) 52%, transparent);--dash-surface-border: color-mix(in srgb, var(--color-text-primary) 10%, var(--color-gray-100));--dash-control-border: color-mix(in srgb, var(--color-text-primary) 12%, var(--color-gray-100));--dash-control-border-hover: color-mix(in srgb, var(--color-text-primary) 20%, var(--color-gray-100));--dash-shadow-card: 0 1px 2px color-mix(in srgb, var(--color-text-primary) 4.5%, transparent);--dash-shadow-card-hover: 0 4px 14px color-mix(in srgb, var(--color-text-primary) 8%, transparent);--dash-primary-focus-ring: color-mix(in srgb, var(--color-primary-light) 35%, transparent);--dash-scrim-neutral: color-mix(in srgb, var(--color-gray-900) 50%, transparent);--dash-btn-top-line: color-mix(in srgb, white 65%, transparent);--dash-brand-gradient: linear-gradient(135deg, var(--color-bg-dark) 0%, var(--color-primary-dark) 60%, var(--color-primary) 100%);--dash-sidebar-gradient: linear-gradient( 180deg, var(--color-bg-dark) 0%, color-mix(in srgb, var(--color-bg-dark) 72%, var(--color-primary-dark)) 100% );--dash-accent-gradient: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);--dash-on-brand: var(--page-hero-on-gradient);--dash-on-brand-muted: var(--page-hero-on-gradient-muted);--dash-on-brand-subtle: var(--page-hero-on-gradient-subtle);--dash-on-brand-border: var(--page-hero-border);--dash-on-brand-faint: color-mix(in srgb, var(--dash-on-brand) 45%, transparent);--dash-on-brand-soft: color-mix(in srgb, var(--dash-on-brand) 55%, transparent);--dash-surface-tint: color-mix(in srgb, var(--color-primary) 6%, transparent);--dash-surface-tint-strong: color-mix(in srgb, var(--color-primary) 8%, transparent);--dash-primary-glow: color-mix(in srgb, var(--color-primary) 40%, transparent);--dash-role-guest-bg: color-mix(in srgb, var(--color-teal) 20%, transparent);--dash-role-host-bg: color-mix(in srgb, var(--color-primary) 35%, transparent);--dash-role-admin-bg: color-mix(in srgb, var(--color-coral) 20%, transparent)}:root{--primary: var(--color-primary);--primary-light: var(--color-primary-light);--primary-dark: var(--color-primary-dark);--primary-50: var(--color-primary-50);--primary-100: var(--color-primary-100);--success: var(--color-teal);--success-light: var(--color-teal-light);--warning: var(--color-amber);--warning-light: var(--color-amber-light);--error: var(--color-coral);--error-light: var(--color-coral-light);--gray-50: var(--color-gray-50);--gray-100: var(--color-gray-100);--gray-400: var(--color-gray-400);--gray-600: var(--color-gray-600);--gray-900: var(--color-gray-900);--text-primary: var(--color-text-primary);--text-secondary: var(--color-text-secondary);--text-muted: var(--color-text-muted)}html.dark{--primary: #7f77dd;--primary-light: #a09ae8;--primary-dark: #534ab7;--primary-50: rgba(127, 119, 221, .12);--primary-100: rgba(127, 119, 221, .2);--success: #34d399;--success-light: rgba(52, 211, 153, .12);--warning: #fbbf24;--warning-light: rgba(251, 191, 36, .12);--error: #f87171;--error-light: rgba(248, 113, 113, .12);--color-bg-primary: #0f0f1a;--color-bg-secondary: #161625;--color-bg-tertiary: #1e1e30;--color-bg-elevated: #252538;--color-bg-overlay: rgba(0, 0, 0, .7);--color-surface-primary: #1a1a2e;--color-surface-secondary: #1e1e30;--color-surface-tertiary: #252538;--color-border-primary: rgba(255, 255, 255, .08);--color-border-secondary: rgba(255, 255, 255, .05);--color-border-tertiary: rgba(255, 255, 255, .03);--text-primary: #f1f0ff;--text-secondary: color-mix(in srgb, var(--text-primary) 78%, transparent);--text-muted: color-mix(in srgb, var(--text-primary) 58%, transparent);--color-text-primary: var(--text-primary);--color-text-secondary: var(--text-secondary);--color-text-muted: var(--text-muted);--gray-50: #1a1a2e;--gray-100: #1e1e30;--gray-200: rgba(255, 255, 255, .1);--gray-400: rgba(255, 255, 255, .42);--gray-600: rgba(255, 255, 255, .68);--gray-900: var(--text-primary);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6);--shadow-xl: 0 24px 64px rgba(0, 0, 0, .55);--dash-border-faint: var(--color-border-tertiary);--dash-border-soft: var(--color-border-primary);--dash-border-default: color-mix(in srgb, var(--primary-light) 22%, var(--color-border-primary));--dash-border-strong: color-mix(in srgb, var(--primary-light) 38%, var(--color-border-primary));--dash-row-divider: var(--color-border-primary);--dash-row-hover-bg: var(--primary-50);--dash-row-hover-accent: color-mix(in srgb, var(--primary-light) 16%, transparent);--dash-tab-hover-bg: rgba(255, 255, 255, .04);--dash-pagination-bg: color-mix(in srgb, var(--primary-50) 55%, var(--color-bg-secondary));--dash-segment-bg: color-mix(in srgb, var(--primary-50) 70%, var(--color-bg-secondary));--dash-segment-border: var(--color-border-primary);--dash-overlay-scrim: color-mix(in srgb, var(--color-bg-dark) 45%, var(--primary-dark));--dash-overlay-modal: color-mix(in srgb, var(--color-bg-dark) 58%, var(--primary-dark));--dash-surface-border: var(--color-border-primary);--dash-control-border: var(--color-border-primary);--dash-control-border-hover: color-mix(in srgb, var(--primary-light) 28%, var(--color-border-primary));--dash-shadow-card: var(--shadow-sm);--dash-shadow-card-hover: var(--shadow-md);--dash-btn-top-line: transparent;--dash-scrim-neutral: color-mix(in srgb, var(--color-bg-primary) 78%, black);--color-primary: var(--primary);--color-primary-light: var(--primary-light);--color-primary-dark: var(--primary-light);--color-primary-50: var(--primary-50);--color-primary-100: var(--primary-100);--color-teal: var(--success);--color-teal-light: var(--success-light);--color-amber: var(--warning);--color-amber-light: var(--warning-light);--color-coral: var(--error);--color-coral-light: var(--error-light);--color-gray-50: var(--gray-50);--color-gray-100: var(--gray-100);--color-gray-400: var(--gray-400);--color-gray-600: var(--gray-600);--color-gray-900: var(--gray-900);--dash-brand-gradient: linear-gradient(135deg, var(--color-bg-dark) 0%, #3c3489 60%, #534ab7 100%);--dash-sidebar-gradient: linear-gradient( 180deg, var(--color-bg-dark) 0%, color-mix(in srgb, var(--color-bg-dark) 72%, #3c3489) 100% );--dash-on-brand: var(--text-primary);--dash-on-brand-muted: color-mix(in srgb, var(--dash-on-brand) 75%, transparent);--dash-on-brand-subtle: color-mix(in srgb, var(--dash-on-brand) 82%, transparent);--dash-on-brand-border: color-mix(in srgb, var(--dash-on-brand) 8%, transparent);--dash-on-brand-faint: color-mix(in srgb, var(--dash-on-brand) 45%, transparent);--dash-on-brand-soft: color-mix(in srgb, var(--dash-on-brand) 55%, transparent);--page-hero-gradient: linear-gradient(135deg, var(--color-bg-dark) 0%, #3c3489 100%);--page-hero-on-gradient: var(--text-primary);--page-hero-on-gradient-muted: color-mix(in srgb, var(--page-hero-on-gradient) 75%, transparent);--page-hero-on-gradient-subtle: color-mix(in srgb, var(--page-hero-on-gradient) 82%, transparent);--page-hero-border: color-mix(in srgb, var(--page-hero-on-gradient) 8%, transparent)}*,*:before,*:after{transition:background-color .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease}*[class*=spinner],*[class*=shimmer],*[class*=animation],input,textarea,select{transition:background-color .2s ease,border-color .2s ease,color .2s ease!important}.skip-link{position:fixed;top:var(--space-2);left:var(--space-2);z-index:var(--z-skip-link);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);font-size:var(--font-size-sm);font-weight:600;text-decoration:none;box-shadow:var(--shadow-md);transform:translateY(-150%);transition:transform var(--transition-base)}.skip-link:focus{transform:translateY(0);outline:none;box-shadow:var(--shadow-md),0 0 0 var(--focus-ring-width) var(--focus-ring-color)}:focus{outline:none}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}@keyframes ds-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--color-gray-50) 0%,color-mix(in srgb,var(--color-primary-50) 40%,var(--color-gray-50)) 50%,var(--color-gray-50) 100%);background-size:200% 100%;animation:ds-shimmer 1.4s ease-in-out infinite}.skeleton--text{height:.875rem;margin-block:.35rem}.skeleton--title{height:1.5rem;width:60%;margin-block:.5rem}.skeleton--card{min-height:12rem}@media (prefers-reduced-motion: reduce){.skeleton{animation:none;background:var(--color-gray-50)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-4);padding:var(--space-10) var(--space-6);border-radius:var(--radius-lg);border:1px dashed var(--color-border-subtle);background:color-mix(in srgb,var(--color-bg-secondary) 80%,var(--color-bg-primary))}.empty-state__icon{width:3rem;height:3rem;display:grid;place-items:center;border-radius:999px;background:var(--color-primary-50);color:var(--color-primary);font-size:var(--font-size-xl)}.empty-state__title{margin:0;font-size:var(--font-size-lg);font-weight:700;color:var(--color-text-primary)}.empty-state__desc{margin:0;max-width:42ch;font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-secondary)}.surface-card{background:var(--color-surface-elevated);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),border-color var(--transition-base),transform var(--transition-base)}.surface-card--interactive:hover{box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--color-primary) 22%,var(--color-gray-100))}@media (prefers-reduced-motion: reduce){.surface-card--interactive:hover{transform:none}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-sans);color:var(--color-text-primary);background-color:var(--color-bg-primary)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}a{color:inherit;text-decoration-skip-ink:auto}::selection{background-color:var(--color-primary-100);color:var(--color-text-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}body{font-size:var(--font-size-base)}h1,.heading-1{font-size:clamp(var(--font-size-2xl),4vw,var(--font-size-3xl));font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--color-text-primary)}h2,.heading-2{font-size:clamp(var(--font-size-xl),3vw,var(--font-size-2xl));font-weight:700;line-height:1.2;color:var(--color-text-primary)}h3,.heading-3{font-size:var(--font-size-lg);font-weight:600;line-height:1.3;color:var(--color-text-primary)}.text-lead{font-size:var(--font-size-lg);color:var(--color-text-secondary);line-height:1.6}.text-muted{color:var(--color-text-muted);font-size:var(--font-size-sm)}.text-small{font-size:var(--font-size-sm)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.04);opacity:.92}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.anim-fade-in-up{animation:fadeInUp var(--transition-slow) both}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.page-hero{background:var(--page-hero-gradient);color:var(--page-hero-on-gradient);overflow:hidden;padding-block:var(--page-hero-padding-block);position:relative;isolation:isolate}.page-hero:before{content:"";position:absolute;top:-25%;right:-8%;width:min(42vw,28rem);height:min(42vw,28rem);border-radius:50%;background:radial-gradient(circle,var(--hero-glow-primary) 0%,transparent 68%);pointer-events:none;z-index:0}.page-hero:after{content:"";position:absolute;bottom:-35%;left:-12%;width:min(36vw,22rem);height:min(36vw,22rem);border-radius:50%;background:radial-gradient(circle,var(--hero-glow-accent) 0%,transparent 70%);pointer-events:none;z-index:0}.page-hero .container,.page-hero__inner,.page-hero__grid,.about-hero__inner{position:relative;z-index:1}.page-hero--cover{--page-hero-cover: url(/assets/images/cover.png);background:var(--page-hero-cover-overlay),var(--page-hero-cover) center / cover no-repeat;color:var(--page-hero-on-gradient)}.page-hero--cover:before,.page-hero--cover:after{display:none}.page-hero--cover-subtle{--page-hero-cover-overlay: linear-gradient( 105deg, color-mix(in srgb, var(--color-primary-dark) 42%, transparent) 0%, color-mix(in srgb, var(--color-primary-dark) 18%, transparent) 52%, color-mix(in srgb, var(--color-bg-dark) 32%, transparent) 100% )}.page-hero--cover-medium{--page-hero-cover-overlay: linear-gradient( 135deg, color-mix(in srgb, var(--color-primary-dark) 78%, transparent) 0%, color-mix(in srgb, var(--color-primary) 55%, transparent) 45%, color-mix(in srgb, var(--color-primary-dark) 72%, transparent) 100% )}html.dark .page-hero--cover-subtle{--page-hero-cover-overlay: linear-gradient( 105deg, color-mix(in srgb, var(--color-bg-dark) 52%, transparent) 0%, color-mix(in srgb, var(--color-primary-dark) 38%, transparent) 55%, color-mix(in srgb, var(--color-bg-dark) 58%, transparent) 100% )}html.dark .page-hero--cover-medium{--page-hero-cover-overlay: linear-gradient( 135deg, color-mix(in srgb, var(--color-bg-dark) 82%, transparent) 0%, color-mix(in srgb, var(--color-primary-dark) 70%, transparent) 50%, color-mix(in srgb, var(--color-bg-dark) 88%, transparent) 100% )}.page-hero__eyebrow{margin:0 0 .75rem;font-size:var(--page-hero-eyebrow-size);color:var(--page-hero-on-gradient-muted);display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .875rem;border-radius:var(--radius-xl);background:color-mix(in srgb,var(--page-hero-on-gradient) 10%,transparent);border:1px solid color-mix(in srgb,var(--page-hero-on-gradient) 20%,transparent);backdrop-filter:blur(.625rem);letter-spacing:.07em;text-transform:uppercase;font-weight:600;font-size:var(--font-size-xs)}.page-hero__title{margin:0 0 .75rem;font-size:var(--page-hero-title-size);font-weight:800;letter-spacing:-.03em;line-height:1.08;color:inherit;text-wrap:balance}.page-hero__lead{margin:0 0 1.75rem;font-size:var(--page-hero-lead-size);line-height:1.65;color:var(--page-hero-on-gradient-subtle);max-width:52ch}.page-hero__panel{position:relative;background:var(--surface-glass-bg);backdrop-filter:blur(1rem);border:1px solid var(--surface-glass-border);border-radius:var(--radius-xl);padding:1.25rem;box-shadow:var(--surface-glass-shadow)}.page-hero__panel:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary-light) 35%,transparent),color-mix(in srgb,var(--color-primary) 8%,transparent));mask:linear-gradient(var(--color-bg-primary) 0 0) content-box,linear-gradient(var(--color-bg-primary) 0 0);mask-composite:exclude;pointer-events:none}.section-heading{display:flex;flex-direction:column;gap:.625rem;margin-bottom:2rem}.section-heading--center{align-items:center;text-align:center}.section-heading__title{margin:0;font-size:clamp(var(--font-size-xl),3vw,var(--font-size-2xl));font-weight:800;letter-spacing:-.02em;color:var(--color-text-primary)}.section-heading__accent{width:3rem;height:.2rem;border-radius:var(--radius-sm);background:var(--section-accent-gradient)}.section-heading--center .section-heading__accent{margin-inline:auto}.page-hero__inner{max-width:var(--page-hero-inner-max);margin-inline:auto}.page-hero--banner{display:flex;align-items:center;min-height:var(--page-hero-min-height-banner)}.page-hero--banner .container,.page-hero--banner .page-hero__inner{width:100%}.page-section{padding-block:var(--page-hero-padding-block)}.container{width:100%;max-width:var(--layout-max-xl);margin-inline:auto;padding-inline:var(--layout-gutter)}@media (min-width: 1280px){.container{max-width:var(--layout-max-2xl)}}@media (min-width: 1440px){.container--wide{max-width:var(--layout-max-3xl)}}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.grid{display:grid}.grid-cols-1{grid-template-columns:1fr}@media (min-width: 768px){.md-grid-cols-2{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.lg-grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg-grid-cols-4{grid-template-columns:repeat(4,1fr)}}.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}.btn-primary{background:var(--dash-accent-gradient);color:var(--dash-on-brand);border:none;border-radius:var(--radius-md);padding:.75rem 1.5rem;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),filter var(--transition-base);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:var(--btn-primary-shadow)}.btn-primary:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-.0625rem);box-shadow:0 .5rem 1.25rem var(--dash-primary-glow)}.btn-primary:focus-visible{outline:2px solid var(--color-primary-light);outline-offset:2px}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:var(--color-bg-primary);color:var(--color-primary);border:1.5px solid color-mix(in srgb,var(--color-primary) 22%,var(--color-gray-100));border-radius:var(--radius-md);padding:.75rem 1.5rem;font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:border-color var(--transition-base),background var(--transition-base),box-shadow var(--transition-base);box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--color-primary);background:var(--color-primary-50);box-shadow:var(--shadow-md)}.btn-secondary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.input-field{width:100%;min-height:var(--form-control-height, 48px);padding:0 var(--form-control-padding-x, 14px);border:var(--form-control-border, 1.5px solid var(--color-gray-100));border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-sans);line-height:1.35;color:var(--color-text-primary);background:var(--form-control-bg);transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base);outline:none;box-sizing:border-box}.input-field::placeholder{color:var(--color-text-muted);opacity:1}.input-field:hover:not(:disabled):not(:focus){border-color:color-mix(in srgb,var(--color-primary) 18%,var(--color-gray-100))}.input-field:focus{border-color:var(--color-primary);background:var(--form-control-bg-focus);box-shadow:var(--form-focus-shadow, 0 0 0 3px var(--color-primary-50))}.input-field.error{border-color:var(--color-coral);box-shadow:var(--form-error-shadow, 0 0 0 3px var(--color-coral-light))}.input-field:disabled{opacity:.65;cursor:not-allowed}textarea.input-field{min-height:120px;padding:.75rem var(--form-control-padding-x, 14px);resize:vertical}@media (prefers-reduced-motion: reduce){.btn-primary:hover:not(:disabled),.card--interactive:hover{transform:none}}.auth-page{min-height:calc(100vh - 64px);background:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;padding:clamp(1rem,3vw,2rem) 1rem;position:relative;overflow:hidden}.auth-page:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 60% 45% at 15% 10%,color-mix(in srgb,var(--color-primary) 8%,transparent),transparent 55%),radial-gradient(ellipse 50% 40% at 85% 90%,color-mix(in srgb,var(--color-primary-light) 10%,transparent),transparent 55%);pointer-events:none}.auth-card{position:relative;z-index:1}.status-icon{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.status-icon.success{background:var(--color-teal-light)}.status-icon.error{background:var(--color-coral-light)}.status-title{font-size:22px;font-weight:700;margin-bottom:8px;text-align:center}.status-title.success{color:var(--color-teal)}.status-title.error{color:var(--color-coral)}.status-text{font-size:14px;color:var(--color-text-secondary);text-align:center;line-height:1.6;margin-bottom:24px}.spinner-lg{width:48px;height:48px;border:3px solid var(--color-primary-100);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}.back-link{display:inline-flex;align-items:center;gap:6px;color:var(--color-text-secondary);font-size:14px;cursor:pointer;margin-bottom:24px;background:none;border:none;padding:0}.back-link:hover{color:var(--color-primary)}@media (max-width: 768px){.auth-card{padding:24px}}@keyframes spin{to{transform:rotate(360deg)}}.page-hero--ville-slideshow{color:var(--page-hero-on-gradient);background:linear-gradient(180deg,var(--color-bg-dark) 0%,var(--color-primary-dark) 55%,var(--color-primary-dark) 100%)}.page-hero--ville-slideshow:before,.page-hero--ville-slideshow:after{display:none}.ville-slideshow__bg{position:absolute;top:0;left:0;right:0;width:100%;aspect-ratio:16 / 9;max-height:min(52vh,540px);z-index:0;overflow:hidden}@media (max-width: 767px){.ville-slideshow__bg{aspect-ratio:4 / 3;max-height:min(44vh,320px)}}.ville-slideshow__slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;opacity:0;transition:opacity 1.4s ease-in-out;will-change:opacity}.ville-slideshow__slide--active{opacity:1}.ville-slideshow__overlay{position:absolute;inset:0;z-index:1;pointer-events:none}.ville-slideshow__overlay:after{content:"";position:absolute;left:0;right:0;bottom:0;height:35%;background:linear-gradient(to top,var(--color-primary-dark),transparent)}.page-hero--ville-slideshow-subtle .ville-slideshow__overlay{background:linear-gradient(105deg,color-mix(in srgb,var(--color-primary-dark) 42%,transparent),color-mix(in srgb,var(--color-primary-dark) 18%,transparent) 52%,color-mix(in srgb,var(--color-bg-dark) 32%,transparent))}html.dark .page-hero--ville-slideshow-subtle .ville-slideshow__overlay{background:linear-gradient(105deg,color-mix(in srgb,var(--color-bg-dark) 52%,transparent),color-mix(in srgb,var(--color-primary-dark) 38%,transparent) 55%,color-mix(in srgb,var(--color-bg-dark) 58%,transparent))}.page-hero--ville-slideshow-medium .ville-slideshow__overlay{background:linear-gradient(135deg,color-mix(in srgb,var(--color-primary-dark) 78%,transparent),color-mix(in srgb,var(--color-primary) 55%,transparent) 45%,color-mix(in srgb,var(--color-primary-dark) 72%,transparent))}html.dark .page-hero--ville-slideshow-medium .ville-slideshow__overlay{background:linear-gradient(135deg,color-mix(in srgb,var(--color-bg-dark) 82%,transparent),color-mix(in srgb,var(--color-primary-dark) 70%,transparent),color-mix(in srgb,var(--color-bg-dark) 88%,transparent))}.page-hero--ville-slideshow .page-hero__title,.page-hero--ville-slideshow .page-hero__eyebrow,.page-hero--ville-slideshow .page-hero__lead{text-shadow:0 .0625rem .625rem color-mix(in srgb,var(--color-bg-dark) 45%,transparent)}@media (prefers-reduced-motion: reduce){.ville-slideshow__slide{transition:none}.ville-slideshow__slide:not(.ville-slideshow__slide--active){display:none}}:root{--card-accent-height: .2rem;--form-control-bg: color-mix(in srgb, var(--color-primary-50) 28%, var(--color-bg-primary));--form-control-bg-focus: var(--color-bg-primary);--btn-primary-shadow: 0 .375rem 1rem var(--dash-primary-glow)}.card{position:relative;overflow:hidden;background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--dash-border-faint);transition:box-shadow var(--transition-base),transform var(--transition-base),border-color var(--transition-base)}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:var(--card-accent-height);background:var(--section-accent-gradient);opacity:.85;pointer-events:none}.card--interactive{cursor:pointer}.card--interactive:hover{box-shadow:var(--shadow-md);transform:translateY(-.125rem);border-color:color-mix(in srgb,var(--color-primary) 16%,var(--color-gray-100))}.card--flat:before{display:none}html.dark .card{background:var(--color-surface-primary);border-color:var(--color-border-primary)}.section-card,.section-card-dash{position:relative;overflow:hidden;background:var(--color-bg-primary);border-radius:var(--radius-xl);border:1px solid var(--dash-border-faint);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}.section-card:before,.section-card-dash:before{content:"";position:absolute;top:0;left:0;right:0;height:var(--card-accent-height);background:var(--section-accent-gradient);pointer-events:none}html.dark .section-card,html.dark .section-card-dash{background:var(--color-surface-primary);border-color:var(--color-border-primary)}.section-card-header-dash,.section-header{position:relative;z-index:1}.section-card-title-dash,.section-title{font-weight:700;letter-spacing:-.01em}.filter-tabs{display:flex;flex-wrap:wrap;gap:.5rem;padding:.25rem;background:color-mix(in srgb,var(--color-primary) 4%,var(--color-gray-50));border-radius:var(--radius-xl);border:1px solid var(--dash-border-faint)}.filter-tab{padding:.5rem .875rem;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);cursor:pointer;background:transparent;border:1px solid transparent;border-radius:var(--radius-xl);transition:var(--transition-base)}.filter-tab:hover{color:var(--color-text-primary);background:color-mix(in srgb,var(--color-bg-primary) 70%,transparent)}.filter-tab.active{font-weight:700;color:var(--color-primary-dark);background:var(--color-bg-primary);border-color:color-mix(in srgb,var(--color-primary) 14%,var(--color-gray-100));box-shadow:var(--shadow-sm)}html.dark .filter-tabs{background:color-mix(in srgb,var(--color-primary) 8%,var(--color-bg-secondary))}html.dark .filter-tab.active{background:var(--color-surface-secondary);color:var(--color-primary-light)}.empty-state-dash{text-align:center;padding:2.5rem 1.5rem;border-radius:var(--radius-lg);background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary-50) 40%,var(--color-bg-primary)),var(--color-bg-primary));border:1px dashed color-mix(in srgb,var(--color-primary) 22%,var(--color-gray-100))}.empty-state-dash p{margin:0 0 1rem;color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.55}.empty-state-dash--ok{border-color:color-mix(in srgb,var(--color-teal) 25%,var(--color-gray-100));background:linear-gradient(180deg,color-mix(in srgb,var(--color-teal-light) 65%,var(--color-bg-primary)),var(--color-bg-primary))}.auth-card{position:relative;overflow:hidden;background:var(--color-bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--dash-border-faint);padding:2.5rem;width:100%;max-width:30rem;animation:fadeInUp .3s ease}.auth-card:before{content:"";position:absolute;top:0;left:0;right:0;height:var(--card-accent-height);background:var(--section-accent-gradient)}html.dark .auth-card{background:var(--color-surface-primary);border-color:var(--color-border-primary)}:root{--form-control-height: 48px;--form-control-padding-x: 14px;--form-control-border: 1.5px solid var(--color-gray-100);--form-focus-shadow: 0 0 0 3px var(--color-primary-50);--form-error-shadow: 0 0 0 3px var(--color-coral-light)}.auth-form,.register-form,.fp-form,.rp-form,form.form,div.form{display:flex;flex-direction:column;gap:1.25rem}.field,.form-group{display:flex;flex-direction:column;gap:.375rem}.field>label:first-child,.form-group>label,.form-label{font-size:var(--font-size-sm);font-weight:600;letter-spacing:.01em;color:var(--color-text-secondary)}.field>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not([type=range]):not([type=color]),.field>select,.field>textarea{width:100%;min-height:var(--form-control-height);padding:0 var(--form-control-padding-x);box-sizing:border-box;border-radius:var(--radius-md);border:var(--form-control-border);background:var(--form-control-bg);color:var(--color-text-primary);font-size:var(--font-size-base);font-family:var(--font-sans);line-height:1.35;transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base);outline:none}.field>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):hover:not(:focus),.field>select:hover:not(:focus),.field>textarea:hover:not(:focus){border-color:color-mix(in srgb,var(--color-primary) 18%,var(--color-gray-100))}.field>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):focus,.field>select:focus,.field>textarea:focus{border-color:var(--color-primary);background:var(--form-control-bg-focus);box-shadow:var(--form-focus-shadow)}.field>textarea{min-height:120px;padding:.75rem var(--form-control-padding-x);resize:vertical}.field>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]).error,.field>select.error,.field>textarea.error{border-color:var(--color-coral);box-shadow:var(--form-error-shadow)}.field>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden])::placeholder,.field>textarea::placeholder{color:var(--color-text-muted);opacity:1}.field>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):disabled,.field>select:disabled,.field>textarea:disabled{opacity:.65;cursor:not-allowed}textarea.textarea{width:100%;box-sizing:border-box;border-radius:var(--radius-md);border:var(--form-control-border);padding:.75rem var(--form-control-padding-x);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:1.45;color:var(--color-text-primary);background:var(--form-control-bg);transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base);outline:none}textarea.textarea:focus{border-color:var(--color-primary);background:var(--form-control-bg-focus);box-shadow:var(--form-focus-shadow)}textarea.textarea.error{border-color:var(--color-coral);box-shadow:var(--form-error-shadow)}.form-input{width:100%;min-height:var(--form-control-height);padding:0 var(--form-control-padding-x);border:var(--form-control-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-sans);color:var(--color-text-primary);background:var(--form-control-bg);box-sizing:border-box;outline:none;transition:border-color var(--transition-base),box-shadow var(--transition-base),background-color var(--transition-base)}.form-input:focus{border-color:var(--color-primary);background:var(--form-control-bg-focus);box-shadow:var(--form-focus-shadow)}.form-input.error{border-color:var(--color-coral);box-shadow:var(--form-error-shadow)}.form-input::placeholder{color:var(--color-text-muted);opacity:1}.field__error,.field-error{margin:.125rem 0 0;font-size:var(--font-size-xs);line-height:1.35;color:var(--color-coral)}.field-hint{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.4}.field__row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.field__toggle{border:none;background:none;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;font-family:var(--font-sans)}.field__toggle:hover{color:var(--color-primary-dark);text-decoration:underline}.field__toggle:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}.field--valid>.input-field,.field--valid>input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]):not(.phone-local-input),.field--valid>select,.field--valid>textarea{border-color:var(--color-teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-teal) 18%,transparent)}.field--invalid>label:first-child,.field--invalid>.form-label{color:var(--color-coral)}.auth-btn-spinner{display:inline-block;width:1.125rem;height:1.125rem;border-radius:50%;border:2px solid color-mix(in srgb,var(--color-on-primary) 35%,transparent);border-top-color:var(--color-on-primary);animation:auth-spin .7s linear infinite;flex-shrink:0}@keyframes auth-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.auth-btn-spinner{animation:none;border-top-color:var(--color-on-primary)}}.auth-alert{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-4);margin-bottom:var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:1.5}.auth-alert--error{background:var(--color-coral-light);border-left:4px solid var(--color-coral);color:var(--color-coral)}.auth-alert--success{background:var(--color-teal-light);border-left:4px solid var(--color-teal);color:var(--color-teal)}.auth-alert--warning{background:var(--color-amber-light);border-left:4px solid var(--color-amber);color:var(--color-text-secondary)}.auth-alert__close{border:none;background:transparent;font-size:var(--font-size-lg);line-height:1;cursor:pointer;padding:0;color:inherit;opacity:.85}.auth-alert__close:hover{opacity:1}.auth-alert__close:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}html.dark .phone-input-group{background:var(--color-bg-tertiary);border-color:var(--color-border-primary)}html.dark .phone-input-group:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-50)}html.dark .phone-country-trigger{background:var(--color-bg-elevated);border-right-color:var(--color-border-primary);color:var(--text-primary)}html.dark .phone-country-panel{background:var(--color-surface-primary);border-color:var(--color-border-primary)}html.dark .phone-country-search{border-bottom-color:var(--color-border-primary);background:var(--color-surface-primary);color:var(--text-primary)}html.dark .role-card{background:var(--color-bg-tertiary);border-color:var(--color-border-primary)}html.dark .role-card.selected{background:var(--primary-50);border-color:var(--primary)}@media (prefers-reduced-motion: reduce){.field>input,.field>select,.field>textarea,textarea.textarea,.form-input{transition:none}}.popular-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.popular-card{display:flex;flex-direction:column;height:100%;background:var(--color-surface-elevated);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border-subtle);cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);outline:none}html.dark .popular-card{background:var(--color-surface-primary);border-color:var(--color-border-primary)}.popular-card:hover{transform:translateY(-.375rem);box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--color-primary) 18%,var(--color-gray-100))}.popular-card:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.popular-card-image{position:relative;height:13.75rem;overflow:hidden}.popular-card-img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.popular-card:hover .popular-card-img{transform:scale(1.05)}.popular-card-img-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary));display:flex;align-items:center;justify-content:center;color:var(--color-on-primary)}.popular-card-type-badge{position:absolute;top:var(--space-3);left:var(--space-3);background:var(--surface-glass-bg);backdrop-filter:blur(8px);color:var(--color-text-primary);font-size:var(--font-size-xs);font-weight:600;padding:var(--space-1) var(--space-3);border-radius:var(--radius-xl);border:1px solid var(--surface-glass-border);z-index:2}.popular-card-rating-badge{position:absolute;top:var(--space-3);right:var(--space-3);background:color-mix(in srgb,var(--color-text-primary) 72%,transparent);backdrop-filter:blur(8px);color:var(--color-on-primary);font-size:var(--font-size-xs);font-weight:700;padding:var(--space-1) var(--space-3);border-radius:var(--radius-xl);display:inline-flex;align-items:center;gap:var(--space-1);z-index:2}.popular-card-body{flex:1;padding:var(--space-5) var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.popular-card-location{display:flex;align-items:center;gap:var(--space-1);margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.popular-card-location svg{color:var(--color-primary);flex-shrink:0}.popular-card-title{font-size:var(--font-size-base);font-weight:700;color:var(--color-text-primary);margin:0;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.popular-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin:0;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.popular-reviews{color:var(--color-primary);font-weight:500}.popular-card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--color-border-subtle)}html.dark .popular-card-footer{border-top-color:var(--color-border-primary)}.popular-card-price{display:flex;align-items:baseline;gap:var(--space-1);margin:0}.price-amount{font-size:var(--font-size-xl);font-weight:800;color:var(--color-primary-dark)}html.dark .price-amount{color:var(--color-primary)}.price-unit{font-size:var(--font-size-sm);color:var(--color-text-muted)}.popular-bookings{font-size:var(--font-size-xs);color:var(--color-teal);font-weight:600;white-space:nowrap}.popular-card-skeleton{display:flex;flex-direction:column;height:100%;min-height:18rem;background:var(--color-surface-elevated);border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--color-border-subtle)}html.dark .popular-card-skeleton{background:var(--color-surface-primary);border-color:var(--color-border-primary)}.popular-card-skeleton__img{height:13.75rem}.popular-card-skeleton__body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2)}.shimmer{background:linear-gradient(90deg,var(--color-gray-50) 25%,color-mix(in srgb,var(--color-primary-50) 40%,var(--color-gray-50)) 50%,var(--color-gray-50) 75%);background-size:200% 100%;animation:ds-shimmer 1.4s ease-in-out infinite}.popular-scroll .popular-card,.popular-scroll .popular-card-skeleton{width:100%;height:100%}.popular-scroll .popular-card-image,.popular-scroll .popular-card-skeleton__img{height:11.25rem}.popular-scroll .popular-card-body{padding:var(--space-4) var(--space-4) var(--space-5)}.popular-scroll .popular-card-skeleton__body{padding:var(--space-4)}.popular-scroll .price-amount{font-size:var(--font-size-lg)}@media (max-width: 1024px){.popular-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.popular-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.popular-card,.popular-card-img,.shimmer{transition:none;animation:none}.popular-card:hover,.popular-card:hover .popular-card-img{transform:none}}.property-mobile-bar{display:none}@media (max-width: 1023px){.property-mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--layout-gutter);padding-bottom:max(var(--space-3),env(safe-area-inset-bottom));background:var(--color-surface-elevated);border-top:1px solid var(--color-border-subtle);box-shadow:0 -4px 24px color-mix(in srgb,var(--color-text-primary) 8%,transparent)}.property-mobile-bar__price{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.property-mobile-bar__amt{font-size:var(--font-size-lg);font-weight:800;color:var(--color-primary-dark);line-height:1.2}.property-mobile-bar__unit{font-size:var(--font-size-xs);color:var(--color-text-muted)}.property-mobile-bar__cta{flex-shrink:0;min-width:8.5rem;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.detail-page--with-mobile-bar{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}}.booking-card--surface{background:var(--color-surface-elevated);border:1px solid var(--color-border-subtle);box-shadow:var(--shadow-lg)}.gallery-nav-btn:focus-visible,.thumb-item:focus-visible,.popup-close:focus-visible,.popup-gallery__nav:focus-visible,.popup-thumb:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}
