:root{--color-primary:#d4af37;--color-secondary:#2c3e50;--color-bg:#fff;--color-bg-offset:#f9fbfa;--color-text:#1a1a1a;--color-text-dim:#546e7a;--color-accent:#e6c25a;--color-white-translucent:#ffffffd9;--card-bg:#fff;--card-border:#2c3e5014;--card-shadow:0 10px 30px -5px #0000000a;--card-shadow-hover:0 30px 60px -15px #d4af3726;--font-main:"Inter",system-ui,-apple-system,sans-serif;--font-title:"Montserrat",sans-serif;--transition-fast:.25s cubic-bezier(.4,0,.2,1);--transition-slow:.6s cubic-bezier(.4,0,.2,1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-main);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}section{padding:8rem 0}h1,h2,h3,h4,.font-title{font-family:var(--font-title);letter-spacing:-.01em;color:var(--color-secondary);font-weight:700;line-height:1.2}h2{margin-bottom:1.5rem;font-size:clamp(2rem,5vw,2.75rem)}a{color:inherit;transition:var(--transition-fast);text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.tight-text{max-width:65ch;margin-left:auto;margin-right:auto}.card{background:var(--card-bg);border:1px solid var(--card-border);box-shadow:var(--card-shadow);transition:all var(--transition-fast);border-radius:16px;padding:2.5rem}.card:hover{box-shadow:var(--card-shadow-hover);border-color:#d4af374d;transform:translateY(-8px)}.text-gradient{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn-primary{background:var(--color-secondary);color:#fff;transition:all var(--transition-fast);border:2px solid var(--color-secondary);letter-spacing:.02em;border-radius:12px;justify-content:center;align-items:center;padding:1rem 2.25rem;font-size:1rem;font-weight:600;display:inline-flex;box-shadow:0 4px 15px #2c3e5033}.btn-primary:hover{background:#34495e;border-color:#34495e;transform:translateY(-2px);box-shadow:0 8px 25px #2c3e504d}.btn-outline{border:2px solid var(--color-primary);color:var(--color-primary);transition:all var(--transition-fast);background:0 0;border-radius:12px;justify-content:center;align-items:center;padding:1rem 2.25rem;font-size:1rem;font-weight:600;display:inline-flex}.btn-outline:hover{background:#d4af370d;transform:translateY(-2px);box-shadow:0 8px 25px #d4af371a}.about-list{gap:2rem;list-style:none;display:grid}.about-list-item{align-items:flex-start;gap:1.25rem;display:flex}.about-list-icon{background:var(--color-primary);border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:.5rem;box-shadow:0 0 10px #d4af3766}input,textarea{border:1px solid var(--card-border);width:100%;transition:all var(--transition-fast);background:#fafbfc;border-radius:10px;padding:1rem 1.25rem;font-family:inherit;font-size:1rem}input:focus,textarea:focus{border-color:var(--color-primary);background:#fff;outline:none;box-shadow:0 0 0 4px #d4af371a}.navbar{z-index:1000;width:calc(100% - 3rem);max-width:1200px;transition:all .4s var(--transition-fast);justify-content:space-between;align-items:center;padding:.75rem 2rem;display:flex;position:fixed;top:1.5rem;left:50%;transform:translate(-50%)}.nav-card{-webkit-backdrop-filter:blur(20px)saturate(180%);background:#ffffffbf;border:1px solid #fff6;border-radius:100px;box-shadow:0 15px 40px #00000014}.nav-link{transition:all var(--transition-fast);border-radius:50px;padding:.5rem 1rem;font-size:.9rem;font-weight:600}.nav-link:hover{color:var(--color-primary);background:#d4af370d}.nav-divider{display:block}@media (max-width:768px){.nav-divider{display:none}}.gallery-img-container{border:1px solid var(--card-border);border-radius:12px;height:280px;overflow:hidden}.gallery-img{background-position:50%;background-size:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.4,0,.2,1)}.gallery-img-container:hover .gallery-img{transform:scale(1.1)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-fade-up{opacity:0;animation:.8s cubic-bezier(.2,.8,.2,1) forwards fadeInUp}.hero{text-align:center;background:linear-gradient(#ffffffa6,#ffffffbf),url(/cheers.jpg) 50%/cover no-repeat;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:12rem 1.5rem 4rem;display:flex;position:relative;overflow:hidden}.hero:after{content:"";background:linear-gradient(to top,var(--color-bg),transparent);pointer-events:none;width:100%;height:15vh;position:absolute;bottom:0;left:0}.hero-logo{filter:drop-shadow(0 15px 30px #0000001a);height:140px;transition:transform .5s var(--transition-fast);margin-bottom:2.5rem}.hero-logo:hover{transform:scale(1.05)translateY(-5px)}.hero h1{letter-spacing:-.03em;margin-bottom:1.5rem;font-size:clamp(2.5rem,8vw,4.75rem)}.hero p{color:var(--color-text-dim);margin-bottom:3.5rem;font-size:1.25rem;font-weight:400}@media (max-width:768px){section{padding:5rem 0}.navbar{border-radius:12px!important;width:calc(100% - 1rem)!important;top:.5rem!important}.nav-links{display:none!important}.nav-links.mobile-active{border:1px solid var(--card-border);background:#fff;border-radius:12px;flex-direction:column;width:100%;padding:2rem;position:absolute;top:4.5rem;left:0;box-shadow:0 20px 40px #0000001a;gap:1.5rem!important;display:flex!important}.nav-links.mobile-active .nav-link{text-align:center;width:100%;font-size:1.1rem;display:block!important}.nav-links.mobile-active .btn-primary{width:100%}.hamburger{cursor:pointer;z-index:1001;background:0 0;border:none;padding:.5rem;position:relative;display:block!important}.hamburger span{background:var(--color-secondary);width:24px;height:2px;margin:5px 0;transition:all .3s;display:block}.hamburger.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.hero{background-attachment:scroll!important;min-height:auto!important;padding-top:10rem!important;padding-bottom:6rem!important}.footer-nav{flex-wrap:wrap!important;gap:1rem 1.5rem!important;padding:0 1rem!important}.footer-nav .nav-link{font-size:.85rem!important;display:inline-block!important}}.hamburger{display:none}
