:root{--color-sage: #8A9A5B;--color-sage-dark: #5F6F40;--color-gold: #D4AF37;--color-cream: #F5F5DC;--color-slate: #2F4F4F;--color-white: #ffffff;--color-text: #2c3e50;--font-heading: "Playfair Display", serif;--font-body: "DM Sans", sans-serif;--transition-slow: .8s ease;--transition-medium: .4s ease}*{margin:0;padding:0;box-sizing:border-box}html{font-family:var(--font-body);color:var(--color-text);scroll-behavior:smooth;scroll-snap-type:y mandatory}body{overflow-x:hidden;background-color:var(--color-cream)}h1,h2,h3{font-family:var(--font-heading);font-weight:700;line-height:1.2}h1{font-size:5rem;font-weight:400;color:var(--color-white);line-height:1.1;margin-bottom:0;text-shadow:0 4px 10px rgba(0,0,0,.4)}h2{font-size:4rem;font-weight:400;color:var(--color-white);text-shadow:0 4px 10px rgba(0,0,0,.4)}p{font-size:1.125rem;line-height:1.6}.highlight-text{font-family:var(--font-heading);font-size:2.5rem;color:var(--color-white);background-color:transparent;padding:0;text-shadow:0 2px 10px rgba(0,0,0,.8);display:inline-block;line-height:1.4;max-width:900px}#main-header{position:fixed;top:0;left:0;width:100%;z-index:100;padding:1.5rem 2rem;transition:background-color var(--transition-medium),padding var(--transition-medium)}#main-header.scrolled{background-color:#fffffff2;box-shadow:0 2px 10px #0000001a;padding:1rem 2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo-link{display:flex;align-items:center;text-decoration:none}.logo-img{height:50px;width:auto;transition:transform .3s ease}.logo-link:hover .logo-img{transform:scale(1.05)}#main-header.scrolled .logo-img{height:45px}.btn-primary{background-color:var(--color-sage);color:var(--color-white);border:none;padding:.75rem 1.5rem;border-radius:50px;font-family:var(--font-body);font-weight:500;cursor:pointer;transition:all .3s ease;font-size:1rem}.btn-primary:hover{background-color:var(--color-sage-dark);transform:translateY(-2px);box-shadow:0 4px 12px #8a9a5b4d}.btn-primary.large{padding:1rem 2.5rem;font-size:1.25rem}.btn-primary.full-width{width:100%}.secondary .btn-primary{margin-top:2rem}#stage-5 .btn-primary{font-size:1.5rem;padding:1.5rem 4rem;margin-top:3rem;border-radius:60px;box-shadow:0 10px 25px #8a9a5b66}#side-nav{position:fixed;right:2rem;top:50%;transform:translateY(-50%);z-index:90}#side-nav ul{list-style:none;display:flex;flex-direction:column;gap:1.5rem}#side-nav a{display:block;width:12px;height:12px;border-radius:50%;background-color:#ffffff80;border:2px solid transparent;transition:all .3s ease;position:relative}#side-nav a.active{background-color:var(--color-gold);transform:scale(1.2)}#side-nav a:hover:before,#side-nav a.active:before{content:attr(data-label);position:absolute;right:24px;top:50%;transform:translateY(-50%);background-color:#000000b3;color:#fff;padding:4px 8px;border-radius:4px;font-size:.75rem;white-space:nowrap;opacity:1}#side-nav a:before{opacity:0;transition:opacity .3s ease;pointer-events:none}#video-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden}#scroll-video{width:100%;height:100%;object-fit:cover}#video-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#0003;z-index:1}.stage{position:relative;height:400vh;width:100%;scroll-snap-align:start;display:flex;justify-content:center}.content-container{position:sticky;top:0;height:100vh;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 2rem;z-index:10}.text-group{position:absolute;top:42%;left:50%;transform:translate(-50%,-50%);width:100%;max-width:1100px;opacity:0;transition:opacity .8s ease,transform .8s ease;pointer-events:none}.text-group.active{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}#stage-5 .text-group.primary h2{font-size:5rem}.stage-5-logo{max-width:400px;width:80%;height:auto;filter:drop-shadow(0 4px 10px rgba(0,0,0,.3))}.scroll-nudge{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);z-index:20;display:flex;flex-direction:column;align-items:center;color:var(--color-white);opacity:0;transition:opacity .3s ease;animation:bounce 2s infinite}.scroll-nudge.visible{opacity:.8}.scroll-nudge span{margin-bottom:.5rem;font-size:.875rem;letter-spacing:1px;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.5)}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%) translateY(0)}40%{transform:translate(-50%) translateY(-10px)}60%{transform:translate(-50%) translateY(-5px)}}#modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;z-index:1000;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;pointer-events:none;transition:opacity .3s ease}#modal-overlay:not(.hidden){opacity:1;pointer-events:auto}.modal{background-color:#ffffffe6;padding:3rem;border-radius:16px;width:90%;max-width:500px;position:relative;box-shadow:0 20px 50px #0003;transform:scale(.9);transition:transform .3s ease}#modal-overlay:not(.hidden) .modal{transform:scale(1)}.close-modal{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-slate)}.modal h3{color:var(--color-slate);margin-bottom:.5rem;text-shadow:none}.modal p{color:#666;margin-bottom:2rem;font-size:1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-slate)}.form-group input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:8px;font-family:var(--font-body);font-size:1rem}.form-group input:focus{outline:none;border-color:var(--color-sage);box-shadow:0 0 0 3px #8a9a5b1a}.hidden{display:none!important}#success-message{text-align:center;padding:2rem 0}.success-icon{width:60px;height:60px;background-color:var(--color-sage);color:#fff;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:2rem;margin:0 auto 1.5rem}@media (max-width: 768px){h1{font-size:2.5rem}h2{font-size:2rem}.highlight-text{font-size:1.5rem;padding:1rem}#side-nav{display:none!important}}#side-nav a:hover:before,#side-nav a.active:before{display:none}.section-label{display:block;font-family:var(--font-body);font-size:1rem;text-transform:uppercase;letter-spacing:2px;color:#eec49b;margin-bottom:1rem;font-weight:700}@media (max-width: 768px){.section-label{margin-top:1rem}.text-group.secondary{padding:0 1rem;width:90%}}
