/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
:root{--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-light:rgba(37,99,235,0.08);--color-primary-ring:rgba(37,99,235,0.30);--color-accent:#3b82f6;--color-accent-hover:#2563eb;--color-success:#34c759;--color-success-light:rgba(52,199,89,0.12);--color-danger:#ff3b30;--color-danger-light:rgba(255,59,48,0.12);--color-warning:#fc0;--color-warning-light:rgba(255,204,0,0.15);--color-info:#5ac8fa;--color-info-light:rgba(90,200,250,0.12);--color-purple:#af52de;--bg-page:linear-gradient(160deg,#f0f5ff 0%,#e8eefb 50%,#eef2f9 100%);--glass-bg:rgba(255,255,255,0.65);--glass-bg-strong:rgba(255,255,255,0.82);--glass-bg-subtle:rgba(255,255,255,0.45);--glass-border:rgba(255,255,255,0.4);--glass-shadow:0 8px 32px rgba(0,0,0,0.06);--glass-blur:blur(20px);--card-bg:rgba(255,255,255,0.70);--text-primary:#0f172a;--text-secondary:#64748b;--text-tertiary:#c7c7cc;--text-inverse:#fff;--border-color:rgba(0,0,0,0.06);--border-strong:rgba(0,0,0,0.12);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--shadow-sm:0 2px 8px rgba(37,99,235,0.06);--shadow-md:0 4px 20px rgba(37,99,235,0.08);--shadow-lg:0 8px 32px rgba(37,99,235,0.10);--shadow-xl:0 16px 48px rgba(0,0,0,0.12);--font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-heading:'DM Serif Display',Georgia,'Times New Roman',serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:15px;--font-size-md:17px;--font-size-lg:20px;--font-size-xl:24px;--font-size-2xl:32px;--font-size-3xl:40px;--font-size-4xl:52px;--transition-fast:0.15s ease;--transition-base:0.25s ease;--transition-slow:0.4s ease;--header-height:80px;--container-width:1200px;--sidebar-width:260px;}@media (max-width:1024px){:root{--container-width:960px;}}@media (max-width:767.98px){:root{--header-height:56px;}}*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden;}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);background:var(--bg-page);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:clip;}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast);}a:hover{color:var(--color-primary-hover);}img{max-width:100%;height:auto;display:block;}ul,ol{list-style:none;}button{font-family:inherit;cursor:pointer;border:none;background:none;}input,textarea,select{font-family:inherit;font-size:inherit;}::selection{background:var(--color-primary);color:#fff;}::-moz-selection{background:var(--color-primary);color:#fff;}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;color:var(--text-primary);}h1{font-size:var(--font-size-4xl);}h2{font-size:var(--font-size-3xl);}h3{font-size:var(--font-size-2xl);}h4{font-size:var(--font-size-xl);}h5{font-size:var(--font-size-lg);}h6{font-size:var(--font-size-md);}p{margin-bottom:1em;}p:last-child{margin-bottom:0;}@media (max-width:767.98px){h1{font-size:32px;}h2{font-size:26px;}h3{font-size:22px;}}@media (max-width:480px){h1{font-size:26px;}h2{font-size:22px;}h3{font-size:19px;}}h1,h2,h3{font-family:var(--font-heading);font-weight:400;letter-spacing:-0.015em;}h1{line-height:1.1;}h2{line-height:1.2;}h3{line-height:1.3;}body{letter-spacing:0.01em;position:relative;}body::before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse 80% 60% at 20% 10%,rgba(37,99,235,0.08),transparent 50%),radial-gradient(ellipse 60% 50% at 80% 80%,rgba(59,130,246,0.06),transparent 50%);pointer-events:none;}::selection{background:rgba(37,99,235,0.2) !important;color:var(--text-primary) !important;}.container{width:100%;max-width:var(--container-width);margin:0 auto;padding:0 24px;}.container-narrow{max-width:800px;}.container-wide{max-width:1400px;}.text-center{text-align:center;}.text-left{text-align:left;}.text-right{text-align:right;}.text-muted{color:var(--text-secondary);}.text-tertiary{color:var(--text-tertiary);}.text-primary-color{color:var(--color-primary);}.text-success{color:var(--color-success);}.text-danger{color:var(--color-danger);}.text-accent{color:var(--color-accent);}.text-sm{font-size:var(--font-size-sm);}.text-xs{font-size:var(--font-size-xs);}.text-lg{font-size:var(--font-size-lg);}.text-xl{font-size:var(--font-size-xl);}.font-medium{font-weight:500;}.font-semibold{font-weight:600;}.font-bold{font-weight:700;}.mb-0{margin-bottom:0;}.mb-1{margin-bottom:8px;}.mb-2{margin-bottom:16px;}.mb-3{margin-bottom:24px;}.mb-4{margin-bottom:32px;}.mb-5{margin-bottom:48px;}.mt-0{margin-top:0;}.mt-1{margin-top:8px;}.mt-2{margin-top:16px;}.mt-3{margin-top:24px;}.mt-4{margin-top:32px;}.mt-5{margin-top:48px;}.mx-auto{margin-left:auto;margin-right:auto;}.p-1{padding:8px;}.p-2{padding:16px;}.p-3{padding:24px;}.p-4{padding:32px;}.hidden{display:none !important;}.visible{display:block;}.invisible{visibility:hidden;}.flex{display:flex;}.flex-wrap{flex-wrap:wrap;}.flex-col{flex-direction:column;}.flex-between{display:flex;justify-content:space-between;align-items:center;}.flex-center{display:flex;justify-content:center;align-items:center;}.flex-start{display:flex;align-items:flex-start;}.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;}.flex-1{flex:1;}.flex-shrink-0{flex-shrink:0;}.gap-1{gap:8px;}.gap-2{gap:16px;}.gap-3{gap:24px;}.gap-4{gap:32px;}.w-full{width:100%;}.h-full{height:100%;}.overflow-hidden{overflow:hidden;}.overflow-auto{overflow:auto;}.relative{position:relative;}.absolute{position:absolute;}.rounded{border-radius:var(--radius-md);}.rounded-lg{border-radius:var(--radius-lg);}.rounded-xl{border-radius:var(--radius-xl);}.rounded-full{border-radius:var(--radius-full);}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:32px;}.tabs-nav{display:flex;border-bottom:1px solid var(--border-color);gap:0;margin-bottom:24px;overflow-x:auto;}.mb-3{margin-bottom:16px;}.mb-4{margin-bottom:24px;}.text-center{text-align:center;}.text-sm{font-size:var(--font-size-sm);}.text-muted{color:var(--text-secondary);}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);}.glass-strong{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);}.glass-subtle{background:var(--glass-bg-subtle);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.25);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);}.glass-card{background:var(--card-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base);}.glass-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);}.search-box{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);padding:8px;display:flex;align-items:center;gap:4px;max-width:860px;margin:0 auto;position:relative;z-index:50;}.filters-panel{width:var(--sidebar-width);flex-shrink:0;position:sticky;top:calc(var(--header-height) + 24px);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);padding:20px;}.rate-card{background:var(--card-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:16px 20px;display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;transition:box-shadow var(--transition-base);}.dashboard-nav{width:var(--sidebar-width);flex-shrink:0;position:sticky;top:calc(var(--header-height) + 24px);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);padding:16px;align-self:flex-start;}.trip-card{background:var(--card-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden;display:flex;margin-bottom:16px;transition:box-shadow var(--transition-base);}.admin-stat{background:var(--card-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:20px;}.auth-card{width:100%;max-width:440px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);padding:40px 36px;}.site-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);background:#fff;border-bottom:1px solid var(--border-color);z-index:10001;transition:box-shadow var(--transition-base);display:flex;align-items:center;}.site-header.scrolled{background:#fff;box-shadow:0 1px 12px rgba(0,0,0,0.08);}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:var(--container-width);margin:0 auto;padding:0 24px;}.logo{display:flex;align-items:center;gap:10px;font-size:var(--font-size-lg);font-weight:700;color:var(--text-primary);text-decoration:none;flex-shrink:0;}.logo:hover{color:var(--text-primary);}.logo-icon{width:32px;height:32px;background:linear-gradient(135deg,var(--color-primary),#5856d6);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;}.logo-icon-inn{flex-shrink:0;border-radius:8px;}.nav-links{display:flex;align-items:center;gap:4px;}.nav-links a{display:flex;align-items:center;gap:6px;padding:8px 16px;color:var(--text-secondary);font-size:var(--font-size-base);font-weight:500;border-radius:var(--radius-md);transition:color var(--transition-fast),background var(--transition-fast);white-space:nowrap;}.nav-links a:hover{color:var(--text-primary);background:rgba(0,0,0,0.04);}.nav-links a.active{color:var(--color-primary);background:var(--color-primary-light);}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;}.header-user-btn{display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--glass-bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast);}.header-user-btn:hover{background:rgba(255,255,255,0.9);box-shadow:var(--shadow-sm);}.header-user-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#5856d6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;}.user-dropdown{position:relative;}.dropdown-toggle{display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--glass-bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast),box-shadow var(--transition-fast);}.dropdown-toggle:hover{background:rgba(255,255,255,0.9);box-shadow:var(--shadow-sm);}.user-avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#5856d6);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0;}.user-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.user-initials{display:none;}.dropdown-menu{display:none;position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:6px 0;z-index:200;}.user-dropdown.active .dropdown-menu{display:block;animation:fadeIn 0.15s ease;}.dropdown-menu a{display:block;padding:10px 18px;font-size:var(--font-size-sm);color:var(--text-primary);text-decoration:none;transition:background var(--transition-fast);}.dropdown-menu a:hover{background:rgba(0,0,0,0.04);}.dropdown-divider{height:1px;background:var(--border-color);margin:4px 0;}.menu-toggle{display:none;width:40px;height:40px;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-primary);font-size:22px;cursor:pointer;transition:background var(--transition-fast);}.menu-toggle:hover{background:rgba(0,0,0,0.04);}.mobile-menu{display:none;position:fixed;top:var(--header-height);left:0;right:0;bottom:0;background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:999;padding:24px;overflow-y:auto;animation:fadeIn 0.2s ease;}.mobile-menu.open,.mobile-menu.active{display:block;}.mobile-menu a{display:flex;align-items:center;gap:12px;padding:14px 16px;color:var(--text-primary);font-size:var(--font-size-md);font-weight:500;border-radius:var(--radius-md);transition:background var(--transition-fast);}.mobile-menu a:hover{background:rgba(0,0,0,0.04);}.mobile-menu a.active{color:var(--color-primary);background:var(--color-primary-light);}@media (max-width:767.98px){.site-header .container{padding-left:8px !important;padding-right:10px !important;}.site-header .header-inner{padding-left:0 !important;padding-right:0 !important;}.user-avatar,.user-name{display:none !important;}.user-initials{display:inline-flex !important;align-items:center;justify-content:center;font-size:14px;font-weight:600;letter-spacing:0.3px;color:var(--text-primary);}.dropdown-toggle{gap:0 !important;padding:4px 12px !important;border:1.5px solid var(--color-primary) !important;color:var(--color-primary) !important;font-weight:600 !important;font-size:13px !important;line-height:1.2 !important;background:transparent !important;font-family:inherit;box-sizing:border-box;white-space:nowrap;}.user-initials{color:var(--color-primary) !important;font-weight:600 !important;letter-spacing:0.3px;font-size:13px;line-height:1.4;}.nav-links{display:none;}.menu-toggle{display:flex;}}@media (max-width:767px){.header-inner{padding:0 12px;}.nav-links{display:none;}.menu-toggle{display:flex;}}.site-header{background:#fff !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important;border-bottom:1px solid rgba(37,99,235,0.06) !important;}.logo span{font-family:Palatino,"Palatino Linotype","Book Antiqua",serif;font-size:30px;font-weight:400;letter-spacing:-0.03em;}.nav-links a{font-weight:500;letter-spacing:0.3px;font-size:var(--font-size-base);text-transform:uppercase;color:var(--text-secondary);}.nav-links a:hover{color:var(--color-primary);}@media (max-width:767.98px){.site-header .container{padding-right:0 !important;}.header-inner{display:flex !important;justify-content:space-between !important;width:100% !important;padding-right:16px !important;}.menu-toggle{display:none !important;}.header-actions{margin-left:auto !important;margin-right:0 !important;padding-right:0 !important;gap:4px;}}@media (max-width:767.98px){.hotel-card-footer{flex-direction:row !important;align-items:flex-end !important;gap:12px;}.hotel-card-meta{flex-shrink:0;}.hotel-card-price{flex:1 1 auto;flex-shrink:1 !important;display:flex;flex-direction:column;align-items:flex-end;text-align:right;min-width:0;}}.hotel-results{display:flex;flex-direction:column;gap:16px;}.hotel-card{display:flex;background:var(--card-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base);}.hotel-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);}.hotel-card-img{width:280px;height:220px;flex-shrink:0;overflow:hidden;position:relative;}.hotel-card-img img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow);}.hotel-card:hover .hotel-card-img img{transform:scale(1.05);}.hotel-card-img-badge{position:absolute;top:12px;left:12px;z-index:2;}.hotel-card-body{flex:1;padding:20px 24px;display:flex;flex-direction:column;justify-content:space-between;min-width:0;}.hotel-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px;}.hotel-card-name{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary);margin-bottom:4px;line-height:1.3;}.hotel-card-name a{color:inherit;text-decoration:none;}.hotel-card-name a:hover{color:var(--color-primary);}.hotel-card-location{display:flex;align-items:center;gap:4px;font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:8px;}.hotel-card-stars{display:flex;align-items:center;gap:2px;margin-bottom:10px;}.hotel-card-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;}.hotel-card-footer{display:flex;align-items:flex-end;justify-content:space-between;margin-top:auto;}.hotel-card-meta{font-size:var(--font-size-sm);color:var(--text-secondary);}.hotel-card-price{text-align:right;flex-shrink:0;}.price-amount{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);}.price-original{font-size:var(--font-size-sm);color:var(--text-secondary);text-decoration:line-through;margin-right:6px;}.price-per-night{font-size:var(--font-size-xs);color:var(--text-secondary);display:block;}.price-total{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);}@media (max-width:767.98px){.hotel-card{flex-direction:column;}.hotel-card-img{width:100%;height:200px;}}.hotel-card{border-radius:var(--radius-xl);}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);line-height:1.4;white-space:nowrap;}.badge-deal{background:rgba(255,149,0,0.14);color:#c27400;}.badge-free-cancel{background:var(--color-success-light);color:#248a3d;}.badge-popular{background:var(--color-primary-light);color:var(--color-primary);}.badge-secret{background:linear-gradient(135deg,rgba(175,82,222,0.14),rgba(0,122,255,0.14));color:#8944ab;}.badge-warning{background:var(--color-danger-light);color:var(--color-danger);}.badge-info{background:var(--color-info-light);color:#0a84ff;}.badge-neutral{background:rgba(0,0,0,0.05);color:var(--text-secondary);}.badge-lg{padding:5px 14px;font-size:var(--font-size-sm);}.badge-neutral{background:rgba(142,142,147,0.12);color:var(--text-secondary);}.badge-info{background:var(--color-info-light);color:#0a84ff;}.badge-warning{background:var(--color-warning-light);color:#c57600;}.search-btn{height:48px;padding:0 28px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;white-space:nowrap;transition:background var(--transition-fast),transform var(--transition-fast);flex-shrink:0;}.search-btn:hover{background:var(--color-primary-hover);transform:scale(1.02);}.search-btn:active{transform:scale(0.98);}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 24px;font-size:var(--font-size-base);font-weight:600;border-radius:var(--radius-full);border:none;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;line-height:1.4;white-space:nowrap;user-select:none;position:relative;overflow:hidden;}.btn:active{transform:scale(0.97);}.btn-primary{background:linear-gradient(135deg,var(--color-primary),#0066e0);color:#fff;box-shadow:0 2px 8px rgba(0,122,255,0.25);}.btn-primary:hover{background:linear-gradient(135deg,var(--color-primary-hover),#004dbb);box-shadow:0 4px 14px rgba(0,122,255,0.35);transform:translateY(-1px);color:#fff;}.btn-secondary{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-strong);color:var(--text-primary);}.btn-secondary:hover{background:rgba(255,255,255,0.95);box-shadow:var(--shadow-sm);}.btn-danger{background:linear-gradient(135deg,var(--color-danger),#e0332b);color:#fff;box-shadow:0 2px 8px rgba(255,59,48,0.25);}.btn-danger:hover{box-shadow:0 4px 14px rgba(255,59,48,0.35);transform:translateY(-1px);}.btn-success{background:linear-gradient(135deg,var(--color-success),#2bad4e);color:#fff;box-shadow:0 2px 8px rgba(52,199,89,0.25);}.btn-success:hover{box-shadow:0 4px 14px rgba(52,199,89,0.35);transform:translateY(-1px);}.btn-outline{background:transparent;border:1.5px solid var(--color-primary);color:var(--color-primary);}.btn-outline:hover{background:var(--color-primary);color:#fff;}.btn-ghost{background:transparent;color:var(--color-primary);}.btn-ghost:hover{background:var(--color-primary-light);}.btn-sm{padding:6px 14px;font-size:var(--font-size-sm);border-radius:var(--radius-full);}.btn-lg{padding:14px 32px;font-size:var(--font-size-md);border-radius:var(--radius-full);}.btn-block{display:flex;width:100%;}.btn-icon{width:40px;height:40px;padding:0;border-radius:var(--radius-md);}.btn-icon.btn-sm{width:32px;height:32px;}.btn-icon.btn-lg{width:48px;height:48px;}.btn:disabled,.btn.disabled{opacity:0.5;cursor:not-allowed;pointer-events:none;}.btn-signin{padding:8px 20px;font-size:var(--font-size-sm);border-radius:var(--radius-full);background:var(--color-primary);color:#fff;}.btn-signin:hover{background:var(--color-primary-hover);}@media (max-width:767.98px){.search-btn{width:100%;justify-content:center;}}@media (max-width:480px){.btn-lg{padding:12px 24px;font-size:var(--font-size-base);}}.btn-block{display:block;width:100%;text-align:center;}@media (max-width:767px){.search-btn{width:100%;margin-top:8px;}}.search-btn{font-weight:600;letter-spacing:0.5px;text-transform:uppercase;font-size:var(--font-size-sm);background:var(--color-primary) !important;box-shadow:0 4px 16px rgba(37,99,235,0.3) !important;border-radius:var(--radius-full) !important;height:42px;padding:0 32px;align-self:flex-end;margin-bottom:2px;}.search-btn:hover{background:var(--color-primary-hover) !important;box-shadow:0 6px 24px rgba(37,99,235,0.4) !important;transform:translateY(-1px);}.btn-primary{background:var(--color-primary);font-weight:600;letter-spacing:0.3px;box-shadow:0 4px 16px rgba(37,99,235,0.25);transition:all 0.3s ease;}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:0 6px 24px rgba(37,99,235,0.35);transform:translateY(-1px);}.btn-signin{background:transparent;border:1.5px solid var(--color-primary);color:var(--color-primary);font-weight:600;letter-spacing:0.3px;transition:all 0.3s ease;}.btn-signin:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);}.btn-icon{border-radius:50%;}@media (max-width:767.98px){.btn-signin{padding:6px 14px;font-size:13px;white-space:nowrap;}}@media (max-width:480px){.btn-signin{padding:5px 10px;font-size:12px;}}@media (max-width:1023px){.search-form .search-btn{width:100%;margin-top:8px;}}@media (min-width:768px) and (max-width:1023px){#serpSearchForm .search-btn{flex:1 1 100%;}}.date-checkin,.date-checkout{min-width:0;position:relative;cursor:pointer !important;caret-color:transparent;}.date-checkin[readonly],.date-checkout[readonly]{background:transparent;color:var(--text-primary);opacity:1;cursor:pointer !important;-webkit-text-fill-color:var(--text-primary);}input.flatpickr-input[readonly]{cursor:pointer !important;}.input-error{border-color:#ef4444 !important;box-shadow:0 0 0 2px rgba(239,68,68,0.2) !important;}.child-age-select{height:34px;padding:0 12px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:#fff;font-size:var(--font-size-sm);color:var(--text-primary);outline:none;cursor:pointer;min-width:80px;transition:border-color var(--transition-fast);}.child-age-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring);}.form-group{margin-bottom:18px;}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}.form-row-names{grid-template-columns:90px 1fr 1fr;}.form-label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-bottom:6px;}.form-control{width:100%;height:44px;padding:0 14px;background:rgba(255,255,255,0.85);border:1.5px solid #c5ccd6;border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--text-primary);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);}select.form-control{padding-right:36px;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%238E8E93' d='M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;cursor:pointer;}.form-control::placeholder{color:var(--text-tertiary);}.form-control:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring);background:#fff;}.form-control:disabled,.form-control[readonly]{background:rgba(240,240,245,0.7);color:var(--text-secondary);cursor:not-allowed;border-color:var(--border-color);}textarea.form-control{height:auto;min-height:100px;padding:12px 14px;resize:vertical;}.form-select{width:100%;height:44px;padding:0 36px 0 14px;background:rgba(255,255,255,0.85) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%238E8E93' d='M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z'/%3E%3C/svg%3E") no-repeat right 14px center;border:1.5px solid #c5ccd6;border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--text-primary);outline:none;-webkit-appearance:none;appearance:none;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);}.form-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring);}.form-check{display:flex;align-items:center;gap:10px;cursor:pointer;padding:4px 0;}.form-check input[type=checkbox],.form-check input[type=radio]{-webkit-appearance:none;appearance:none;width:22px;height:22px;border:2px solid var(--border-strong);border-radius:6px;cursor:pointer;position:relative;transition:all var(--transition-fast);flex-shrink:0;}.form-check input[type=radio]{border-radius:50%;}.form-check input[type=checkbox]:checked,.form-check input[type=radio]:checked{background:var(--color-primary);border-color:var(--color-primary);}.form-check input[type=checkbox]:checked::after{content:"";position:absolute;top:3px;left:6px;width:6px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);}.form-check input[type=radio]:checked::after{content:"";position:absolute;top:4px;left:4px;width:10px;height:10px;border-radius:50%;background:#fff;}.form-toggle{position:relative;width:51px;height:31px;flex-shrink:0;}.form-toggle input{opacity:0;width:0;height:0;}.form-toggle-slider{position:absolute;inset:0;background:#e4e4e6;border-radius:16px;cursor:pointer;transition:background var(--transition-base);}.form-toggle-slider::before{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;background:#fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,0.15);transition:transform var(--transition-base);}.form-toggle input:checked + .form-toggle-slider{background:var(--color-success);}.form-toggle input:checked + .form-toggle-slider::before{transform:translateX(20px);}.input-error .form-control,.input-error .form-select{border-color:var(--color-danger);box-shadow:0 0 0 3px rgba(255,59,48,0.15);}.input-error-message{display:block;font-size:var(--font-size-xs);color:var(--color-danger);margin-top:4px;font-weight:500;}.form-hint{display:block;font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:4px;}@media (max-width:767.98px){.form-row{grid-template-columns:1fr;}.form-row-names{grid-template-columns:1fr;}}.form-select{display:block;width:100%;padding:10px 14px;font-size:var(--font-size-sm);border:1px solid var(--border-strong);border-radius:var(--radius-md);background-color:var(--glass-bg);color:var(--text-primary);appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238E8E93' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:28px;}.form-hint{display:block;margin-top:4px;font-size:var(--font-size-xs);color:var(--text-tertiary);}.form-label{display:block;margin-bottom:6px;font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.3);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:2000;display:none;align-items:center;justify-content:center;padding:24px;animation:fadeIn 0.2s ease;}.modal-overlay.open{display:flex;}.modal{width:100%;max-width:500px;max-height:90vh;overflow-y:auto;background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);animation:slideUp 0.3s ease;}.modal-lg{max-width:680px;}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--border-color);}.modal-header h3{font-size:var(--font-size-md);font-weight:600;}.modal-close{width:32px;height:32px;border-radius:50%;background:rgba(0,0,0,0.06);border:none;color:var(--text-secondary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast);}.modal-close:hover{background:rgba(0,0,0,0.12);color:var(--text-primary);}.modal-body{padding:24px;}.modal-footer{padding:16px 24px 20px;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:flex-end;gap:10px;}@media (max-width:480px){.modal{margin:0;max-height:100vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;position:fixed;bottom:0;left:0;right:0;}.modal-overlay{align-items:flex-end;padding:0;}}.toast-container{position:fixed;bottom:24px;left:24px;z-index:3000;display:flex;flex-direction:column;gap:10px;max-width:400px;}.toast{border-radius:var(--radius-md);box-shadow:0 4px 16px rgba(0,0,0,0.1);padding:14px 16px;display:flex;align-items:center;gap:12px;min-width:320px;border:1.5px solid var(--border-strong);background:#fff;opacity:0;transform:translateX(-16px);transition:opacity 0.3s ease,transform 0.3s ease;}.toast-visible{opacity:1;transform:translateX(0);}.toast-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;}.toast-content{flex:1;min-width:0;}.toast-title{font-weight:600;font-size:var(--font-size-sm);margin-bottom:2px;}.toast-message{font-size:var(--font-size-sm);color:var(--text-primary);font-weight:500;line-height:1.4;}.toast-close{width:24px;height:24px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:6px;transition:all 0.15s ease;}.toast-close:hover{color:var(--text-primary);background:rgba(0,0,0,0.05);}.toast-success{background:#f0fdf4;border-color:#bbf7d0;}.toast-success .toast-icon{background:var(--color-success);color:#fff;}.toast-success .toast-message{color:#166534;}.toast-info{background:#fff;border-color:#d0d5dd;}.toast-info .toast-icon{background:var(--color-primary-light);color:var(--color-primary);}.toast-info .toast-message{color:var(--text-secondary);}.toast-warning{background:#fffbeb;border-color:#fde68a;}.toast-warning .toast-icon{background:#f59e0b;color:#fff;}.toast-warning .toast-message{color:#92400e;}.toast-error{background:#fef2f2;border-color:#fecaca;}.toast-error .toast-icon{background:var(--color-danger);color:#fff;}.toast-error .toast-message{color:#991b1b;}@media (max-width:767.98px){.toast-container{left:16px;right:16px;bottom:16px;}.toast{min-width:0;}.toast-info{display:none !important;}}.star-icon{color:var(--color-accent);font-size:inherit;line-height:1;}.star-icon.empty{color:var(--text-tertiary);}.stars-row{display:flex;align-items:center;gap:2px;}.stars-row.stars-lg{font-size:20px;gap:3px;}.stars-row.stars-sm{font-size:12px;gap:1px;}.rating-number{font-weight:700;color:var(--text-primary);margin-right:4px;}.rating-count{font-size:var(--font-size-sm);color:var(--text-secondary);}.star-icon{width:14px;height:14px;flex-shrink:0;display:inline-block;vertical-align:middle;}.stars-row{display:inline-flex;align-items:center;gap:2px;vertical-align:middle;line-height:1;}.stars-row.stars-lg .star-icon{width:18px;height:18px;}.stars-row.stars-lg{gap:3px;}.stars-row.stars-sm .star-icon{width:11px;height:11px;}.stars-row.stars-sm{gap:1px;}.pagination{display:flex;align-items:center;justify-content:center;gap:6px;padding:24px 0;}.page-btn{min-width:38px;height:38px;padding:0 10px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;}.page-btn:hover{background:rgba(255,255,255,0.95);box-shadow:var(--shadow-sm);color:var(--text-primary);}.page-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 2px 8px rgba(0,122,255,0.25);}.page-btn:disabled{opacity:0.4;cursor:not-allowed;}.page-ellipsis{color:var(--text-secondary);font-size:var(--font-size-sm);padding:0 4px;}@media (max-width:767.98px){.pagination{gap:4px;}.page-btn{min-width:34px;height:34px;font-size:var(--font-size-xs);}}.page-btn{border-radius:var(--radius-full);}.site-footer{background:#1c1c1e;color:rgba(255,255,255,0.7);padding:60px 0 0;margin-top:80px;}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding-bottom:40px;}.footer-brand{font-size:var(--font-size-lg);font-weight:700;color:#fff;margin-bottom:12px;}.footer-desc{font-size:var(--font-size-sm);line-height:1.6;color:rgba(255,255,255,0.5);max-width:300px;}.footer-col h4{color:#fff;font-size:var(--font-size-sm);font-weight:600;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:16px;}.footer-links{display:flex;flex-direction:column;gap:10px;}.footer-links a,.footer-col ul a{color:#cbd5e1;font-size:var(--font-size-sm);transition:color var(--transition-fast);text-decoration:none;}.footer-links a:hover,.footer-col ul a:hover{color:#fff;}.footer-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}.footer-bottom{border-top:1px solid rgba(255,255,255,0.1);padding:20px 0;display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);color:rgba(255,255,255,0.4);}.footer-social{display:flex;gap:12px;}.footer-social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.5);font-size:16px;transition:background var(--transition-fast),color var(--transition-fast);}.footer-social a:hover{background:rgba(255,255,255,0.15);color:#fff;}@media (max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px;}}@media (max-width:767.98px){.footer-grid{grid-template-columns:1fr;gap:28px;}.footer-bottom{flex-direction:column;gap:12px;text-align:center;}}@media (max-width:767px){.footer-grid{grid-template-columns:1fr 1fr;gap:24px;}}@media (max-width:599px){.footer-grid{grid-template-columns:1fr;gap:20px;}}.site-footer{border-top:1px solid rgba(37,99,235,0.08) !important;}.footer-logo span{font-family:var(--font-heading);}.footer-col h4{text-transform:uppercase;font-size:11px;letter-spacing:1.5px;font-weight:600;font-family:var(--font-family);color:var(--text-secondary);}.footer-contact-info{display:flex;flex-direction:column;gap:10px;margin-top:12px;}.footer-contact-info .footer-contact-item{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:rgba(255,255,255,0.5);line-height:1.5;}.footer-contact-info .footer-contact-item svg{flex-shrink:0;margin-top:2px;opacity:0.5;}.footer-contact-info .footer-contact-item a{color:rgba(255,255,255,0.6);transition:color 0.2s ease;}.footer-contact-info .footer-contact-item a:hover{color:#fff;}.price-tag{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary);}.price-tag-lg{font-size:var(--font-size-2xl);}.savings-badge{display:inline-flex;align-items:center;padding:3px 10px;background:var(--color-success-light);color:#248a3d;font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);}.price-breakdown{display:flex;flex-direction:column;gap:8px;}.price-breakdown-row{display:flex;justify-content:space-between;font-size:var(--font-size-base);}.price-breakdown-row.total{font-weight:700;font-size:var(--font-size-lg);padding-top:12px;border-top:1px solid var(--border-color);}.alert{border-radius:var(--radius-md);padding:14px 18px;display:flex;align-items:flex-start;gap:12px;margin-bottom:16px;font-size:var(--font-size-sm);line-height:1.5;border:1.5px solid var(--border-strong);background:#fff;}.alert-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;margin-top:1px;}.alert-content{flex:1;}.alert-title{font-weight:600;font-size:var(--font-size-base);margin-bottom:2px;}.alert-text{font-size:var(--font-size-sm);color:var(--text-secondary);}.alert-info{background:#eff6ff;border-color:#bfdbfe;color:#1e40af;}.alert-info .alert-icon{color:var(--color-primary);}.alert-success{background:#f0fdf4;border-color:#bbf7d0;color:#166534;}.alert-success .alert-icon{color:var(--color-success);}.alert-warning{background:#fffbeb;border-color:#fde68a;color:#92400e;}.alert-warning .alert-icon{color:#f59e0b;}.alert-danger{background:#fef2f2;border-color:#fecaca;color:#991b1b;}.alert-danger .alert-icon{color:var(--color-danger);}.alert-dismissible{padding-right:40px;position:relative;}.alert-dismiss{position:absolute;top:12px;right:12px;width:24px;height:24px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;}.alert-dismiss:hover{color:var(--text-primary);}.spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin 0.7s linear infinite;}.spinner-sm{width:20px;height:20px;border-width:2px;}.spinner-lg{width:48px;height:48px;border-width:4px;}.spinner-white{border-color:rgba(255,255,255,0.3);border-top-color:#fff;}.spinner-overlay{position:fixed;inset:0;background:rgba(255,255,255,0.8);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:4000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;}.spinner-overlay-text{font-size:var(--font-size-base);color:var(--text-secondary);font-weight:500;}@keyframes spin{to{transform:rotate(360deg);}}@media (max-width:767.98px){.rv-grid{justify-content:center !important;}}.rv-card{display:block;border-radius:var(--radius-lg);overflow:hidden;text-decoration:none;color:inherit;transition:transform var(--transition-base),box-shadow var(--transition-base);}.rv-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);}.rv-card img{width:100%;height:140px;object-fit:cover;}.rv-card-info{padding:12px 14px;}.rv-card-name{font-weight:600;font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.rv-card{border-radius:var(--radius-xl);}@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}@keyframes slideUp{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}@keyframes slideInLeft{from{opacity:0;transform:translateX(-24px);}to{opacity:1;transform:translateX(0);}}@keyframes slideInRight{from{opacity:0;transform:translateX(24px);}to{opacity:1;transform:translateX(0);}}@keyframes shimmer{0%{background-position:200% 0;}100%{background-position:-200% 0;}}@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.5;}}@keyframes scaleIn{from{opacity:0;transform:scale(0.95);}to{opacity:1;transform:scale(1);}}.animate-fade-in{animation:fadeIn 0.3s ease;}.animate-slide-up{animation:slideUp 0.4s ease;}.animate-slide-in-left{animation:slideInLeft 0.35s ease;}.animate-slide-in-right{animation:slideInRight 0.35s ease;}.animate-pulse{animation:pulse 2s ease-in-out infinite;}.animate-scale-in{animation:scaleIn 0.25s ease;}.stagger-1{animation-delay:0.05s;animation-fill-mode:both;}.stagger-2{animation-delay:0.1s;animation-fill-mode:both;}.stagger-3{animation-delay:0.15s;animation-fill-mode:both;}.stagger-4{animation-delay:0.2s;animation-fill-mode:both;}.stagger-5{animation-delay:0.25s;animation-fill-mode:both;}.stagger-6{animation-delay:0.3s;animation-fill-mode:both;}@keyframes shimmer{0%{background-position:-200% 0;}100%{background-position:200% 0;}}.autocomplete-results::-webkit-scrollbar{width:6px;}.autocomplete-results::-webkit-scrollbar-track{background:transparent;}.autocomplete-results::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:3px;}::-webkit-scrollbar{width:8px;height:8px;}::-webkit-scrollbar-track{background:transparent;}::-webkit-scrollbar-thumb{background:rgba(0,0,0,0.12);border-radius:4px;}::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,0.2);}::-webkit-scrollbar{width:6px;}::-webkit-scrollbar-track{background:transparent;}::-webkit-scrollbar-thumb{background:rgba(37,99,235,0.18);border-radius:3px;}::-webkit-scrollbar-thumb:hover{background:rgba(37,99,235,0.3);}.checkout-section{padding-top:calc(var(--header-height) + 48px);padding-bottom:60px;}.page-content{padding-top:calc(var(--header-height) + 24px);padding-bottom:48px;min-height:100vh;}.section{padding:60px 0;}.section-sm{padding:32px 0;}.section-lg{padding:80px 0;}.divider{height:1px;background:var(--border-color);margin:24px 0;}.divider-lg{margin:40px 0;}.section-header{text-align:center;margin-bottom:40px;}.section-header h2{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary);margin-bottom:8px;}.section-header p{font-size:var(--font-size-base);color:var(--text-secondary);}.newsletter-section{padding-bottom:60px;}@media (max-width:767px){.section{padding:40px 0;}.section-header{margin-bottom:28px;}.section-header h2{font-size:var(--font-size-xl);}}@media (max-width:599px){.section{padding:32px 0;}.section-header{margin-bottom:20px;}.section-header h2{font-size:var(--font-size-lg);}.section-header p{font-size:var(--font-size-sm);}}.section{padding:80px 0;position:relative;}.section + .section::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:48px;height:2px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);opacity:0.3;border-radius:1px;}.section-header{margin-bottom:48px;}.section-header h2{font-family:var(--font-heading);font-size:clamp(26px,3.5vw,38px);font-weight:400;color:var(--text-primary);margin-bottom:12px;}.section-header p{font-size:var(--font-size-md);color:var(--text-secondary);letter-spacing:0.02em;}@media (max-width:767px){.section{padding:56px 0;}.section + .section::before{width:32px;}}@media (max-width:599px){.section{padding:44px 0;}}@media (max-width:767.98px){.container{padding:0 16px;}}@media (max-width:480px){.container{padding:0 14px;}}@media (max-width:767px){.container{padding:0 16px;}}@media (max-width:599px){.container{padding:0 12px;}}@media print{.site-header,.site-footer,.toast-container,.spinner-overlay,.modal-overlay{display:none !important;}body{background:#fff;}.glass,.glass-strong,.glass-subtle,.glass-card{background:#fff;backdrop-filter:none;box-shadow:none;border:1px solid #ddd;}}.glass-strong{background:var(--glass-bg-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);}.glass-frost{background:rgba(255,255,255,0.55);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);border:1px solid rgba(255,255,255,0.6);box-shadow:0 4px 24px rgba(37,99,235,0.07),inset 0 1px 0 rgba(255,255,255,0.8);}.glass,.glass-card{background:rgba(255,255,255,0.55);backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);border:1px solid rgba(255,255,255,0.55);box-shadow:0 4px 20px rgba(37,99,235,0.06),inset 0 1px 0 rgba(255,255,255,0.8);}.glass-card{border-radius:var(--radius-xl);}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}html{scroll-behavior:auto;}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible){outline:none;}.favorite-btn svg{transition:all 0.2s ease;}.favorite-btn.is-fav svg,.favorite-btn.favorited svg{fill:#f44336;stroke:#f44336;}.favorite-btn:hover{transform:scale(1.1);}.favorite-btn:hover svg{stroke:#f44336;}#siteHeader{background:#fff;height:80px;display:flex;align-items:center;}#siteHeader > .container{height:100%;}#siteHeader .header-inner{height:100%;display:flex;align-items:center;}#siteHeader .logo-text{font-family:Palatino,"Palatino Linotype","Book Antiqua",serif;font-weight:400;font-size:30px;letter-spacing:-0.03em;color:#1e2a3a;line-height:1;}#siteHeader .logo-text > span{color:#378add;}#siteHeader .dropdown-menu .logout-form button{display:block;width:100%;text-align:left;padding:10px 18px;font:inherit;font-size:var(--font-size-sm);color:var(--text-primary);background:none;border:0;cursor:pointer;}#siteHeader .mobile-menu .logout-form button{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;font:inherit;font-size:var(--font-size-md);font-weight:500;color:var(--text-primary);background:none;border:0;border-radius:var(--radius-md);cursor:pointer;}.site-footer .footer-logo .logo-text{font-family:Palatino,"Palatino Linotype","Book Antiqua",serif;font-weight:400;font-size:30px;letter-spacing:-0.03em;color:#fff;line-height:1;}.site-footer .footer-logo .logo-text > span{color:#378add;}.site-footer .footer-tagline{margin-top:8px;font-size:13px;color:rgba(255,255,255,0.4);}[data-drupal-messages] > .alert:first-child{margin-top:80px;}
