/* GUH Motion - styles for guh-motion.js */
html.gm-lenis,html.gm-lenis body{scroll-behavior:auto!important}
html.lenis.lenis-stopped{overflow:clip}
.lenis [data-lenis-prevent]{overscroll-behavior:contain}
.gm-w{display:inline-block;overflow:hidden;vertical-align:top;padding:.06em .04em .16em;margin:-.06em -.04em -.16em}
.gm-wi{display:inline-block}

/* arrival + page transitions */
.gm-curtain{position:fixed;inset:0;z-index:99998;overflow:hidden;color:var(--ink,#2b2d2e)}
.gm-p{position:absolute;inset:0;will-change:transform}
.gm-p::before,.gm-p::after{content:"";position:absolute;left:-6%;width:112%;height:12vh;background:inherit}
.gm-p::before{top:calc(-12vh + 1px);border-radius:50% 50% 0 0/100% 100% 0 0}
.gm-p::after{bottom:calc(-12vh + 1px);border-radius:0 0 50% 50%/0 0 100% 100%}
.gm-p-cream{background:var(--water-pale,#ebf5f9)}
.gm-p-gold{background:#a9d9ee}
.gm-p-cream.gm-leave{background:#dcf0f8}
.gm-m{display:block;overflow:hidden;padding:.12em 0}
.gm-mi{display:block;transform:translateY(118%);transition:transform .95s cubic-bezier(.2,.8,.2,1)}
.go .gm-mi{transform:none}
.gm-c-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(18px,3.4vh,34px);text-align:center;padding:0 6vw}
.gm-c-logo{width:clamp(150px,17vw,250px);height:auto;clip-path:inset(0 100% 0 0)}
.gm-c-tag{font:600 clamp(20px,2.3vw,34px)/1.2 var(--display,sans-serif);letter-spacing:-.01em}
.gm-c-since{font:700 11px/1 var(--display,sans-serif);letter-spacing:.26em;text-transform:uppercase;color:var(--gold-text,#7d5b24)}
.gm-c-count{position:absolute;left:5vw;bottom:3.4vh;font:700 clamp(48px,6.5vw,104px)/.9 var(--display,sans-serif);letter-spacing:-.04em;font-variant-numeric:tabular-nums;display:flex;align-items:flex-start;gap:.08em}
.gm-c-count i{font-style:normal;font-size:.4em;margin-top:.12em;color:var(--gold-text,#7d5b24)}
.gm-c-line{position:absolute;left:0;bottom:0;width:100%;height:3px;background:#d2b384;transform-origin:0 50%;transform:scaleX(0)}
.gm-c-name{position:absolute;left:5vw;right:5vw;top:50%;transform:translateY(-50%);display:block;overflow:hidden;padding:.1em 0}
.gm-c-name .gm-mi{font:700 clamp(34px,5vw,84px)/1 'Plus Jakarta Sans',Arial,Helvetica,sans-serif;letter-spacing:-.04em;color:#6b98ad}

/* scroll-driven type band */
.gm-marquee{overflow:hidden;background:var(--cream,#f5f2eb);padding:clamp(34px,5.5vw,76px) 0;border-top:1px solid var(--line,#e6e1d6);border-bottom:1px solid var(--line,#e6e1d6)}
.gm-marquee-track{display:flex;align-items:center;width:max-content;white-space:nowrap;will-change:transform}
.gm-marquee-track span{font-family:var(--display,inherit);font-weight:700;font-size:clamp(64px,11vw,176px);line-height:1;letter-spacing:-.035em;color:var(--ink,#211d18)}
.gm-marquee-track span.o{color:#cdbf9f}
.gm-marquee-track i{flex:none;width:.16em;height:.16em;font-size:clamp(64px,11vw,176px);border-radius:50%;background:var(--gold,#d2b384);margin:0 .42em}

/* nav roll-over */
.gm-roll{display:inline-flex;flex-direction:column;overflow:hidden;height:1.3em;line-height:1.3;vertical-align:top}
.gm-roll>span{display:block;transition:transform .6s cubic-bezier(.76,0,.24,1)}
a:hover>.gm-roll>span,a:focus-visible>.gm-roll>span{transform:translateY(-100%)}
@media(prefers-reduced-motion:reduce){.gm-roll>span{transition:none}}

/* Page changes on a web server: the browser keeps the old page on screen
   until the new one has painted, with no fade of its own (our wipe is the
   transition). Ignored where unsupported, and for pages opened from disk. */
@view-transition{navigation:auto}
::view-transition-group(root),::view-transition-old(root),::view-transition-new(root){animation-duration:.001s}

/* running text is justified by guh-justify.js; each block keeps its own last-line alignment */
.gm-j,.gm-jc,.gm-jr{text-align:justify;text-justify:inter-word;hyphens:none;-webkit-hyphens:none;text-wrap:pretty}
.gm-jc{text-align-last:center}
.gm-jr{text-align-last:right}
.caps li.gm-j{text-align:left;text-align-last:auto}

/* the page you are on */
.menu a[aria-current="page"],.menu a.on{color:var(--ink,#211d18)}
.menu > a[aria-current="page"]::after,.menu > .dropdown > a[aria-current="page"]::after,.menu > a.on::after,.menu > .dropdown > a.on::after{width:100%}
.dropdown-menu li a[aria-current="page"]{color:var(--gold-text,#7d5b24);font-weight:700}
