@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap";:root{--color-primary:#5c9496;--color-dark:#546170;--color-accent-light:#9cbbd1;--color-accent-sage:#8cae97;--color-background:#f8f6f0;--color-sand:#efe4d0;--color-gold:#c2ab83;--color-surface:#fff;--color-text:#333;--color-text-light:#666;--font-heading:"Playfair Display", serif;--font-body:"Inter", sans-serif;--space-xs:.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:8rem;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-full:9999px;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 24px #0000001a}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-background);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;margin:0;line-height:1.6;overflow:hidden}#root{height:100%}.app-wrapper{width:100%;height:100%;position:relative}.bg-layer{z-index:-2;background-position:50%;background-size:cover;position:absolute;inset:0}.bg-layer:before{content:"";mix-blend-mode:soft-light;z-index:-1;pointer-events:none;background-color:#0000;background-image:linear-gradient(115deg,#0000 20%,#ffffff80 30%,#0000 40%),linear-gradient(65deg,#0000 40%,#9cbbd166 50%,#0000 60%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:200% 200%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;animation:8s linear infinite wavesMotion;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 25%,#000 60%);mask-image:linear-gradient(#0000 25%,#000 60%)}@keyframes wavesMotion{0%{background-position:200%,0 100%}to{background-position:-50%,200% 100%}}.bg-layer:after{content:"";z-index:-1;background:linear-gradient(#efe4d033 0%,#f8f6f099 100%);position:absolute;inset:0}.app-content{flex-direction:column;height:100vh;display:flex}.main-content{flex:1;justify-content:center;align-items:center;display:flex;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-dark);line-height:1.2}a{color:inherit;text-decoration:none;transition:color .3s}a:hover{color:var(--color-primary)}button{font-family:var(--font-body);cursor:pointer;background:0 0;border:none}.container{width:100%;max-width:1200px;padding:0 var(--space-md);margin:0 auto}.glass{-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #ffffff4d}.section{padding:var(--space-xl) 0}.btn{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);justify-content:center;align-items:center;font-weight:500;transition:all .3s;display:inline-flex}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-outline{border:1px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:#fff}.text-gold{color:var(--color-gold)}.text-teal{color:var(--color-primary)}.sketch-btn{color:#3d4a56;letter-spacing:.04em;cursor:pointer;white-space:nowrap;background:#f8f6f0e0;border:1.5px solid #546170;border-radius:2px;padding:.65rem 1.6rem;font-family:Playfair Display,serif;font-size:.95rem;font-style:italic;text-decoration:none;transition:box-shadow .15s,transform .15s;display:inline-block;box-shadow:2px 2px #54617059}.sketch-btn:hover{color:#3d4a56;transform:translate(-1px,-1px);box-shadow:3px 3px #5461708c}.carousel-nav{width:50px;height:50px;color:var(--color-dark);box-shadow:var(--shadow-md);z-index:10;background:#fffc;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-nav:hover{color:var(--color-primary);background:#fff;transform:translateY(-50%)scale(1.05)}.carousel-nav.prev{left:0}.carousel-nav.next{right:0}.carousel-indicators{justify-content:center;gap:.5rem;margin-top:1.5rem;display:flex}.indicator{background:#ffffff80;border:1px solid #0000001a;border-radius:50%;width:10px;height:10px;padding:0;transition:all .3s}.indicator.active{background:var(--color-primary);transform:scale(1.2)}.gallery-slide{object-fit:contain;max-width:calc(100% - 160px);max-height:75vh;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;border-radius:24px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gallery-slide.active{opacity:1;pointer-events:auto;z-index:2;animation-duration:1.5s;animation-timing-function:ease-in-out;animation-fill-mode:both}.gallery-slide.outgoing{z-index:1;pointer-events:none;animation-duration:1.5s;animation-timing-function:ease-in-out;animation-fill-mode:both}.gallery-slide.next-in{animation-name:slideInFromRight}.gallery-slide.next-out{animation-name:slideOutToLeft}.gallery-slide.prev-in{animation-name:slideInFromLeft}.gallery-slide.prev-out{animation-name:slideOutToRight}.gallery-slide.initial-fade{animation-name:fadeInCenter}@keyframes slideInFromRight{0%{opacity:0;transform:translate(-45%,-50%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes slideOutToLeft{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-55%,-50%)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-55%,-50%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes slideOutToRight{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-45%,-50%)}}@keyframes fadeInCenter{0%{opacity:0;transform:translate(-50%,-50%)}to{opacity:1;transform:translate(-50%,-50%)}}@media (prefers-color-scheme:dark){:root{--color-dark:#f8f6f0;--color-background:#111827;--color-surface:#1f2937;--color-text:#f3f4f6;--color-text-light:#9ca3af}.glass{background:#111827bf;border:1px solid #ffffff14}.bg-layer:after{background:linear-gradient(#11182799 0%,#111827f2 100%)}.indicator{background:#ffffff4d}.indicator.active{background:var(--color-primary)}.sketch-btn{color:#d4dde6;background:#111827d1;border-color:#9cbbd1;box-shadow:2px 2px #9cbbd159}.sketch-btn:hover{color:#d4dde6;box-shadow:3px 3px #9cbbd18c}}
