:root{--cream:#f1ebd3;--cream-2:#e7dfc0;--red:#8f0c29;--red-deep:#6e0920;--blue:#468a98;--ink:#3b565e;--display:"Bodoni Moda","Didot","Bodoni MT",Georgia,serif;--ui:"Karla",ui-sans-serif,system-ui,-apple-system,sans-serif;--hand:"Caveat","Bradley Hand","Segoe Script",cursive;--frame:clamp(10px,2.4vw,26px);--measure:34rem}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--ui);font-size:17px;line-height:1.65;overflow-x:hidden}img{max-width:100%;height:auto;display:block}.frame{position:fixed;top:var(--frame);left:var(--frame);right:var(--frame);bottom:0;border:2px solid var(--red);border-bottom:none;pointer-events:none;z-index:30}@media (max-width:640px){.frame{display:none}}.page{position:relative;max-width:var(--measure);margin:0 auto;padding:0 calc(var(--frame) + 20px)}.eyebrow{font-style:italic;font-size:1.05rem;margin:0 0 .2em}.eyebrow,.names{font-family:var(--display);color:var(--red)}.names{font-weight:400;font-size:clamp(2.1rem,9vw,3.1rem);line-height:1.05;letter-spacing:.01em;margin:0}.when{font-size:clamp(1.1rem,4.6vw,1.45rem);margin:.5rem 0 0}.when,.where{font-family:var(--display);font-style:italic;color:var(--red)}.where{font-size:clamp(1rem,4.2vw,1.25rem);margin:.15rem 0 0}h2{font-size:clamp(1.6rem,6vw,2.1rem);color:var(--red);line-height:1.15;margin:0 0 .6em}h2,h3{font-family:var(--display);font-weight:400}h3{font-size:1.25rem;color:var(--ink);margin:0 0 .35em}p{margin:0 0 1.1em}.lede{font-family:var(--display);font-size:1.2rem;line-height:1.6}.hero{position:relative;text-align:center;padding:clamp(64px,14vh,120px) 0 clamp(40px,8vh,72px)}.hero__title{width:min(100%,30rem);margin:0 auto}.ball{position:relative;width:5.5rem;margin:-1.5rem auto 0;transform-origin:50% -140px;animation:sway 7s ease-in-out infinite}.ball:before{content:"";position:absolute;left:50%;bottom:78%;width:1px;height:140px;background:var(--blue);opacity:.7}@keyframes sway{0%,to{transform:rotate(-2.4deg)}50%{transform:rotate(2.4deg)}}.dancers{width:11rem;margin:-.5rem auto 2rem}.rule{display:block;width:7rem;margin:1.4rem auto;opacity:.9}section{padding:clamp(40px,8vh,68px) 0;border-top:1px solid color-mix(in srgb,var(--blue) 34%,transparent)}.hero+section{border-top:none}.detail{display:grid;grid-gap:1.6rem;gap:1.6rem;margin:1.8rem 0 0}.detail div{padding-left:1rem;border-left:2px solid var(--blue)}.detail dt{font-family:var(--ui);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:.25rem}.detail dd{margin:0;font-family:var(--display);font-size:1.15rem}label{display:block;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:.4rem}input[type=email],input[type=text],textarea{width:100%;font-family:var(--ui);font-size:1rem;color:var(--ink);background:transparent;border:none;border-bottom:1.5px solid color-mix(in srgb,var(--blue) 55%,transparent);border-radius:0;padding:.55rem .1rem;transition:border-color .18s ease}input[type=email]:focus-visible,input[type=text]:focus-visible,textarea:focus-visible{outline:none;border-bottom-color:var(--red)}textarea{resize:vertical;min-height:4.5rem;line-height:1.5}.field{margin-bottom:1.6rem}.hint{font-size:.85rem;opacity:.7;margin:.4rem 0 0}.btn{font-family:var(--ui);font-size:.82rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--cream);background:var(--red);border:2px solid var(--red);border-radius:0;padding:.85rem 1.6rem;cursor:pointer;transition:background .16s ease,color .16s ease}.btn:hover:not(:disabled){background:var(--red-deep);border-color:var(--red-deep)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--ghost{background:transparent;color:var(--red)}.btn--ghost:hover:not(:disabled){background:var(--red);color:var(--cream)}:where(a,button,input,textarea,select):focus-visible{outline:2px solid var(--red);outline-offset:3px}.choice{display:grid;grid-template-columns:1fr 1fr;grid-gap:.5rem;gap:.5rem;margin-top:.6rem}.choice button{font-family:var(--ui);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:.75rem .5rem;border:1.5px solid color-mix(in srgb,var(--blue) 55%,transparent);border-radius:0;background:transparent;color:var(--ink);cursor:pointer;transition:all .16s ease}.choice button:hover{border-color:var(--red)}.choice button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:var(--cream)}.choice3{display:grid;grid-template-columns:1fr;grid-gap:.4rem;gap:.4rem;margin-top:.6rem}.choice3 button{font-family:var(--ui);font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:.8rem .6rem;border:1.5px solid color-mix(in srgb,var(--blue) 55%,transparent);border-radius:0;background:transparent;color:var(--ink);cursor:pointer;transition:all .16s ease}.choice3 button:hover{border-color:var(--red)}.choice3 button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:var(--cream)}.guest-card{padding:1.2rem 0 1.4rem;border-top:1px solid color-mix(in srgb,var(--blue) 28%,transparent)}.guest-card:first-of-type{border-top:none}.guest-card__name{font-family:var(--display);font-size:1.3rem;color:var(--ink);margin:0}.error{color:var(--red);font-size:.92rem;margin:.8rem 0 0}.decide__q{font-family:var(--display);font-size:1.4rem;line-height:1.25;margin:0 0 1.1rem}.decision{display:grid;grid-gap:.75rem;gap:.75rem}.decision .btn{width:100%;padding:1rem 1.2rem}.linkbtn{background:none;border:none;padding:0;font:inherit;color:var(--red);text-decoration:underline;cursor:pointer}.signoff{font-family:var(--display);font-style:italic;font-size:1.2rem;margin-top:1.3rem}.confirmed{text-align:center;padding:1rem 0 0}.confirmed .spin{width:6rem;margin:0 auto 1.5rem;animation:spin 9s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.invert{background:var(--red);border-top:none;padding-left:clamp(20px,6vw,40px);padding-right:clamp(20px,6vw,40px)}.invert,.invert .guest-card__name,.invert .lede,.invert a,.invert h2,.invert h3,.invert p{color:var(--cream)}.invert label{color:color-mix(in srgb,var(--cream) 78%,transparent)}.invert .hint{color:var(--cream);opacity:.75}.invert input[type=email],.invert input[type=text],.invert textarea{color:var(--cream);border-bottom-color:color-mix(in srgb,var(--cream) 55%,transparent)}.invert input[type=email]:focus-visible,.invert input[type=text]:focus-visible,.invert textarea:focus-visible{border-bottom-color:var(--cream)}.invert input::placeholder,.invert textarea::placeholder{color:color-mix(in srgb,var(--cream) 50%,transparent)}.invert .btn{background:var(--cream);color:var(--red);border-color:var(--cream)}.invert .btn:hover:not(:disabled){background:var(--cream-2);border-color:var(--cream-2);color:var(--red-deep)}.invert .btn--ghost{background:transparent;color:var(--cream);border-color:var(--cream)}.invert .btn--ghost:hover:not(:disabled){background:var(--cream);color:var(--red)}.invert .choice button{color:var(--cream);border-color:color-mix(in srgb,var(--cream) 50%,transparent)}.invert .choice button:hover{border-color:var(--cream)}.invert .choice button[aria-pressed=true]{background:var(--cream);border-color:var(--cream);color:var(--red)}.invert .choice3 button{color:var(--cream);border-color:color-mix(in srgb,var(--cream) 50%,transparent)}.invert .choice3 button:hover{border-color:var(--cream)}.invert .choice3 button[aria-pressed=true]{background:var(--cream);border-color:var(--cream);color:var(--red)}.invert .guest-card{border-top-color:color-mix(in srgb,var(--cream) 25%,transparent)}.invert .error{font-weight:600}.invert .error,.invert .linkbtn{color:var(--cream)}.invert :where(a,button,input,textarea,select):focus-visible{outline-color:var(--cream)}.corner{position:fixed;width:74px;opacity:.85;pointer-events:none;z-index:31}.corner--tl{left:calc(var(--frame) + 12px)}.corner--tl,.corner--tr{top:calc(var(--frame) + 12px)}.corner--tr{right:calc(var(--frame) + 12px);transform:scaleX(-1)}@media (max-width:900px){.corner{display:none}}footer{text-align:center;padding:3rem 0 4rem;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.sitenav{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem 0;border-bottom:1px solid color-mix(in srgb,var(--blue) 30%,transparent)}.sitenav__brand{font-family:var(--display);font-style:italic;font-size:1.15rem;color:var(--red);text-decoration:none}.sitenav ul{list-style:none;display:flex;flex-wrap:wrap;gap:1.2rem;margin:0;padding:0}.sitenav ul a{font-family:var(--ui);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);text-decoration:none}.sitenav ul a:hover,.sitenav ul a[aria-current=page]{color:var(--red)}.sitenav__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:2.4rem;height:2.4rem;padding:0;background:none;border:none;cursor:pointer}.sitenav__toggle span{display:block;height:2px;width:22px;margin:0 auto;background:var(--red);transition:transform .2s ease,opacity .2s ease}.sitenav__toggle[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.sitenav__toggle[aria-expanded=true] span:nth-child(2){opacity:0}.sitenav__toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width:640px){.sitenav__toggle{display:flex}.sitenav ul{display:none;flex-basis:100%;flex-direction:column;gap:.9rem;padding:.4rem 0 .2rem}.sitenav ul.is-open{display:flex}}.pagehead{text-align:center;padding:2.5rem 0 1rem}.pagehead__title{font-family:var(--display);font-weight:400;color:var(--red);font-size:clamp(2rem,8vw,2.8rem);line-height:1.05;margin:.2em 0 0}.pagehead .lede{margin:1rem auto 0;max-width:30rem}.page--wide{max-width:62rem}.itin{display:grid;grid-gap:2.5rem;gap:2.5rem;margin-top:1rem}.itin__intro{text-align:center}.itin__intro .lede{margin:1rem auto 0;max-width:34rem}.itin__art{display:none}@media (min-width:800px){.itin{grid-template-columns:19rem 1fr;gap:4rem;align-items:start}.itin__intro{text-align:left;position:-webkit-sticky;position:sticky;top:2rem}.itin__intro .lede{margin:1rem 0 0}.itin__art{display:block;width:13rem;margin:2.5rem 0 0}.itin .timeline{max-width:32rem;margin:0}}.timeline{list-style:none;max-width:30rem;margin:2.5rem auto;padding:0}.tl{display:grid;grid-template-columns:2.75rem 1fr;grid-gap:1.1rem;gap:1.1rem;padding-bottom:2.2rem;position:relative}.tl:not(:last-child):before{content:"";position:absolute;left:1.375rem;top:3rem;bottom:0;width:1.5px;background:color-mix(in srgb,var(--blue) 32%,transparent);transform:translateX(-50%)}.tl__mark{color:var(--blue)}.tl__mark svg{width:2.75rem;height:2.75rem;display:block}.tl__time{font-style:italic;font-size:1rem;color:var(--red);margin:0 0 .1rem}.tl__time,.tl__title{font-family:var(--display)}.tl__title{font-weight:400;font-size:1.35rem;color:var(--ink);line-height:1.15;margin:0 0 .25rem}.tl__detail{margin:0}.tl__detail a{color:var(--red)}.cards{display:grid;grid-gap:1px;gap:1px;background:color-mix(in srgb,var(--blue) 30%,transparent);border:1px solid color-mix(in srgb,var(--blue) 30%,transparent);max-width:46rem;margin:2rem auto}@media (min-width:640px){.cards{grid-template-columns:1fr 1fr}}.card{background:var(--cream);padding:1.6rem 1.5rem}.card__title{font-family:var(--display);font-weight:400;font-size:1.4rem;color:var(--red);margin:0 0 .4rem}.card p{margin:0}.callout{max-width:46rem;margin:0 auto 1rem;background:var(--red);color:var(--cream);padding:1.6rem clamp(1.2rem,5vw,2.4rem)}.callout p{margin:0;font-family:var(--display);font-size:1.15rem;line-height:1.5}.dress{text-align:center;max-width:34rem;margin:0 auto;padding:3rem 0 1rem}.dress__statement{font-family:var(--display);font-weight:400;color:var(--ink);font-size:clamp(1.6rem,6vw,2.2rem);margin:1rem 0 1.5rem}.dress .lede{margin:0 auto;max-width:28rem}.dress__accent{font-family:var(--display);font-style:italic}.dress__art{width:9rem;margin:2.5rem auto 0;opacity:.9}.admin{max-width:74rem;margin:0 auto;padding:2.5rem calc(var(--frame) + 20px) 5rem}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));grid-gap:1px;gap:1px;background:color-mix(in srgb,var(--blue) 30%,transparent);border:1px solid color-mix(in srgb,var(--blue) 30%,transparent);margin:1.5rem 0 2.5rem}.stat{background:var(--cream);padding:1.1rem 1.2rem}.stat b{display:block;font-family:var(--display);font-weight:400;font-size:2.4rem;line-height:1;color:var(--red)}.stat span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.filtercards{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));grid-gap:1px;gap:1px;background:color-mix(in srgb,var(--blue) 30%,transparent);border:1px solid color-mix(in srgb,var(--blue) 30%,transparent);margin:1.5rem 0 2rem}.filtercard{display:block;background:var(--cream);padding:1.1rem 1.2rem;text-decoration:none;transition:background .15s ease}.filtercard:hover{background:var(--cream-2)}.filtercard b{display:block;font-family:var(--display);font-weight:400;font-size:2.2rem;line-height:1;color:var(--red)}.filtercard span{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}.filtercard[aria-current=true]{background:var(--red)}.filtercard[aria-current=true] b,.filtercard[aria-current=true] span{color:var(--cream)}table{width:100%;border-collapse:collapse;font-size:.94rem}th{text-align:left;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);font-weight:600;padding:.6rem .7rem;border-bottom:1.5px solid var(--blue);white-space:nowrap}td{padding:.65rem .7rem;border-bottom:1px solid color-mix(in srgb,var(--blue) 22%,transparent);vertical-align:top}tbody tr:hover{background:var(--cream-2)}.tag{display:inline-block;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;padding:.15rem .5rem;border:1px solid}.tag--attending{color:var(--blue)}.tag--declined{color:var(--red)}.tag--pending{color:color-mix(in srgb,var(--ink) 60%,transparent)}.scroller{overflow-x:auto}.login{max-width:22rem;margin:18vh auto;text-align:center}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ball,.confirmed .spin{animation:none}*,:after,:before{transition-duration:.01ms!important}}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.25,1)}.reveal.is-visible{opacity:1;transform:none}.hand{font-family:var(--hand)}.hero2{min-height:86vh;min-height:86svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1.25rem 3.8rem;position:relative;overflow:hidden}.hero2__kicker{font-family:var(--hand);color:var(--blue);font-size:1.5rem;line-height:1.1;margin:0}.hero2__names{font-family:var(--display);color:var(--red);font-weight:400;font-size:clamp(2.5rem,12.5vw,4.4rem);line-height:1;letter-spacing:.01em;margin:.15em 0 .12em}.hero2__meta{font-family:var(--display);font-style:italic;color:var(--ink);font-size:clamp(1.05rem,4.6vw,1.45rem);margin:.25rem 0}.hero2__art{max-width:min(52vw,172px);max-height:31svh;width:auto;height:auto;margin:1.2rem auto 0;transform-origin:50% 6%;animation:sway2 6s ease-in-out infinite}.hero2__note{max-width:24rem;margin:1.3rem auto 0;font-family:var(--ui);font-size:.98rem;line-height:1.65;color:var(--ink)}.hero2__sign{display:block;margin-top:.5rem;font-family:var(--hand);font-size:1.55rem;color:var(--red)}.hero2__scroll{position:absolute;left:0;right:0;bottom:1.3rem;margin:0;font-family:var(--hand);color:var(--blue);font-size:1.3rem;animation:bob 2.6s ease-in-out infinite}@keyframes sway2{0%,to{transform:rotate(-2.6deg)}50%{transform:rotate(2.6deg)}}@keyframes bob{0%,to{transform:translateY(0)}50%{transform:translateY(9px)}}.journey{max-width:42rem;margin:0 auto;padding:2.75rem 1.4rem 1.5rem;position:relative}.journey:before{content:"";position:absolute;left:2.55rem;top:3.5rem;bottom:5rem;border-left:3px dashed color-mix(in srgb,var(--blue) 45%,transparent)}.stop{position:relative;padding:1.5rem 0 4.8rem 6.2rem}.stop__node{position:absolute;left:0;top:1.3rem;width:4.8rem;height:4.8rem;display:grid;place-items:center;background:var(--cream)}.stop__node img{max-width:4.8rem;max-height:4.8rem}.stop__label{font-family:var(--hand);color:var(--red);font-weight:700;font-size:clamp(1.9rem,8.5vw,2.7rem);line-height:1.05;margin:.15rem 0 .7rem}.stop__text{margin:0 0 1.5rem;line-height:1.7}.stop__cta{display:inline-block;font-family:var(--ui);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--cream);background:var(--red);padding:.75rem 1.3rem;text-decoration:none;transition:background .16s ease}.stop__cta:hover{background:var(--red-deep)}.ofrow{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .9rem;margin:.2rem 0 1.2rem}.ofrow img{height:2.7rem;width:auto}.footer2{text-align:center;padding:1.5rem 1.25rem 3rem;font-family:var(--hand);color:var(--blue);font-size:1.35rem}@media (min-width:720px){.stop{padding-left:7.2rem}.stop__node{width:5.6rem;height:5.6rem}.stop__node img{max-width:5.6rem;max-height:5.6rem}.journey:before{left:2.95rem}.ofrow img{height:3.2rem}}@media (prefers-reduced-motion:reduce){.hero2__art,.hero2__scroll{animation:none}.reveal{opacity:1;transform:none;transition:none}}.nudge{max-width:34rem;margin:.5rem auto 2rem;padding:1.6rem 1.4rem 1.9rem;background:var(--red);color:var(--cream);text-align:center}.nudge__ps{font-family:var(--hand);font-weight:700;font-size:1.8rem;line-height:1;margin:0 0 .4rem}.nudge__text{font-family:var(--ui);line-height:1.6;margin:0 auto 1.2rem;max-width:24rem}.nudge__cta{display:inline-block;font-family:var(--ui);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--red);background:var(--cream);padding:.75rem 1.3rem;text-decoration:none;transition:background .16s ease}.nudge__cta:hover{background:var(--cream-2)}@media (max-width:480px){.nudge{margin-left:1.25rem;margin-right:1.25rem}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.sub .sitenav{position:-webkit-sticky;position:sticky;top:0;z-index:20;padding:.8rem 1.25rem;background:color-mix(in srgb,var(--cream) 94%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid color-mix(in srgb,var(--blue) 25%,transparent)}.sub .sitenav__brand{font-family:var(--hand);font-style:normal;font-weight:700;font-size:1.45rem}.phead{max-width:34rem;margin:0 auto;padding:2rem 1.25rem 1.2rem;text-align:center}.phead__motif{height:5.2rem;width:auto;margin:0 auto .6rem;animation:float 4.5s ease-in-out infinite}.phead__kicker{font-family:var(--hand);color:var(--blue);font-size:1.45rem;line-height:1.1;margin:0}.phead__title{font-family:var(--hand);color:var(--red);font-weight:700;font-size:clamp(2.6rem,13vw,4rem);line-height:.95;margin:.1em 0 .35em}.phead__intro{max-width:26rem;margin:0 auto;line-height:1.65}.sec__title{font-family:var(--hand);color:var(--red);font-weight:700;font-size:2.2rem;line-height:1;text-align:center;margin:2.5rem 1.25rem .8rem}.fun{list-style:none;max-width:34rem;margin:1.5rem auto 0;padding:0 1.25rem}.fun__grid{display:grid;grid-template-columns:42% 1fr;align-items:center;grid-gap:1rem;gap:1rem}.fun__stop.is-flip .fun__grid{grid-template-columns:1fr 42%}.fun__stop.is-flip .fun__art{order:2}.fun__stop.is-flip .fun__text{text-align:right}.fun__art{display:flex;justify-content:center}.fun__art img{max-height:7.2rem;max-width:100%;width:auto;animation:float 5s ease-in-out infinite}.fun__stop:nth-child(3n) .fun__art img{animation-delay:-1.6s}.fun__stop:nth-child(3n+1) .fun__art img{animation-delay:-3.2s}.fun__time{color:var(--blue);font-size:1.4rem;margin:0}.fun__time,.fun__title{font-family:var(--hand);line-height:1}.fun__title{color:var(--red);font-weight:700;font-size:1.95rem;margin:.15rem 0 .35rem}.fun__detail{margin:0;font-size:.95rem;line-height:1.55}.fun__detail a,.fun__path{color:var(--red)}.fun__path{margin:.3rem 0}.fun__path svg{display:block;width:100%;height:auto}.fun__path.is-flip svg{transform:scaleX(-1)}.wear{max-width:30rem;margin:3rem auto 1.5rem;padding:2rem 1.25rem 0;text-align:center;border-top:3px dashed color-mix(in srgb,var(--blue) 40%,transparent)}.wear .sec__title{margin-top:.4rem}.wear__art{height:7rem;width:auto;margin:0 auto}.wear__big{font-family:var(--display);font-size:1.6rem;color:var(--ink);margin:0 0 .4rem}.wear__note{margin:0}.formcard{max-width:30rem;margin:1rem auto 3rem;padding:1.6rem 1.25rem 2rem;background:color-mix(in srgb,var(--cream-2) 55%,var(--cream));border-top:3px solid var(--red)}@media (min-width:560px){.formcard{padding-left:2rem;padding-right:2rem}}.formcard .confirmed .spin{width:6.5rem}.venues{max-width:34rem;margin:1.2rem auto 0;padding:0 1.25rem}.venue{overflow:hidden;padding:1.8rem 1.4rem 1.7rem;border:2px solid var(--red);background:var(--cream);text-align:center}.venue,.venue>:not(.venue__bg){position:relative}.venue__bg{position:absolute;right:-14%;bottom:-10%;width:72%;opacity:.17;pointer-events:none}.venue__motif{height:5rem;width:auto;margin:0 auto .5rem}.venue__label{font-family:var(--hand);color:var(--blue);font-size:1.5rem;line-height:1;margin:0}.venue__name{color:var(--red);font-weight:400;font-size:1.85rem;line-height:1.1;margin:.25rem 0 .4rem}.venue__name,.venue__time{font-family:var(--display)}.venue__time{font-style:italic;margin:0 0 .2rem}.venue__addr{font-size:.95rem;margin:0 0 1.2rem}.hop{text-align:center;padding:1.2rem .5rem}.hop img{height:3.6rem;width:auto;margin:0 auto .4rem;animation:float 4s ease-in-out infinite}.hop p{font-family:var(--hand);color:var(--blue);font-size:1.3rem;line-height:1.2;max-width:18rem;margin:0 auto}.callout--page{margin:1.8rem auto 0}.cards--page{margin:0 auto 2rem}@media (max-width:760px){.callout--page,.cards--page{margin-left:1.25rem;margin-right:1.25rem}}.gift{max-width:28rem;margin:.5rem auto 2.5rem;padding:0 1.25rem;text-align:center;border-top:none}.gift__head{font-family:var(--hand);font-weight:700;color:var(--red);font-size:2rem;line-height:1;margin:2rem 0 .4rem}.gift__btn{display:inline-block;margin:.6rem 0 .4rem;font-family:var(--ui);font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--cream);background:var(--red);padding:.95rem 1.6rem;text-decoration:none;transition:background .16s ease}.gift__btn:hover{background:var(--red-deep)}.gift__note{font-size:.85rem;opacity:.75;margin:.3rem 0 1.4rem}@media (min-width:720px){.fun__art img{max-height:8.5rem}.fun__title{font-size:2.2rem}}@media (prefers-reduced-motion:reduce){.fun__art img,.hop img,.phead__motif{animation:none}}.diet__btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.6rem;font-family:var(--ui);font-size:1rem;color:var(--ink);text-align:left;background:transparent;border:none;border-bottom:1.5px solid color-mix(in srgb,var(--blue) 55%,transparent);border-radius:0;padding:.55rem .1rem;cursor:pointer}.diet__btn.is-empty .diet__summary{opacity:.55}.diet.is-open .diet__btn{border-bottom-color:var(--red)}.diet__chev{color:var(--red);transition:transform .18s ease}.diet.is-open .diet__chev{transform:rotate(180deg)}.diet__panel{margin-top:.5rem;padding:.4rem .2rem .6rem;background:var(--cream);border:1.5px solid color-mix(in srgb,var(--blue) 40%,transparent)}.diet__opt{display:flex;align-items:center;gap:.75rem;padding:.7rem .8rem;margin:0;font-family:var(--ui);font-size:1rem;letter-spacing:0;text-transform:none;color:var(--ink);cursor:pointer}.diet__opt input{position:absolute;opacity:0;pointer-events:none}.diet__box{flex:none;width:1.2rem;height:1.2rem;border:1.5px solid var(--blue);background:var(--cream);position:relative}.diet__opt.is-on .diet__box{background:var(--red);border-color:var(--red)}.diet__opt.is-on .diet__box:after{content:"";position:absolute;left:.36rem;top:.12rem;width:.32rem;height:.62rem;border:solid var(--cream);border-width:0 2px 2px 0;transform:rotate(45deg)}.diet__opt:has(input:focus-visible){outline:2px solid var(--red);outline-offset:-2px}.diet__done{display:block;margin:.4rem .8rem 0 auto;font-family:var(--ui);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--red);background:none;border:1.5px solid var(--red);padding:.5rem 1rem;cursor:pointer}.diet__other{margin-top:.7rem}.homenav{position:fixed;top:0;left:0;right:0;z-index:40;transform:translateY(-105%);visibility:hidden;transition:transform .32s ease,visibility 0s linear .32s}.homenav.is-shown{transform:none;visibility:visible;transition:transform .32s ease,visibility 0s}.homenav .sitenav,.sub .sitenav{position:-webkit-sticky;position:sticky;top:0;z-index:20;padding:.8rem 1.25rem;background:color-mix(in srgb,var(--cream) 94%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid color-mix(in srgb,var(--blue) 25%,transparent)}.homenav .sitenav__brand{font-family:var(--hand);font-style:normal;font-weight:700;font-size:1.45rem}@media (prefers-reduced-motion:reduce){.homenav,.homenav.is-shown{transition:none}}.staymap{max-width:62rem;margin:.6rem auto 1.4rem;padding:0 1.25rem;scroll-margin-top:5rem}.staymap__scroll{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border:2px solid var(--red);background:var(--cream);scrollbar-width:thin}.staymap__svg{display:block;width:100%;min-width:680px;height:auto;font-family:var(--hand)}.staymap__hint{font-family:var(--hand);color:var(--blue);font-size:1.2rem;text-align:center;margin:.5rem 0 0}.staymap__credit{font-size:.72rem;text-align:right;opacity:.65;margin:.2rem 0 0}.staymap__credit a{color:inherit}@media (min-width:760px){.staymap__svg{min-width:0}.staymap__hint{display:none}}.bm__park{fill:color-mix(in srgb,var(--blue) 18%,var(--cream-2))}.bm__water{fill:color-mix(in srgb,var(--blue) 55%,var(--cream))}.bm__river{fill:none;stroke:color-mix(in srgb,var(--blue) 55%,var(--cream));stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.bm__rail{fill:none;stroke:var(--ink);stroke-width:2.2;stroke-dasharray:6 5;opacity:.45}.bm__case,.bm__road{fill:none;stroke-linecap:round;stroke-linejoin:round}.bm__case{stroke:var(--ink)}.bm__case--p{stroke-width:6.5;opacity:.42}.bm__case--t{stroke-width:8;opacity:.5}.bm__case--m{stroke-width:10;stroke:var(--red);opacity:.6}.bm__road{stroke:var(--cream)}.bm__road--p{stroke-width:3.5}.bm__road--t{stroke-width:4.8}.bm__road--m{stroke-width:6}.bm__place{stroke:var(--cream);stroke-width:5;stroke-linejoin:round;paint-order:stroke}.bm__place--park{fill:color-mix(in srgb,var(--blue) 70%,var(--ink))}.bm__place--water{fill:var(--blue)}.bm__place--landmark{fill:var(--ink)}.bm__north path{fill:var(--red)}.bm__north text{fill:var(--red);font-weight:700}.apin{cursor:pointer;outline:none}.apin__hit{fill:transparent}.apin__dot{fill:var(--cream);stroke:var(--blue);stroke-width:4;transition:r .2s ease,fill .2s ease}.apin.is-active .apin__dot,.apin:focus-visible .apin__dot,.apin:hover .apin__dot{fill:var(--blue)}.apin__label,.svenue__label{font-weight:700;stroke:var(--cream);stroke-width:5;stroke-linejoin:round;paint-order:stroke}.apin__label{font-size:21px;fill:var(--ink)}.apin.is-active .apin__label{fill:var(--blue)}.svenue circle{fill:var(--red);stroke:var(--cream);stroke-width:4}.svenue__label{font-size:23px;fill:var(--red)}.areas{display:grid;grid-gap:1rem;gap:1rem;max-width:34rem;margin:0 auto 2.5rem;padding:0 1.25rem}.area{padding:1.2rem 1.25rem 1.3rem;background:var(--cream);border:1.5px solid color-mix(in srgb,var(--blue) 40%,transparent);transition:border-color .2s ease,transform .2s ease;cursor:pointer;scroll-margin-top:5rem}.area.is-active{border-color:var(--red);transform:translateY(-2px)}.area__name{font-family:var(--hand);color:var(--red);font-weight:700;font-size:1.8rem;line-height:1;margin:0}.area__walk{font-family:var(--hand);color:var(--blue);font-size:1.25rem;margin:.2rem 0 .4rem}.area p{margin-bottom:0}.area__hotels{margin:.7rem 0 0;padding-left:1.1rem}.area__hotels a{color:var(--red)}@media (min-width:760px){.areas{max-width:62rem;grid-template-columns:1fr 1fr}}