*{box-sizing:border-box}body{margin:0;padding:0;overflow-x:hidden;font-family:Inter,sans-serif;background:#faf7f5;color:#333}header{width:100%;height:100vh;background:linear-gradient(#0006,#0006),url(/images/WeddingCover.jpg) center/cover no-repeat;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#fff;padding:1rem}.header-logo{max-width:140px;width:35vw;height:auto;margin:2rem auto .1rem;opacity:0;transform:translateY(16px) scale(.96);animation:logoReveal 1.4s ease-out forwards;animation-delay:.3s}header h1{font-family:Playfair Display,serif;font-size:5rem;margin:.5rem 0;max-width:90%;word-wrap:break-word}header p{font-size:1.1rem;margin:.3rem 0}section{width:100%;padding:2rem 1rem;text-align:center}section:nth-child(2n){background:#dba3b114}.section-divider{width:80px;height:2px;background:#dba3b1;margin:2rem auto;border-radius:2px}h2{font-family:Playfair Display,serif;font-size:2rem;margin-bottom:2rem;color:#dba3b1}.details-block{margin-top:2rem;padding-top:2rem;border-top:1px solid rgba(69,0,17,.15)}.gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:2rem}.gallery img{max-width:100%;height:auto;border-radius:12px;transition:transform .4s ease}.gallery img:hover{transform:scale(1.03)}.details.tiles{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem}.tile{flex:1 1 200px;max-width:90vw;background:#fff;border-radius:16px;padding:2rem;text-decoration:none;color:#450011;box-shadow:0 10px 30px #4500111f;display:flex;flex-direction:column;align-items:center;transition:transform .25s ease,box-shadow .25s ease}.tile:hover{transform:translateY(-6px);box-shadow:0 18px 40px #4500112e;border-color:#dba3b1}.tile .icon{width:70px;height:70px;background:#dba3b1;color:#450011;border-radius:50%;display:flex;justify-content:center;align-items:center;font-size:1.8rem;margin-bottom:1rem}footer{width:100%;text-align:center;padding:2rem 1rem}.footer-logo{width:150px;max-width:60%;height:auto;margin:1rem auto}#countdown{font-size:1.3rem;margin-top:1rem;font-weight:500}@keyframes logoReveal{to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:1024px){header h1{font-size:4rem}h2{font-size:1.8rem}}@media(max-width:768px){header h1{font-size:3rem}header p{font-size:1rem}.tile{padding:1.8rem}}@media(max-width:480px){header h1{font-size:2.2rem}header p{font-size:.9rem}.tile{padding:1.5rem}.gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:1rem;padding:1rem}.gallery img{flex:0 0 80vw;scroll-snap-align:center;border-radius:12px}.gallery::-webkit-scrollbar{display:none}.gallery{-ms-overflow-style:none;scrollbar-width:none}}.image-container img{width:100%;height:100%;object-fit:cover}.map-container{margin-top:2rem;width:100%;max-width:800px;height:450px;margin-left:auto;margin-right:auto;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #0000001a}.map-container iframe{width:100%;height:100%;border:0}.map-link-container{text-align:center;margin-top:1rem}.tileButton{display:inline-block;background:#fff;border-radius:16px;padding:2.5rem 2rem;text-decoration:none;color:#450011;box-shadow:0 10px 30px #4500111f;transition:transform .25s ease,box-shadow .25s ease;border:2px solid transparent}.tileButton:hover{transform:translateY(-6px);box-shadow:0 18px 40px #4500112e;border-color:#dba3b1}.tileButton:active,.tileButton:focus-visible{transform:translateY(-4px);box-shadow:0 14px 32px #4500112e;border-color:#dba3b1}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
