/* Canva global design tokens; typography from annotated Branding Package. */
@import url('https://fonts.googleapis.com/css2?family=Nixie+One&display=swap');
@font-face{font-family:'Goodtimes';src:url('/fonts/Goodtimes.otf') format('opentype');font-weight:400;font-display:swap}
:root{--cream:#edeae6;--burgundy:#29100c;--lavender:#a9c0cb;--cosmos:#29100c;--burnt:#7b3534;--pastel-blue:#a9c0cb;--chartreuse:#bfb065;--moss:#53461c;--font-h1:50px;--font-h2:40px;--font-h3:30px;--font-h4:24px;--font-h5:22px;--font-body1:22px;--font-body2:20px}
body{background:#edeae6;color:#29100c;font-family:'Nixie One',serif}
h1,h2,h3{font-family:'Goodtimes',cursive;font-weight:400;letter-spacing:0}
h1{font-size:var(--font-h1)}h2{font-size:var(--font-h2)}h3{font-size:var(--font-h3)}
h4,h5,p,li,button,input,textarea,select,label{font-family:'Nixie One',serif}
h4{font-size:var(--font-h4)}h5{font-size:var(--font-h5)}
.site-header .nav{box-sizing:border-box;width:100%;padding-left:clamp(20px,2.8vw,45px)!important;padding-right:clamp(20px,2.8vw,45px)!important;justify-content:space-between!important}
.site-header .nav-links a{font-family:'Nixie One',serif!important;font-size:20px!important;letter-spacing:0!important;text-transform:lowercase!important;transform:none!important;filter:none!important;transition:none!important;text-decoration:none!important}
.site-header .nav-links a:hover,.site-header .nav-links a:focus-visible{transform:none!important;filter:none!important;text-decoration:none!important}
.site-header .nav-links a::after{content:'';position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0)!important;transition:none!important}
.site-header .nav-links a:hover::after,.site-header .nav-links a:focus-visible::after,.site-header .nav-links a[aria-current='page']::after{transform:scaleX(1)!important}
.site-header .logo{margin-right:0!important;background:none!important}
.site-header .logo img{object-fit:contain}
.site-footer{background:#29100c!important;color:#a9c0cb!important}
.site-footer .footer-links a{font-family:'Goodtimes',cursive!important;font-size:26px!important;text-transform:lowercase!important;color:#a9c0cb!important}
.footer-cream-strip{background:#edeae6!important}
@media(max-width:760px){.site-footer .footer-links a{font-size:clamp(16px,4vw,26px)!important}}

/* Shared Canva global navigation: light Creme header, dark Cosmos links. */
.site-header,.site-header.scrolled{background:#edeae6!important;color:#29100c!important}
.site-header .nav-links a,.site-header.scrolled .nav-links a{color:#29100c!important}
.site-header .nav-links{gap:calc(clamp(8px,1.05vw,18px) * 1.2)!important}
.site-footer .footer-links{gap:calc(clamp(9px,1.35vw,22px) * 1.2)!important}
.site-header .logo,.site-header.scrolled .logo{background:none!important}
.site-header .logo-top,.site-header.scrolled .logo-top{opacity:1!important;filter:none!important}
.site-header .logo-scroll,.site-header.scrolled .logo-scroll{opacity:0!important}
@media(max-width:760px){.site-header .nav-links{background:#edeae6!important;color:#29100c!important}}

/* Expanded link gaps and 20% smaller flower logo across secondary pages. */
.site-header .nav-links{gap:clamp(13.8px,1.81125vw,31.05px)!important}
.site-footer .footer-links{gap:clamp(13.8px,1.81125vw,30.36px)!important}
.site-header .logo{width:clamp(64px,6.256vw,92.8px)!important;min-width:64px!important;-webkit-mask:none!important;mask:none!important;background:transparent!important}
.site-header .logo .logo-top{opacity:1!important;display:block!important;filter:brightness(0) saturate(100%) invert(7%) sepia(30%) saturate(1407%) hue-rotate(326deg) brightness(92%) contrast(94%)!important}
@media(max-width:760px){.site-header .nav-links{gap:20px!important}.site-footer .footer-links{gap:clamp(12px,3.8vw,20px)!important}}

/* Global legacy-font removal: all headings use the Canva type system. */
h1,h2,h3{font-family:'Goodtimes',cursive!important}

/* Footer contains navigation only; header monogram remains visible. */
.site-footer .footer-monogram{display:none!important}

/* One shared navigation geometry across home and all inner pages. */
.site-header .nav{
 min-height:80px!important;height:80px!important;
 padding:8px clamp(20px,2.8vw,45px)!important;
 box-sizing:border-box!important;
 width:100%!important;
 display:flex!important;align-items:center!important;
 justify-content:space-between!important;
}
.site-header .nav-links{
 display:flex;align-items:center!important;flex-wrap:nowrap!important;
 gap:clamp(13.8px,1.81125vw,31.05px)!important;
 margin:0!important;padding:0!important;
}
.site-header .logo{
 width:clamp(54.4px,5.3176vw,78.88px)!important;
 min-width:clamp(54.4px,5.3176vw,78.88px)!important;
 flex:0 0 auto!important;
 aspect-ratio:420/221!important;
 margin:0!important;
}
@media(max-width:760px){
 .site-header .nav{height:66px!important;min-height:66px!important}
 .site-header .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start!important;gap:20px!important;padding:19px!important}
 .site-header.menu-open .nav-links{display:flex!important}
}

/* Global H1 scale for every secondary page. Homepage hero is separately styled. */
h1{font-size:60px!important}
h2{font-size:48px!important}

/* Global H3 typography */
h3{font-size:30px!important}

/* Brand typography: Body 3 */
:root{--body-3-size:17px}
.body-3{font-family:'Nixie One',serif!important;font-size:var(--body-3-size)!important;font-weight:400!important;line-height:1.5!important}

/* Consistent footer link hover on every page: Creme text, never underline. */
.site-footer .footer-links a:hover,.site-footer .footer-links a:focus-visible{color:#edeae6!important;text-decoration:none!important}
.site-footer .footer-links a{text-decoration:none!important;transition:color .2s ease}

/* Shared homepage-style scroll reveal for Event and Travel & Stay sections. */
.scroll-reveal-ready{opacity:0;transform:translateY(28px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.8,.2,1)}
.scroll-reveal-ready.scroll-reveal-visible{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.scroll-reveal-ready{opacity:1;transform:none;transition:none}}
