:root{--bg-primary:#fdfbf7;--bg-secondary:#f7f2eb;--bg-card:#fff;--bg-card-muted:#faf6f0;--bg-overlay:#2c252373;--accent-terracotta:#c88a65;--accent-terracotta-hover:#b57956;--accent-soft:#c88a651f;--accent-soft-hover:#c88a6538;--text-main:#2c2523;--text-body:#5c524c;--text-muted:#8c7f77;--text-light:#faf6f0;--border-color:#c88a652e;--border-color-hover:#c88a6561;--font-serif:"Cormorant Garamond", Georgia, serif;--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--shadow-sm:0 4px 14px #3c2d230a;--shadow-md:0 12px 32px -4px #3c2d2312;--shadow-lg:0 24px 50px -10px #3c2d231f;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--transition-fast:.18s cubic-bezier(.16, 1, .3, 1);--transition-normal:.28s cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{background-color:var(--bg-primary);color:var(--text-body);font-family:var(--font-sans);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,.font-serif{font-family:var(--font-serif);color:var(--text-main);font-weight:600;line-height:1.12}p{max-width:85ch}button{font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent-terracotta);outline-offset:3px}input,select,textarea{font-family:var(--font-sans);font-size:.95rem}.container{width:100%;max-width:100%;padding:0 clamp(20px,4vw,60px)}.badge{border-radius:var(--radius-full);letter-spacing:.03em;text-transform:uppercase;background-color:var(--accent-soft);color:var(--accent-terracotta);border:1px solid #c88a6540;align-items:center;gap:6px;padding:6px 14px;font-size:.8rem;font-weight:600;display:inline-flex}.badge-outline{color:var(--text-body);border:1px solid var(--border-color);background-color:#0000}.btn-primary{border-radius:var(--radius-full);background-color:var(--accent-terracotta);color:#fff;transition:transform var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);justify-content:center;align-items:center;gap:10px;padding:14px 28px;font-size:.95rem;font-weight:600;display:inline-flex;box-shadow:0 6px 20px #c88a6540}@media (hover:hover){.btn-primary:hover{background-color:var(--accent-terracotta-hover);transform:translateY(-2px);box-shadow:0 10px 25px #c88a6559}}.btn-secondary{border-radius:var(--radius-full);background-color:var(--bg-secondary);color:var(--text-main);border:1px solid var(--border-color);transition:transform var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:13px 26px;font-size:.95rem;font-weight:600;display:inline-flex}@media (hover:hover){.btn-secondary:hover{border-color:var(--border-color-hover);background-color:#efe7dc;transform:translateY(-2px)}}.btn-icon{border-radius:var(--radius-full);background-color:var(--bg-card);border:1px solid var(--border-color);width:44px;height:44px;color:var(--text-main);transition:transform var(--transition-fast), background-color var(--transition-fast);justify-content:center;align-items:center;display:flex}@media (hover:hover){.btn-icon:hover{background-color:var(--accent-soft);color:var(--accent-terracotta);transform:translateY(-1px)}}.modal-backdrop{background-color:var(--bg-overlay);-webkit-backdrop-filter:blur(8px);z-index:100;justify-content:center;align-items:center;padding:20px;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#e3d7c7;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-terracotta)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
