:root{--primary-tan: #e6ac84;--primary-rose: #d68e91;--primary-rose-darken: #c06e73;--primary-blue: #3e4d89;--primary-sage: #767c68;--primary-sage-darken: #5a5f52;--text-dark: #444444;--text-light: #f5f5f5;--white: #ffffff;--bg-light: #fafafa}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Georgia,Garamond,serif;color:var(--text-dark);line-height:1.6;background-color:var(--bg-light);padding-top:60px}.container{max-width:1200px;margin:0 auto;padding:0 20px}.navbar{position:fixed;top:0;width:100%;background-color:var(--white);box-shadow:0 2px 8px #0000001a;z-index:1000;height:60px}.nav-container{display:flex;justify-content:space-between;align-items:center;height:100%}.logo{font-size:1.5rem;font-weight:400;letter-spacing:2px;color:var(--text-dark)}.nav-links{display:flex;list-style:none;gap:2rem}.nav-links a{text-decoration:none;color:var(--text-dark);font-size:.95rem;letter-spacing:.5px;transition:color .3s ease}.nav-links a:hover{color:var(--primary-rose)}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;cursor:pointer;padding:4px;width:34px;height:34px}.hamburger span{display:block;width:25px;height:3px;background-color:var(--text-dark);border-radius:2px;transition:.3s}.hero{position:relative;height:600px;overflow:hidden;display:flex;align-items:center;justify-content:center}@media (min-width: 1440px){.hero{height:800px}}@media (min-width: 1920px){.hero{height:900px}}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;z-index:1}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2;text-align:center}.hero-overlay h1{font-size:4.5rem;color:var(--white);margin-bottom:1rem;font-weight:400;letter-spacing:3px}.hero-subtitle{font-size:1.5rem;color:var(--text-light);font-style:italic;letter-spacing:1px}.details{padding:6rem 0;background-color:var(--white)}.about-content{text-align:center;max-width:700px;margin:0 auto}.details h2{font-size:2.5rem;color:var(--text-dark);margin-bottom:2rem;font-weight:400;letter-spacing:2px}.smallscript{font-size:.7rem;vertical-align:super}.details p{font-size:1.1rem;line-height:1.8}.subtitle{font-size:1rem;margin-top:2rem;margin-bottom:.5rem;font-weight:500}.venue-info{font-size:1rem;margin-bottom:2rem;line-height:1.8}.travel-info{padding:6rem 0;background-color:var(--white)}#registry.travel-info,#dine.travel-info,#explore.travel-info{background-color:var(--bg-light)}.travel-info h2{font-size:2.5rem;color:var(--text-dark);margin-bottom:3rem;font-weight:400;letter-spacing:2px;text-align:center}.section-intro{font-size:1.05rem;text-align:center;max-width:700px;margin:-1rem auto 2.5rem;line-height:1.8}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2.5rem}.card{background-color:var(--white);border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #00000014;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column}.card:hover{transform:translateY(-5px);box-shadow:0 8px 20px #0000001f}.card-image{width:calc(100% - 2rem);height:320px;overflow:hidden;flex-shrink:0;margin:0 1rem;display:flex;align-items:center;justify-content:center;background-color:transparent}.card-image img{display:block;max-width:100%;max-height:100%;object-fit:contain;object-position:center;background-color:var(--white)}.card-content{padding:2rem;display:flex;flex-direction:column;flex:1}.card-content h3{font-size:1.3rem;color:var(--text-dark);margin-bottom:.5rem;font-weight:500}.card-content .location{color:var(--text-dark);font-weight:500;margin-bottom:1rem}.card-content .description{font-size:.95rem;line-height:1.7;margin-bottom:1rem}.card-content .distance{font-size:.85rem;margin-bottom:1.5rem;line-height:1.6;flex:1}.card-link{display:inline-block;background-color:var(--primary-sage);color:var(--white);padding:.6rem 1.4rem;text-decoration:none;border-radius:4px;font-size:.9rem;transition:background-color .3s ease;text-align:center;margin-top:auto}.card-link:hover{background-color:var(--primary-sage-darken)}.card-content button.card-link{border:none;cursor:pointer;font:inherit}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:1.5rem;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;z-index:2000}.modal-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.modal{width:min(100%,420px);background-color:var(--white);border-radius:24px;padding:2rem 1.5rem 1.5rem;box-shadow:0 24px 60px #0000003d;position:relative;text-align:center}.modal-close{position:absolute;top:1rem;right:1rem;width:36px;height:36px;border:none;background:transparent;color:var(--text-dark);font-size:1.8rem;line-height:1;cursor:pointer}.modal-close:hover{color:var(--primary-rose-darken)}.modal h2{margin-bottom:1.25rem;font-size:1.4rem;color:var(--text-dark)}.modal-qr{width:100%;max-width:360px;height:auto;border-radius:14px;display:block;margin:0 auto}.dining-category,.drinks-category{margin-bottom:2.5rem}.category-title{font-size:1.4rem;color:var(--text-dark);margin-bottom:1.5rem;font-weight:400;padding-bottom:.4rem;border-bottom:2px solid var(--text-dark)}.venue-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.travel-info-item{padding:.8rem 1.1rem;background-color:var(--bg-light);border-left:3px solid var(--primary-tan);border-radius:8px}.travel-info-item h4{font-size:1rem;color:var(--text-dark);margin-bottom:.25rem}.travel-info-item .location{color:var(--text-dark);font-weight:500;font-size:.82rem;margin-bottom:.4rem}.travel-info-item p{font-size:.9rem;line-height:1.5}#drinks .travel-info-item{background-color:var(--white)}@media (max-width: 768px){.hamburger{display:flex}.nav-links{display:none}.nav-links.active{display:flex;position:absolute;top:60px;left:0;width:100%;flex-direction:column;background-color:var(--white);gap:0;box-shadow:0 4px 8px #0000001a;padding:1rem 0}.nav-links.active a{display:block;padding:.9rem 2rem;border-bottom:1px solid var(--bg-light)}.hero{height:400px}.hero-overlay h1{font-size:2.5rem}.hero-subtitle{font-size:1rem}.travel-info h2,.details h2{font-size:1.8rem;margin-bottom:2rem}.cards-grid,.dining-list,.venue-list,.activity-list{grid-template-columns:1fr}.about-content{padding:0 1rem}.category-title{font-size:1.2rem}}@media (max-width: 480px){.logo{font-size:1.2rem}.hero{height:350px}.hero-overlay h1{font-size:1.8rem}.hero-subtitle{font-size:.9rem}.travel-info,.details{padding:3rem 0}.travel-info h2,.details h2{font-size:1.5rem}.card-content{padding:1.5rem}.nav-links.active a{padding:.8rem 1.5rem}}
