:root{--wine-50: #fdf2f4;--wine-100: #fce7eb;--wine-200: #f9d0d9;--wine-300: #f4a9b8;--wine-400: #ec7793;--wine-500: #df4b6f;--wine-600: #cb2a56;--wine-700: #ab1d45;--wine-800: #8f1b3e;--wine-900: #6b1530;--wine-950: #44071a;--gold-50: #fdf8ef;--gold-100: #f9edd4;--gold-200: #f2d8a8;--gold-300: #e9bd72;--gold-400: #e2a44d;--gold-500: #d9882e;--gold-600: #b2936d;--gold-700: #a07748;--gold-800: #835f3e;--gold-900: #6c4f35}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}.skip-link{position:absolute;top:-100px;left:0;z-index:10000;padding:.75rem 1.25rem;background:var(--wine-950);color:#fff;font-weight:600;text-decoration:none;border-bottom-right-radius:.5rem;transition:top .2s ease}.skip-link:focus{top:0;outline:3px solid var(--gold-500);outline-offset:2px}#main-content{outline:none}body{font-family:Inter,sans-serif;color:#1a1a1a;line-height:1.6}::selection{background:#6b153040;color:var(--wine-950)}img{max-width:100%;display:block;background:var(--wine-50)}img[loading=lazy]{transition:opacity .6s ease}a{text-decoration:none;color:inherit}ul,ol{list-style:none}button{font-family:inherit}:focus-visible{outline:2px solid var(--gold-400);outline-offset:2px;border-radius:2px}.container{max-width:80rem;margin-inline:auto;padding-inline:1rem}@media(min-width:640px){.container{padding-inline:1.5rem}}@media(min-width:1024px){.container{padding-inline:2rem}}.container--narrow{max-width:72rem}.container--medium{max-width:64rem}.container--slim{max-width:56rem}.container--text{max-width:48rem}.btn{display:inline-block;padding:.875rem 2rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;border-radius:2px;border:1px solid transparent;cursor:pointer;transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s,transform .3s;text-align:center}.btn--gold{background:var(--gold-600);color:var(--wine-950)}.btn--gold:hover{background:var(--gold-700);color:var(--wine-950);box-shadow:0 4px 16px #b2936d66;transform:translateY(-2px)}.btn--wine{background:var(--wine-800);color:#fff}.btn--wine:hover{background:var(--wine-900);box-shadow:0 4px 16px #6b153066;transform:translateY(-2px)}.btn--outline{background:transparent;color:var(--wine-100);border-color:var(--wine-300)}.btn--outline:hover{background:#ffffff1a;box-shadow:0 4px 16px #ffffff1a;transform:translateY(-2px)}.btn--block{display:block;width:100%}.section-header{text-align:center;margin-bottom:4rem}.section-label{display:block;color:var(--gold-600);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.25em;margin-bottom:.75rem}.section-title{font-family:Playfair Display,serif;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--wine-950);margin-bottom:1.5rem}.section-title--light{color:#fff}.section-divider{width:4rem;height:2px;background:var(--gold-600);margin-inline:auto}.section-divider--left{margin-inline-start:0}.section-text{color:#4b5563;font-size:1.125rem;line-height:1.75}.fade-in{opacity:0;transition:opacity .7s cubic-bezier(.25,.46,.45,.94)}.fade-in--visible{opacity:1}.fade-in-stagger>*{opacity:0;transition:opacity .6s ease}.fade-in-stagger>*:nth-child(1){transition-delay:0s}.fade-in-stagger>*:nth-child(2){transition-delay:.12s}.fade-in-stagger>*:nth-child(3){transition-delay:.24s}.fade-in-stagger>*:nth-child(4){transition-delay:.36s}.fade-in-stagger>*:nth-child(5){transition-delay:.48s}.fade-in-stagger>*:nth-child(6){transition-delay:.6s}.fade-in-stagger>*:nth-child(7){transition-delay:.72s}.fade-in-stagger>*:nth-child(8){transition-delay:.84s}.fade-in-stagger--visible>*{opacity:1}::view-transition-old(navbar),::view-transition-new(navbar),::view-transition-old(footer),::view-transition-new(footer),::view-transition-old(fab-contact),::view-transition-new(fab-contact){animation:none}@keyframes vt-slide-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-1.5rem)}}@keyframes vt-slide-in{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}::view-transition-old(main-content){animation:vt-slide-out .25s ease-in both}::view-transition-new(main-content){animation:vt-slide-in .35s ease-out .1s both}@media(prefers-reduced-motion:reduce){::view-transition-old(main-content),::view-transition-new(main-content){animation:none}}
