@import "https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Poppins:wght@300;400;500;600;700&display=swap";
:root{--color-primary:#7b3744;--color-primary-light:#9b5563;--color-primary-dark:#5a2832;--color-primary-gradient:linear-gradient(135deg,#7b3744 0%,#5a2832 100%);--color-secondary:#d4b5b0;--color-secondary-light:#e8d5d1;--color-secondary-dark:#c89b94;--color-accent:#c89b94;--color-accent-light:#d9ada7;--color-accent-dark:#b58981;--color-white:#fff;--color-off-white:#fafafa;--color-cream:#f5f0ed;--color-light-gray:#e8d5d1;--color-gray:#d4b5b0;--color-medium-gray:#9e9e9e;--color-dark-gray:#616161;--color-charcoal:#2c2c2c;--color-black:#0a0a0a;--color-success:#27ae60;--color-error:#e74c3c;--color-warning:#f39c12;--color-info:#3498db;--bg-primary:var(--color-white);--bg-secondary:var(--color-cream);--bg-tertiary:var(--color-light-gray);--bg-dark:var(--color-charcoal);--bg-overlay:#7b374480;--color-bg:var(--bg-primary);--color-surface:var(--bg-secondary);--color-border:#7b374429;--text-primary:var(--color-charcoal);--text-secondary:var(--color-dark-gray);--text-light:var(--color-medium-gray);--text-inverse:var(--color-white);--color-text:var(--text-primary);--color-text-muted:var(--text-secondary);--color-primary-rgb:123,55,68;--spacing-xs:.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem;--spacing-2xl:4rem;--spacing-3xl:6rem;--font-display:"Playfair Display",serif;--font-body:"Poppins",sans-serif;--font-sans:var(--font-body);--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:2rem;--font-size-4xl:2.5rem;--font-size-5xl:3rem;--font-size-6xl:4rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.75;--radius-sm:.25rem;--radius-md:.5rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--shadow-2xl:0 25px 50px -12px #00000040;--transition-fast:.15s ease-in-out;--transition-base:.25s ease-in-out;--transition-slow:.35s ease-in-out;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1280px;--container-2xl:1536px}.reveal{opacity:0;will-change:opacity,transform;transition:all 1s cubic-bezier(.5,0,0,1);transform:translateY(30px)}.reveal.reveal-active{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.animate-float{animation:6s ease-in-out infinite float}.wave-divider{z-index:1;pointer-events:none;width:100%;line-height:0;position:absolute;left:0;overflow:hidden}.wave-divider svg{width:calc(100% + 1.3px);height:100px;display:block}.wave-divider-top{top:0;transform:rotate(180deg)}.wave-divider-bottom{bottom:0}@keyframes slideInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:80px}html,body{max-width:100vw;overflow-x:hidden}body{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-primary)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary);margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-md);line-height:var(--line-height-relaxed)}a{color:var(--color-primary);transition:color var(--transition-base);text-decoration:none}a:hover{color:var(--color-primary-dark)}strong,b{font-weight:var(--font-weight-semibold)}em,i{font-style:italic}.container{width:100%;max-width:var(--container-xl);padding-left:var(--spacing-md);padding-right:var(--spacing-md);margin-left:auto;margin-right:auto}.container-sm{max-width:var(--container-sm)}.container-md{max-width:var(--container-md)}.container-lg{max-width:var(--container-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.relative{position:relative}.z-10{z-index:10}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--text-secondary)}.text-white{color:var(--color-white)}.bg-primary{background-color:var(--color-primary)}.bg-light{background-color:var(--bg-secondary)}.bg-dark{background-color:var(--bg-dark)}.btn{justify-content:center;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm)var(--spacing-lg);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);white-space:nowrap;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);border:none;outline:none;line-height:1;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--color-primary-gradient);color:#fff}.btn-primary:hover{color:#fff;background:linear-gradient(135deg,#8e3a4d 0%,#4a1f28 100%)}.btn-secondary{background-color:var(--color-primary);color:#fff}.btn-secondary:hover{background-color:var(--color-primary-dark)}.btn-outline{border:2px solid var(--color-primary);color:var(--color-primary);background-color:#0000}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-white)}.btn-lg{padding:var(--spacing-md)var(--spacing-xl);font-size:var(--font-size-lg)}.btn-sm{padding:var(--spacing-xs)var(--spacing-md);font-size:var(--font-size-sm)}input,textarea,select{width:100%;padding:var(--spacing-sm)var(--spacing-md);font-family:var(--font-body);font-size:var(--font-size-base);color:var(--text-primary);background-color:var(--color-white);border:2px solid var(--color-gray);border-radius:var(--radius-md);transition:all var(--transition-base);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #9b59b61a}textarea{resize:vertical;min-height:120px}label{margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);display:block}.card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-xl);transform:translateY(-4px)}section{padding:var(--spacing-3xl)0}.section-title{font-size:var(--font-size-4xl);text-align:center;margin-bottom:var(--spacing-xl);position:relative}.section-title:after{content:"";background:var(--color-primary-gradient);width:80px;height:4px;margin:var(--spacing-md)auto 0;border-radius:var(--radius-full);display:block}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.fade-in{animation:fadeIn var(--transition-slow)ease-in}.slide-in-up{animation:slideInUp var(--transition-slow)ease-out}.slide-in-down{animation:slideInDown var(--transition-slow)ease-out}.scale-in{animation:scaleIn var(--transition-slow)ease-out}@media (max-width:768px){:root{--font-size-5xl:2.25rem;--font-size-4xl:2rem;--font-size-3xl:1.5rem;--font-size-2xl:1.25rem}section{padding:var(--spacing-2xl)0}}@media (max-width:480px){:root{--font-size-5xl:2rem;--font-size-4xl:1.75rem}.container{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}}
