.navbar{position:fixed;top:0;width:100%;background-color:#e9e7dff5;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);z-index:1000;transition:all .4s cubic-bezier(.4,0,.2,1);padding:1rem 0;animation:slideDown .6s ease;border-bottom:1px solid rgba(19,24,53,.06)}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.navbar.scrolled{background-color:#e9e7dffc;box-shadow:0 4px 24px #13183514;padding:.8rem 0;transition:background-color .3s ease,box-shadow .3s ease}.nav-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.logo{text-decoration:none;display:inline-block}.logo h2{font-family:var(--font-sans);font-size:1.6rem;font-weight:700;letter-spacing:.06em;color:var(--ks-gold-navbar);cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;margin:0;-webkit-font-smoothing:antialiased}.logo h2:after{content:"";position:absolute;bottom:-3px;left:0;width:0;height:3px;background:linear-gradient(90deg,var(--ks-gold-navbar),var(--ks-gold-navbar-hover));transition:width .4s ease}.logo h2:hover{color:var(--ks-gold-navbar-hover);transform:scale(1.02)}.logo h2:hover:after{width:100%}.nav-menu{display:flex;list-style:none;gap:2.5rem;align-items:center}.nav-menu li a{text-decoration:none;color:var(--ks-gold-navbar);font-weight:700;font-size:1rem;letter-spacing:.06em;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;padding:.5rem 0;display:block}.nav-menu li a:hover{color:var(--ks-gold-navbar-hover);transform:translateY(-2px)}.nav-menu li a:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:3px;background:linear-gradient(90deg,var(--ks-gold-navbar),var(--ks-gold-navbar-hover));transition:width .4s ease,transform .4s ease;border-radius:2px}.nav-menu li a:hover:after{width:100%;transform:translate(-50%)}.hamburger{display:none;flex-direction:column;cursor:pointer;gap:5px}.hamburger span{width:25px;height:3px;background-color:var(--ks-gold-navbar);transition:all .4s cubic-bezier(.4,0,.2,1);border-radius:2px}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}@media(max-width:768px){.nav-container{padding:0 1rem}.logo h2{font-size:clamp(1.05rem,4.5vw,1.5rem);letter-spacing:.04em}.hamburger{display:flex}.nav-menu{position:fixed;left:-100%;top:70px;flex-direction:column;background-color:#e9e7dffc;width:100%;text-align:center;transition:.3s,background-color .3s ease;box-shadow:0 10px 27px #1318351f;padding:2rem 0;gap:1.5rem}.nav-menu.active{left:0}}.footer{background:linear-gradient(165deg,var(--ks-blue-deep) 0%,var(--ks-mulberry) 42%,var(--ks-blue) 78%,#1a1430 100%);color:var(--ks-cream);padding:6rem 4rem 3rem;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--ks-red);background-size:200% 100%;animation:footerGradientFlow 3s ease infinite}@keyframes footerGradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.footer-container{max-width:1400px;margin:0 auto;position:relative;z-index:1}.footer-header{text-align:center;margin-bottom:4rem;animation:footerFadeInUp .8s ease}@keyframes footerFadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.footer-wordmark{display:block;width:min(98vw,820px);height:auto;max-height:10rem;margin:0 auto 1rem;object-fit:contain}.footer-header p{font-size:1.25rem;color:#e9e7dfe0;font-weight:400;font-style:italic;letter-spacing:.04em;max-width:600px;margin:0 auto}.locations-section{display:grid;grid-template-columns:repeat(2,minmax(320px,500px));justify-content:center;gap:2rem;margin-bottom:4rem;animation:footerFadeInUp .8s ease .2s both}.location-card{max-width:500px;width:100%;position:relative;padding:2.5rem;background:#e9e7df0a;border:1px solid rgba(98,67,51,.35);border-radius:12px;transition:all .3s ease}.location-card:hover{background:#e9e7df12;border-color:#6243338c;transform:translateY(-5px);box-shadow:0 10px 30px #00000040}.social-card{max-width:500px;width:100%;position:relative;padding:2.5rem;background:#e9e7df0a;border:1px solid rgba(98,67,51,.35);border-radius:12px;transition:all .3s ease}.social-card:hover{background:#e9e7df12;border-color:#6243338c;transform:translateY(-5px);box-shadow:0 10px 30px #00000040}.social-subtitle{color:#e9e7dfc7;margin-bottom:1.4rem;letter-spacing:.04em}.social-links-list{display:flex;flex-direction:column;gap:.8rem}.social-link{display:flex;align-items:center;gap:.75rem;color:var(--ks-cream);text-decoration:none;border:1px solid rgba(98,67,51,.45);border-radius:10px;padding:.75rem .9rem;transition:all .25s ease;font-weight:600;letter-spacing:.02em}.social-link:hover{color:var(--ks-cream);border-color:var(--ks-red);background:#4a00002e;transform:translate(4px)}.social-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.social-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.location-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent,rgba(98,67,51,.6),transparent);margin-bottom:2rem}.location-name{font-size:1.8rem;font-weight:700;color:var(--ks-cream);margin-bottom:1.5rem;letter-spacing:3px;text-transform:uppercase}.location-address{margin-bottom:1.5rem}.location-address p{font-size:1rem;color:#e9e7dfbf;line-height:1.8;margin-bottom:.3rem;font-weight:300;letter-spacing:.5px}.location-address p:first-child{font-weight:400;color:var(--ks-cream)}.directions-link{display:inline-block;color:var(--ks-brown);text-decoration:none;font-size:.95rem;font-weight:600;letter-spacing:1px;margin-bottom:1.5rem;transition:all .3s ease;position:relative;padding-bottom:.3rem}.directions-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--ks-brown);transition:width .3s ease}.directions-link:hover{color:var(--ks-cream)}.directions-link:hover:after{width:100%}.location-hours{margin-bottom:1.5rem}.location-hours p{font-size:1rem;color:#e9e7dfcc;font-weight:400;letter-spacing:1px;font-family:Courier New,monospace;line-height:1.6}.location-email{margin-bottom:0}.location-email a{color:var(--ks-brown);text-decoration:none;font-size:.95rem;font-weight:400;letter-spacing:.5px;transition:all .3s ease}.location-email a:hover{color:var(--ks-cream);text-decoration:underline}.footer-bottom{text-align:center;padding-top:3rem;border-top:1px solid rgba(98,67,51,.35);animation:footerFadeIn 1s ease .3s both}@keyframes footerFadeIn{0%{opacity:0}to{opacity:1}}.footer-bottom p{color:#e9e7df80;font-size:.9rem;font-weight:400;letter-spacing:1px}@media(max-width:1200px){.locations-section{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}}@media(max-width:768px){.footer{padding:4rem 2rem 2rem}.footer-header{margin-bottom:3rem}.footer-wordmark{max-height:7.25rem}.footer-header p{font-size:1.1rem}.locations-section{grid-template-columns:1fr;gap:1.5rem}.location-card,.social-card{padding:2rem}.location-name{font-size:1.5rem}}.hero{--hero-bg-icon-opacity: .016;min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;margin-top:70px;overflow:hidden;background-color:var(--ks-blue)}.hero:before{content:"";position:absolute;inset:0;z-index:0;background-image:url(/assets/icon-white-CIvgK1fi.svg);background-repeat:no-repeat;background-position:center center;background-size:cover;opacity:var(--hero-bg-icon-opacity);pointer-events:none}.hero-container{position:relative;z-index:1;max-width:900px;margin:0 auto;padding:4rem 2rem;width:100%;text-align:center}.hero-content{color:var(--ks-cream);opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s ease}.hero.loaded .hero-content{opacity:1;transform:translateY(0)}.hero-heading-group{margin:0 auto 1.25rem;padding:0;border:none;max-width:min(98vw,44rem);display:flex;flex-direction:column;align-items:center;gap:.2em;font-size:inherit;font-weight:inherit;line-height:normal}.hero-title-brand{display:block;margin:0;color:var(--ks-periwinkle);font-family:var(--font-display);font-size:clamp(2.75rem,8.5vw,5rem);font-weight:700;line-height:1.12;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 24px rgba(0,0,0,.35),0 0 36px rgba(188,202,216,.35)}.hero-title-coffee{display:block;margin:0;font-family:var(--font-display);font-weight:700;font-size:clamp(2rem,6.25vw,3.35rem);line-height:1.1;letter-spacing:.14em;text-transform:uppercase;color:var(--ks-periwinkle);text-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 20px rgba(0,0,0,.35),0 0 28px rgba(188,202,216,.35)}.hero-subtitle{font-size:1.25rem;font-weight:400;line-height:1.65;letter-spacing:.02em;margin:0 auto 2.5rem;color:#e9e7dff2;max-width:36rem;opacity:0;transform:translateY(20px);transition:opacity .9s ease .15s,transform .9s ease .15s}.hero.loaded .hero-subtitle{opacity:1;transform:translateY(0)}.hero-actions{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:center;opacity:0;transform:translateY(20px);transition:opacity .9s ease .3s,transform .9s ease .3s}.hero.loaded .hero-actions{opacity:1;transform:translateY(0)}.cta-button{padding:1.1rem 2.5rem;font-size:1rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;border:none;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;font-family:inherit}.cta-button.primary{background:var(--ks-red);color:var(--ks-cream);border:2px solid var(--ks-brown);box-shadow:0 4px 15px #4a000033}.cta-button.primary:hover,.cta-button.primary:focus-visible{transform:translateY(-3px);box-shadow:0 8px 25px #4a000059}.cta-button.secondary{background:transparent;color:var(--ks-cream);border:2px solid rgba(233,231,223,.45)}.cta-button.secondary:hover,.cta-button.secondary:focus-visible{background:var(--ks-cream);color:var(--ks-blue);border-color:var(--ks-cream);transform:translateY(-3px);box-shadow:0 10px 30px #00000026}.hero-scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:#e9e7df8c;font-size:.75rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;z-index:2;background:none;border:none;cursor:pointer;opacity:0;transition:opacity 1s ease 1s,color .3s ease;padding:0}.hero.loaded .hero-scroll-indicator{opacity:1}.hero-scroll-indicator:hover{color:#e9e7dfd9}.scroll-arrow{width:2px;height:30px;background:linear-gradient(to bottom,rgba(233,231,223,.6),transparent);animation:scrollDown 2s ease-in-out infinite}@keyframes scrollDown{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(10px);opacity:.5}}@media(max-width:768px){.hero:before{opacity:.024}.hero-container{padding:2rem 1.5rem}.hero-heading-group{max-width:min(96vw,100%);margin-bottom:1rem}.hero-title-brand{font-size:clamp(2.05rem,10vw,3.15rem);letter-spacing:.06em}.hero-title-coffee{font-size:clamp(1.5rem,7.5vw,2.35rem);letter-spacing:.12em}.hero-subtitle{font-size:1.05rem}.hero-actions{flex-direction:column;width:100%;max-width:100%}.cta-button{width:100%;padding:1rem 2rem}.hero-scroll-indicator{bottom:1.5rem}}.story-section{padding:6rem 2rem;background:linear-gradient(135deg,var(--ks-cream) 0%,rgba(233,231,223,.92) 100%);position:relative;overflow:hidden}.story-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--ks-red);background-size:200% 100%;animation:storyGradientFlow 3s ease infinite}@keyframes storyGradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.story-container{max-width:1200px;margin:0 auto}.story-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;opacity:0;transform:translateY(50px);transition:all .8s cubic-bezier(.4,0,.2,1)}.story-content.visible{opacity:1;transform:translateY(0)}.story-text{padding:2rem 0}.story-content.visible .story-text{animation:slideInLeft .85s cubic-bezier(.22,1,.36,1) .15s both}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.story-section .section-title{font-size:3.5rem;font-weight:700;letter-spacing:6px;color:var(--ks-blue);margin-bottom:2.5rem;text-shadow:none;position:relative;display:inline-block}.story-section .section-title:after{content:"";position:absolute;bottom:-10px;left:0;width:80px;height:4px;background:var(--ks-red);border-radius:2px;transform-origin:left center;transform:scaleX(0)}.story-content.visible .section-title:after{animation:storyExpandLine .85s cubic-bezier(.22,1,.36,1) .45s forwards}@keyframes storyExpandLine{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.story-paragraphs{display:flex;flex-direction:column;gap:2rem}.story-paragraphs p{font-size:1.2rem;line-height:2;color:var(--ks-blue);font-weight:400;letter-spacing:.5px;opacity:0}.story-content.visible .story-paragraphs p:nth-child(1){animation:fadeInParagraph .75s ease .35s forwards}.story-content.visible .story-paragraphs p:nth-child(2){animation:fadeInParagraph .75s ease .5s forwards}@keyframes fadeInParagraph{to{opacity:1}}.story-image{width:100%;height:500px;overflow:hidden;border-radius:12px;box-shadow:0 15px 40px #1318351f,0 5px 15px #62433333;position:relative}.story-content.visible .story-image{animation:slideInRight .85s cubic-bezier(.22,1,.36,1) .2s both}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.story-image:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(98,67,51,.12),transparent);z-index:1;opacity:0;transition:opacity .5s ease}.story-image:hover:before{opacity:1}.story-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1)}.story-image:hover img{transform:scale(1.1) rotate(1deg)}@media(max-width:968px){.story-content{grid-template-columns:1fr;gap:3rem}.story-image{height:400px;order:-1}}.learn-more-button{margin-top:2.5rem;padding:1rem 2.5rem;background:var(--ks-red);border:2px solid var(--ks-brown);color:var(--ks-cream);font-size:1rem;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #4a000033;opacity:0;transform:translateY(12px)}.story-content.visible .learn-more-button{animation:fadeInButton .75s cubic-bezier(.22,1,.36,1) .65s forwards}@keyframes fadeInButton{to{opacity:1;transform:translateY(0)}}.learn-more-button:hover{background:var(--ks-red);transform:translateY(-3px);box-shadow:0 6px 20px #4a00004d}.learn-more-button:active{transform:translateY(-1px)}@media(max-width:768px){.story-section{padding:4rem 1.5rem}.story-text{text-align:center}.story-section .section-title{font-size:2.5rem;font-weight:700}.story-paragraphs p{font-size:1.1rem;font-weight:400}.story-image{display:none}.learn-more-button{padding:.9rem 2rem;font-size:.9rem}}.menu-section{padding:8rem 4rem;background:var(--ks-blue);position:relative;overflow:hidden;min-height:100vh}.menu-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--ks-red);background-size:200% 100%;animation:menuGradientFlow 3s ease infinite}@keyframes menuGradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.menu-container{max-width:1400px;margin:0 auto;width:100%}.section-header{text-align:center;margin-bottom:4rem;opacity:0;transform:translateY(30px);transition:all .8s ease}.section-header.visible{opacity:1;transform:translateY(0)}.section-title{font-size:4.5rem;font-weight:800;letter-spacing:8px;color:var(--ks-cream);margin-bottom:.75rem;text-shadow:2px 2px 20px rgba(0,0,0,.25);position:relative;display:inline-block}.menu-tax-line{font-size:.95rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#e9e7dfbf;margin-bottom:1rem}.section-title:after{content:"";position:absolute;bottom:-15px;left:50%;transform:translate(-50%);width:120px;height:3px;background:var(--ks-red);border-radius:2px;display:none}@keyframes menuExpandLine{0%{width:0}to{width:120px}}.section-subtitle{font-size:1.15rem;color:#e9e7dfd9;font-weight:400;letter-spacing:.08em;margin-top:2rem;font-style:italic}.menu-box{background:linear-gradient(135deg,#e9e7df0f,#13183566);border:1px solid rgba(98,67,51,.35);border-radius:16px;padding:4rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;opacity:0;transform:translateY(30px);transition:all .8s ease}.menu-box.visible{opacity:1;transform:translateY(0)}.menu-box:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--ks-red);opacity:.6}.description-toggle{display:flex;justify-content:center;margin-bottom:3rem}.toggle-button{padding:1rem 2.5rem;background:transparent;border:2px solid rgba(98,67,51,.45);color:var(--ks-cream);font-size:.95rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.toggle-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#62433326;transition:left .3s ease;z-index:-1}.toggle-button:hover:before{left:0}.toggle-button:hover{border-color:var(--ks-brown);color:#fff;transform:translateY(-2px)}.toggle-button.active{background:var(--ks-brown);border-color:var(--ks-brown);color:var(--ks-cream);box-shadow:0 5px 20px #4a000040}.toggle-button.active:before{left:0;background:#4a000026}.menu-sections-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem;position:relative;z-index:1}.menu-section-group{position:relative}.category-section-title{font-size:1.35rem;font-weight:700;color:var(--ks-cream);margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid rgba(98,67,51,.4);letter-spacing:.06em;text-transform:none;position:relative}.category-section-title:after{content:"";position:absolute;bottom:-2px;left:0;width:80px;height:2px;background:var(--ks-red)}.menu-items-list{display:flex;flex-direction:column;gap:1rem}.menu-item{opacity:0;transform:translateY(20px);animation:menuFadeInUp .6s ease forwards;padding:1.2rem 1.5rem;border-radius:8px;transition:all .3s ease;border-left:3px solid transparent}@keyframes menuFadeInUp{to{opacity:1;transform:translateY(0)}}.menu-item:hover{background:#6243331f;border-left-color:var(--ks-red);transform:translate(5px)}.item-header{display:flex;justify-content:space-between;align-items:center;width:100%;gap:2rem;margin-bottom:.5rem}.item-name{font-size:1.25rem;font-weight:700;color:var(--ks-cream);margin:0;letter-spacing:.5px;line-height:1.3;flex:1}.item-price{font-size:1.35rem;font-weight:700;color:var(--ks-cream);white-space:nowrap;flex-shrink:0;text-shadow:0 1px 0 rgba(74,0,0,.35)}.item-description{font-size:.9rem;color:#e9e7dfb3;line-height:1.6;font-weight:300;margin:.5rem 0 0;padding-left:.5rem;letter-spacing:.3px;font-style:italic;animation:menuFadeIn .3s ease}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1200px){.menu-box{padding:3rem}.menu-sections-grid{gap:2.5rem}.category-section-title{font-size:1.25rem}}@media(max-width:768px){.menu-section{padding:6rem 2rem}.section-header{margin-bottom:3rem}.section-title{font-size:3rem;letter-spacing:4px}.section-subtitle{font-size:1rem}.menu-box{padding:2.5rem 2rem}.menu-sections-grid{grid-template-columns:1fr;gap:2rem}.menu-item{padding:1rem 1.2rem}.category-section-title{font-size:1.15rem}}.menu-tabs{display:none;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;justify-content:center}.menu-tab{padding:.55rem 1.2rem;background:transparent;border:1px solid rgba(98,67,51,.45);color:#e9e7dfbf;font-size:.85rem;font-weight:600;letter-spacing:.05em;cursor:pointer;border-radius:999px;transition:all .25s ease;font-family:inherit}.menu-tab.active,.menu-tab:hover{background:var(--ks-brown);border-color:var(--ks-brown);color:var(--ks-cream)}@media(max-width:768px){.menu-tabs{display:flex}.menu-section-group.hidden-mobile{display:none}}.gallery-section{padding:6rem 2rem;background:linear-gradient(180deg,var(--ks-cream) 0%,rgba(233,231,223,.85) 50%,var(--ks-cream) 100%);position:relative;overflow:hidden}.gallery-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--ks-red);background-size:200% 100%;animation:galleryGradientFlow 3s ease infinite}@keyframes galleryGradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.gallery-container{max-width:1200px;margin:0 auto}.gallery-section .section-header{text-align:center;margin-bottom:4rem;opacity:0;transform:translateY(30px);transition:all .8s ease}.gallery-section .section-header.visible{opacity:1;transform:translateY(0)}.gallery-section .section-title{font-size:3.5rem;font-weight:700;letter-spacing:6px;color:var(--ks-blue);margin-bottom:1rem;position:relative;display:inline-block}.gallery-section .section-title:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:100px;height:4px;background:var(--ks-red);border-radius:2px;animation:galleryExpandLine 1s ease .5s both}@keyframes galleryExpandLine{0%{width:0}to{width:100px}}.gallery-section .section-subtitle{font-size:1.2rem;color:#131835b8;font-weight:500;letter-spacing:1.5px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.gallery-item{position:relative;width:100%;height:350px;overflow:hidden;border-radius:16px;cursor:pointer;box-shadow:0 8px 25px #1318351a,0 3px 10px #6243331f;transition:all .5s cubic-bezier(.4,0,.2,1);border:3px solid transparent;opacity:0;transform:translateY(50px) scale(.9);animation:fadeInUpScale .6s ease forwards}.gallery-item:active{transform:translateY(-10px) scale(1.01)}@keyframes fadeInUpScale{to{opacity:1;transform:translateY(0) scale(1)}}.gallery-item.visible{opacity:1;transform:translateY(0) scale(1)}.gallery-item:hover{transform:translateY(-15px) scale(1.03);box-shadow:0 20px 50px #4a00002e,0 10px 30px #1318351f;border-color:var(--ks-brown)}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1);filter:brightness(.9)}.gallery-item:hover img{transform:scale(1.15) rotate(2deg);filter:brightness(1.05)}.gallery-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#624333e0,#4a0000d9);opacity:0;transition:all .5s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay-content{text-align:center;color:var(--ks-cream);transform:translateY(20px);transition:transform .5s ease .1s}.gallery-item:hover .gallery-overlay-content{transform:translateY(0)}.gallery-icon{font-size:3rem;display:block;margin-bottom:1rem;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.gallery-text{font-size:1.3rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;text-shadow:2px 2px 10px rgba(0,0,0,.3)}@media(max-width:768px){.gallery-section{padding:4rem 1.5rem}.gallery-section .section-title{font-size:2.5rem;font-weight:700}.gallery-grid{grid-template-columns:1fr;gap:1.5rem}.gallery-item{height:300px}.gallery-icon{font-size:2.5rem}.gallery-text{font-size:1.1rem}}.gallery-item{all:unset;box-sizing:border-box;position:relative;width:100%;height:350px;overflow:hidden;border-radius:16px;cursor:pointer;box-shadow:0 8px 25px #1318351a,0 3px 10px #6243331f;transition:all .5s cubic-bezier(.4,0,.2,1);border:3px solid transparent;opacity:0;transform:translateY(50px) scale(.9);animation:fadeInUpScale .6s ease forwards}.gallery-cta{text-align:center;margin-top:3rem;opacity:0;transform:translateY(20px);transition:all .8s ease .5s}.gallery-cta.visible{opacity:1;transform:translateY(0)}.gallery-view-all{padding:1rem 2.5rem;background:transparent;border:2px solid var(--ks-blue);color:var(--ks-blue);font-size:1rem;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;border-radius:8px;transition:all .3s cubic-bezier(.4,0,.2,1);font-family:inherit}.gallery-view-all:hover,.gallery-view-all:focus-visible{background:var(--ks-blue);color:var(--ks-cream);transform:translateY(-3px);box-shadow:0 8px 25px #13183526}.contact-section{padding:10rem 4rem 6rem;background:var(--ks-blue);position:relative;overflow:hidden;min-height:calc(100vh - 70px);display:flex;align-items:center}.contact-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--ks-red);background-size:200% 100%;animation:contactGradientFlow 3s ease infinite}@keyframes contactGradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.contact-container{max-width:800px;margin:0 auto;width:100%;position:relative;z-index:1}.contact-back-button{position:absolute;left:0;top:0;background:#e9e7df14;border:2px solid rgba(98,67,51,.55);color:var(--ks-cream);padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.contact-back-button:hover{background:#62433340;border-color:var(--ks-brown);transform:translate(-5px)}.contact-header{text-align:center;margin-bottom:4rem;margin-top:3.5rem;opacity:0;transform:translateY(30px);transition:all .8s ease;position:relative}.contact-header.visible{opacity:1;transform:translateY(0)}.contact-title{font-size:4.5rem;font-weight:800;letter-spacing:8px;color:var(--ks-cream);margin-bottom:1.5rem;text-shadow:2px 2px 20px rgba(0,0,0,.2);position:relative;display:inline-block}.contact-title:after{content:"";position:absolute;bottom:-15px;left:50%;transform:translate(-50%);width:120px;height:3px;background:var(--ks-red);border-radius:2px;animation:contactExpandLine 1s ease .5s both}@keyframes contactExpandLine{0%{width:0}to{width:120px}}.contact-subtitle{font-size:1.2rem;color:#e9e7dfbf;font-weight:300;letter-spacing:1px;line-height:1.8;margin-top:2rem;max-width:600px;margin-left:auto;margin-right:auto}.contact-form-wrapper{background:linear-gradient(135deg,#e9e7df0f,#13183559);border:1px solid rgba(98,67,51,.35);border-radius:16px;padding:4rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden;opacity:0;transform:translateY(30px);transition:all .8s ease .3s}.contact-form-wrapper.visible{opacity:1;transform:translateY(0)}.contact-form-wrapper:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--ks-red);opacity:.55}.contact-form{position:relative;z-index:1}.form-group{margin-bottom:2rem}.form-group label{display:block;font-size:.95rem;font-weight:600;color:var(--ks-cream);margin-bottom:.8rem;letter-spacing:1px;text-transform:uppercase}.form-input,.form-textarea{width:100%;padding:1.2rem 1.5rem;background:#e9e7df0f;border:1px solid rgba(98,67,51,.4);border-radius:8px;color:var(--ks-cream);font-size:1rem;font-family:inherit;transition:all .3s ease;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:#e9e7df73}.form-input:focus,.form-textarea:focus{background:#e9e7df1a;border-color:var(--ks-brown);box-shadow:0 0 0 3px #62433340}.form-input.error,.form-textarea.error{border-color:#c44;background:#c4444414}.form-input.error:focus,.form-textarea.error:focus{border-color:#c44;box-shadow:0 0 0 3px #c4444433}.error-message{display:block;color:#ff8a8a;font-size:.85rem;margin-top:.5rem;font-weight:400;letter-spacing:.3px;animation:fadeIn .3s ease}.form-textarea{resize:vertical;min-height:150px;line-height:1.6}.submit-button{width:100%;padding:1.3rem 2.5rem;background:#62433359;border:2px solid rgba(98,67,51,.5);color:#e9e7df73;font-size:1rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;cursor:not-allowed;border-radius:0;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.submit-button.active{background:var(--ks-brown);border-color:var(--ks-brown);color:var(--ks-cream);cursor:pointer;box-shadow:0 5px 20px #4a000040}.submit-button.active:hover{background:var(--ks-red);border-color:var(--ks-red);transform:translateY(-2px);box-shadow:0 8px 30px #4a000059}.submit-button.active:active{transform:translateY(0)}@media(max-width:768px){.contact-section{padding:6rem 2rem}.contact-back-button{position:relative;left:auto;top:auto;margin-bottom:2rem;display:block;width:fit-content}.contact-header{margin-bottom:3rem;margin-top:0}.contact-title{font-size:3rem;letter-spacing:4px}.contact-subtitle{font-size:1rem}.contact-form-wrapper{padding:2.5rem 2rem}.form-group{margin-bottom:1.5rem}.form-input,.form-textarea{padding:1rem 1.2rem}}.contact-success{text-align:center;padding:3rem 2rem;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.success-icon{width:64px;height:64px;background:#62433333;border:2px solid var(--ks-brown);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.75rem;color:var(--ks-cream);margin:0 auto 1.5rem}.contact-success h3{font-size:2rem;color:var(--ks-cream);margin-bottom:.75rem;font-family:var(--font-display)}.contact-success p{color:#e9e7dfbf;font-size:1.1rem;margin-bottom:2rem}.contact-page{position:relative;padding-top:2rem}.gallery-page{min-height:100vh;padding:8rem 2rem 4rem;background:linear-gradient(180deg,var(--ks-blue) 0%,var(--ks-blue-deep) 100%)}.gallery-page-header{max-width:1200px;margin:0 auto 4rem;text-align:center;position:relative}.back-button{position:absolute;left:0;top:0;background:#e9e7df14;border:2px solid rgba(98,67,51,.55);color:var(--ks-cream);padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-family:inherit}.back-button:hover,.back-button:focus-visible{background:#62433340;border-color:var(--ks-brown);transform:translate(-5px)}.gallery-page-header h1{font-size:3.5rem;font-weight:700;letter-spacing:4px;color:var(--ks-cream);margin-bottom:1rem;text-shadow:0 2px 10px rgba(0,0,0,.2)}.gallery-page-header p{font-size:1.2rem;color:#e9e7dfcc;letter-spacing:1.5px}.gallery-page-grid{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;padding:2rem 0}.gallery-page-item{all:unset;box-sizing:border-box;position:relative;width:100%;height:300px;overflow:hidden;border-radius:16px;cursor:pointer;box-shadow:0 8px 25px #0000004d,0 3px 10px #62433333;transition:all .4s cubic-bezier(.4,0,.2,1);border:2px solid transparent;animation:galleryPageFadeInUp .6s ease forwards;opacity:0}@keyframes galleryPageFadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.gallery-page-item:nth-child(1){animation-delay:.05s}.gallery-page-item:nth-child(2){animation-delay:.1s}.gallery-page-item:nth-child(3){animation-delay:.15s}.gallery-page-item:nth-child(4){animation-delay:.2s}.gallery-page-item:nth-child(5){animation-delay:.25s}.gallery-page-item:nth-child(6){animation-delay:.3s}.gallery-page-item:nth-child(7){animation-delay:.35s}.gallery-page-item:nth-child(8){animation-delay:.4s}.gallery-page-item:nth-child(9){animation-delay:.45s}.gallery-page-item:nth-child(10){animation-delay:.5s}.gallery-page-item:nth-child(11){animation-delay:.55s}.gallery-page-item:nth-child(12){animation-delay:.6s}.gallery-page-item:nth-child(13){animation-delay:.65s}.gallery-page-item:nth-child(14){animation-delay:.7s}.gallery-page-item:nth-child(15){animation-delay:.75s}.gallery-page-item:nth-child(16){animation-delay:.8s}.gallery-page-item:hover,.gallery-page-item:focus-visible{transform:translateY(-10px) scale(1.02);box-shadow:0 20px 50px #4a00004d,0 10px 30px #0006;border-color:var(--ks-brown)}.gallery-page-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.4,0,.2,1);filter:brightness(.85);display:block}.gallery-page-item:hover img{transform:scale(1.1);filter:brightness(1)}.gallery-page-item-overlay{position:absolute;inset:0;background:#4a000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;color:var(--ks-cream);font-weight:700;letter-spacing:2px;text-transform:uppercase;font-size:1rem}.gallery-page-item:hover .gallery-page-item-overlay,.gallery-page-item:focus-visible .gallery-page-item-overlay{opacity:1}.image-modal{position:fixed;inset:0;background:#0c1028f7;display:flex;align-items:center;justify-content:center;z-index:10000;padding:2rem;animation:modalFadeIn .25s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.image-modal-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center;animation:modalScaleIn .25s ease}@keyframes modalScaleIn{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.image-modal-content img{max-width:100%;max-height:82vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #0009;display:block}.modal-close{position:absolute;top:-46px;right:0;background:#e9e7df1a;border:2px solid rgba(98,67,51,.55);color:var(--ks-cream);width:40px;height:40px;border-radius:50%;font-size:1.75rem;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;line-height:1;font-family:inherit}.modal-close:hover,.modal-close:focus-visible{background:#62433359;border-color:var(--ks-brown);transform:rotate(90deg)}.modal-nav{position:absolute;top:50%;transform:translateY(-50%);background:#e9e7df14;border:2px solid rgba(98,67,51,.45);color:var(--ks-cream);width:44px;height:44px;border-radius:50%;font-size:1.75rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s ease;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-family:inherit;line-height:1}.modal-prev{left:-60px}.modal-next{right:-60px}.modal-nav:hover,.modal-nav:focus-visible{background:#6243334d;border-color:var(--ks-brown);transform:translateY(-50%) scale(1.1)}.modal-counter{position:absolute;bottom:-36px;left:50%;transform:translate(-50%);color:#e9e7df8c;font-size:.85rem;letter-spacing:1px;white-space:nowrap}@media(max-width:768px){.gallery-page{padding:6rem 1rem 2rem}.gallery-page-header h1{font-size:2.5rem}.back-button{position:relative;margin-bottom:2rem;left:auto}.gallery-page-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.gallery-page-item{height:200px}.modal-prev{left:-10px}.modal-next{right:-10px}.image-modal-content{max-width:95vw}.image-modal-content img{max-height:75vh}}.story-page{min-height:100vh;background:var(--ks-blue);padding-top:2rem}.story-back-button{position:fixed;left:2rem;top:5.5rem;background:#e9e7df14;border:2px solid rgba(98,67,51,.55);color:var(--ks-cream);padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:999;font-family:inherit}.story-back-button:hover,.story-back-button:focus-visible{background:#62433340;border-color:var(--ks-brown);transform:translate(-5px)}.story-back-button--on-light{color:var(--ks-blue);background:#ffffffb8;border-color:#13183559}.story-back-button--on-light:hover,.story-back-button--on-light:focus-visible{background:#ffffffeb;border-color:var(--ks-brown);color:var(--ks-blue)}.story-page-section{padding:6rem 2rem;position:relative;background:var(--ks-blue);background-image:url(/images/green-leaves-nature-background-wallpaper.jpg);background-size:cover;background-position:center;background-repeat:no-repeat}.story-page-section:after{content:"";position:absolute;inset:0;background:var(--ks-blue);opacity:.88;z-index:0;pointer-events:none}.story-page-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--ks-red);animation:storyPageGradientFlow 3s ease infinite;z-index:2}@keyframes storyPageGradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.owners-section{background:linear-gradient(135deg,var(--ks-cream) 0%,rgba(233,231,223,.95) 100%)}.owners-section:after{content:none}.story-page-container{max-width:1200px;margin:0 auto;position:relative;z-index:1}.story-page-title{font-size:4rem;font-weight:700;letter-spacing:6px;color:var(--ks-cream);margin-bottom:3rem;text-align:center;position:relative;display:inline-block;width:100%}.story-page-title:after{content:"";position:absolute;bottom:-15px;left:50%;transform:translate(-50%);width:120px;height:4px;background:var(--ks-red);border-radius:2px}.story-page-section-title{font-size:3.5rem;font-weight:700;letter-spacing:4px;margin-bottom:4rem;text-align:center;position:relative}.owners-section .story-page-section-title{color:var(--ks-blue)}.owners-section .story-page-section-title:after{content:"";position:absolute;bottom:-15px;left:50%;transform:translate(-50%);width:100px;height:4px;background:var(--ks-red);border-radius:2px}.story-page-content{display:block;margin-top:3rem}.story-page-text{display:flex;flex-direction:column;gap:1.75rem;max-width:760px;margin:0 auto}.story-page-text-full{width:100%;max-width:760px}.story-page-text p{font-size:1.1rem;line-height:1.9;color:#e9e7dfeb;font-weight:400;letter-spacing:.3px;opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}.story-page-text p.visible{opacity:1;transform:translateY(0)}.story-page-closing{margin-top:.5rem;font-size:1.2rem!important;font-weight:600!important;letter-spacing:.04em;color:var(--ks-cream)!important;line-height:1.7!important}.team-intro{margin:1rem auto 0;max-width:760px;text-align:center;color:#131835bf;font-size:1.05rem;line-height:1.75;letter-spacing:.02em}.owners-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:2rem;margin-top:3rem;position:relative;z-index:1}.owner-card{background:#fff;border-radius:18px;padding:2rem 1.6rem 1.75rem;box-shadow:0 14px 34px #13183514,0 4px 14px #6243331a;transition:all .4s cubic-bezier(.4,0,.2,1);border:1px solid rgba(19,24,53,.08);text-align:center}.owner-card:hover{transform:translateY(-8px);box-shadow:0 20px 50px #6243331f,0 10px 26px #1318351f;border-color:var(--ks-brown)}.owner-image{width:168px;height:168px;margin:0 auto 1.5rem;border-radius:50%;overflow:hidden;border:3px solid var(--ks-brown);box-shadow:0 6px 22px #4a00002e}.owner-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.owner-card:hover .owner-image img{transform:scale(1.07)}.owner-name{font-size:1.45rem;font-weight:700;color:var(--ks-blue);margin-bottom:.7rem;letter-spacing:.02em}.owner-role{display:inline-block;font-size:.8rem;color:var(--ks-red);background:#4a000014;border:1px solid rgba(74,0,0,.25);border-radius:999px;padding:.35rem .75rem;font-weight:600;text-transform:uppercase;letter-spacing:.09em}@media(max-width:968px){.owners-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media(max-width:768px){.story-page{padding-top:1rem}.story-back-button{position:relative;left:auto;top:auto;margin:1rem 1rem 2rem;display:block;width:fit-content}.story-page-section{padding:4rem 1.5rem}.story-page-title{font-size:2.5rem;letter-spacing:3px}.story-page-section-title{font-size:2.5rem;letter-spacing:2px}.story-page-text p{font-size:1.05rem}.owners-grid{grid-template-columns:1fr}.owner-image{width:150px;height:150px}}.App{min-height:100vh;background-color:var(--ks-cream);position:relative}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}a,button{transition:all .3s cubic-bezier(.4,0,.2,1)}@font-face{font-family:Avenir;src:url(/fonts/avenir/avenir-book.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Avenir;src:url(/fonts/avenir/avenir-regular.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Avenir;src:url(/fonts/avenir/avenir-heavy.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Avenir;src:url(/fonts/avenir/avenir-black.ttf) format("truetype");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Athelas;src:url(/fonts/athelas/athelas-regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Athelas;src:url(/fonts/athelas/athelas-bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Athelas;src:url(/fonts/athelas/athelas-italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Athelas;src:url(/fonts/athelas/athelas-bold-italic.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}:root{--ks-blue: #131835;--ks-red: #4a0000;--ks-brown: #624333;--ks-cream: #e9e7df;--ks-mulberry: #301620;--ks-periwinkle: #bccad8;--ks-blue-deep: #0c1028;--font-sans: "Avenir", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Athelas", "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--ks-gold: #d4af37;--ks-gold-navbar: #6d530f;--ks-gold-navbar-hover: #856511;--ks-gold-deep: #9a7209}h1,h2,h3,.section-title,.story-page-section-title,.category-section-title{font-family:var(--font-display)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--ks-blue);background-color:var(--ks-cream);line-height:1.6;overflow-x:hidden}@media(min-width:1920px){html{font-size:18px}.nav-container,.story-container,.story-page-container,.gallery-container,.contact-container,.menu-container,.footer-container{max-width:1600px!important}.hero-container,.gallery-page-grid{max-width:1800px!important}}@media(min-width:2560px){html{font-size:20px}.nav-container,.story-container,.story-page-container,.gallery-container,.contact-container,.menu-container,.footer-container{max-width:2000px!important}.hero-container,.gallery-page-grid{max-width:2200px!important}}@media(min-width:3840px){html{font-size:24px}.nav-container,.story-container,.story-page-container,.gallery-container,.contact-container,.menu-container,.footer-container{max-width:2800px!important}.hero-container,.gallery-page-grid{max-width:3000px!important}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{scroll-behavior:smooth}::selection{background-color:var(--ks-brown);color:var(--ks-cream)}::-moz-selection{background-color:var(--ks-brown);color:var(--ks-cream)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--ks-cream)}::-webkit-scrollbar-thumb{background:var(--ks-red);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--ks-red)}
