@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&display=swap";.site-header{background:var(--color-nav-bg);border-bottom:1px solid var(--color-nav-border);z-index:1000;width:100%;position:sticky;top:0;box-shadow:0 4px 16px #0000000f}.header-inner{justify-content:space-between;align-items:center;gap:1.5rem;padding:1rem 0;display:flex}.logo{color:var(--color-primary);letter-spacing:.02em;flex-shrink:0;font-family:Montserrat,sans-serif;font-size:1.3rem;font-weight:700;text-decoration:none}.logo:hover{color:var(--color-accent)}.header-right{align-items:center;display:flex}.main-nav ul{align-items:center;gap:2rem;list-style:none;display:flex}.nav-link{color:var(--color-nav-text);letter-spacing:.03em;font-size:.95rem;text-decoration:none;transition:color .15s}.nav-link:hover{color:var(--color-nav-text-hover)}.nav-link--active{border-bottom:2px solid var(--color-nav-underline);color:var(--color-accent);padding-bottom:.2rem}.nav-link--admin{border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:999px;padding:.25rem .75rem}.nav-link--admin:hover{border-color:var(--color-accent);color:var(--color-accent)}.hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:0;display:none}.hamburger span{background:var(--color-nav-text);border-radius:2px;width:24px;height:2px;transition:transform .25s,opacity .25s;display:block}.hamburger--open span:first-child{transform:translateY(7px)rotate(45deg)}.hamburger--open span:nth-child(2){opacity:0}.hamburger--open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}@media (width<=768px){.hamburger{display:flex}.header-inner{flex-wrap:wrap;gap:0;padding:.75rem 1rem}.logo{flex:1}.header-right{border-top:1px solid var(--color-nav-border);flex-direction:column;align-items:flex-start;width:100%;padding:.5rem 0 1rem;display:none}.header-right--open{display:flex}.main-nav{width:100%}.main-nav ul{flex-direction:column;align-items:flex-start;gap:0;width:100%}.main-nav li{width:100%}.nav-link{border-bottom:1px solid var(--color-nav-border);width:100%;padding:.75rem 0;display:block}.nav-link--active{border-bottom:1px solid var(--color-nav-border);padding-bottom:.75rem}}.site-footer{background:var(--color-footer-bg);color:var(--color-footer-text);padding:1.25rem 0}.footer-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.footer-brand{color:var(--color-accent-light);font-family:Montserrat,sans-serif;font-size:1rem;font-weight:700}.footer-copy{opacity:.7;font-size:.85rem}.hub{padding-bottom:var(--spacing-xl)}.hub-intro{padding:var(--spacing-lg) 0 var(--spacing-md)}.hub-intro h1{color:var(--color-primary);margin:0 0 .3rem}.hub-intro p{color:var(--color-text-muted);margin:0;font-size:1.05rem}.hub-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:1rem;display:grid}.tile--lg{grid-area:span 2/span 2}.tile--wide{grid-column:span 2}.tile--sm{grid-column:span 1}.tile{color:#fff;background:var(--color-bg-light);border-radius:14px;text-decoration:none;animation:.5s both hub-rise;display:block;position:relative;overflow:hidden;box-shadow:0 1px 3px #3d2b1f14}@keyframes hub-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.tile__img{background-position:50%;background-size:cover;transition:transform .4s;position:absolute;inset:0}.tile__img--copper{background:linear-gradient(135deg,#d4924e,#b87333 55%,#8a5322)}.tile__img--slate{background:linear-gradient(135deg,#5b6b7a,#3d4a57 60%,#2a333d)}.tile__img--walnut{background:linear-gradient(135deg,#7a5a42,#573d2b 60%,#3d2b1f)}.tile__scrim{background:linear-gradient(#140e0a00 56%,#140e0a14 74%,#140e0a80 100%);position:absolute;inset:0}.tile__body{flex-direction:column;gap:.15rem;padding:1.1rem 1.25rem;display:flex;position:absolute;bottom:0;left:0;right:0}.tile__label{text-shadow:0 1px 3px #0009,0 2px 12px #00000080;font-family:Montserrat,sans-serif;font-size:1.15rem;font-weight:700;line-height:1.2}.tile__tagline{opacity:.95;text-shadow:0 1px 3px #0009,0 1px 10px #00000080;font-size:.85rem}.tile--lg .tile__label{font-size:1.6rem}.tile--lg .tile__tagline{font-size:.95rem}.tile__arrow{opacity:0;text-shadow:0 1px 6px #00000080;font-size:1.1rem;transition:opacity .2s,transform .2s;position:absolute;top:.9rem;right:1rem;transform:translate(-6px)}.tile:hover{transform:translateY(-4px);box-shadow:0 16px 32px -10px #3d2b1f66}.tile:hover .tile__img{transform:scale(1.06)}.tile:hover .tile__arrow{opacity:1;transform:translate(0)}.tile:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}@media (width<=900px){.hub-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px}.tile--lg{grid-area:span 2/span 2}.tile--wide{grid-column:span 2}.tile--sm{grid-column:span 1}}@media (width<=560px){.hub-grid{grid-template-columns:1fr;grid-auto-rows:160px}.tile--lg,.tile--wide,.tile--sm{grid-area:span 1/span 1}.tile--lg{grid-row:span 2}}@media (prefers-reduced-motion:reduce){.tile{animation:none}.tile__img,.tile:hover,.tile:hover .tile__img{transition:none;transform:none}}.gv-home{padding-bottom:4rem}.gv-home-title{margin:2rem 0 1.5rem}.gv-home-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.gv-home-card{color:inherit;border:1px solid var(--color-border);background:#fff;border-radius:10px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:block;overflow:hidden}.gv-home-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px -8px #3d2b1f40}.gv-home-card img,.gv-home-card-empty{aspect-ratio:3/2;object-fit:cover;background:var(--color-bg-light);width:100%;display:block}.gv-home-card h2{margin:.75rem .9rem .2rem;font-size:1.05rem}.gv-home-card p{margin:0 .9rem .35rem;font-size:.85rem}.gv-home-card .gv-muted{margin:0 .9rem .8rem;display:block}.gv{min-height:70vh;padding:0 0 3rem}.gv--dark{color:#b9bac2;background:#0e0e12}.gv--dark h1{color:#f2f2f5}.gv--light{color:#555;background:#fbfbfc}.gv--light h1{color:#16161a}.gv-inner{max-width:1400px;margin:0 auto;padding:1.75rem clamp(1rem,3vw,2.5rem)}.gv-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;display:flex}.gv-header h1{margin:.2rem 0}.gv-desc{max-width:60ch;margin:.2rem 0 0}.gv-crumbs{opacity:.8;font-size:.8rem}.gv-crumbs a{color:inherit}.gv-controls{flex-shrink:0;gap:.5rem;margin-top:.4rem;display:flex}.gv-toggle{font:inherit;color:inherit;cursor:pointer;opacity:.75;background:0 0;border:1px solid;border-radius:999px;padding:.35rem .8rem;font-size:.8rem}.gv-toggle:hover,.gv-toggle--on{opacity:1}.gv-albums{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.gv-album-card{color:#fff;border-radius:8px;text-decoration:none;display:block;position:relative;overflow:hidden}.gv-album-card img,.gv-album-card-empty{aspect-ratio:3/2;object-fit:cover;background:#80808026;width:100%;transition:transform .2s;display:block}.gv-album-card:hover img{transform:scale(1.03)}.gv-album-card span{background:linear-gradient(#0000,#000000a6);padding:1.2rem .9rem .6rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}.gv-grid{gap:.6rem;display:grid}.gv-grid--small{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.gv-grid--medium{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.gv-grid--large{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.gv-thumb{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:0;display:block;position:relative;overflow:hidden}.gv-thumb img{aspect-ratio:3/2;object-fit:cover;width:100%;transition:transform .2s,opacity .2s;display:block}.gv-thumb:hover img{transform:scale(1.02)}.gv-thumb-badge{color:#fff;background:#0009;border-radius:999px;justify-content:center;align-items:center;width:1.7rem;height:1.7rem;font-size:.7rem;display:flex;position:absolute;top:.5rem;right:.5rem}.gv-thumb-caption{color:#fff;text-align:left;opacity:0;text-overflow:ellipsis;white-space:nowrap;background:linear-gradient(#0000,#0009);padding:1rem .6rem .4rem;font-size:.75rem;transition:opacity .15s;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.gv-thumb:hover .gv-thumb-caption{opacity:1}.gv-locked{text-align:center;max-width:380px;margin:0 auto;padding-top:3rem;padding-bottom:4rem}.gv-locked form{gap:.5rem;margin-top:1rem;display:flex}.gv-locked input{font:inherit;border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:7px;flex:1;padding:.45rem .7rem}.gv-locked input:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #b8733326}.gv-locked button{font:inherit;border:1px solid var(--color-accent);background:var(--color-accent);color:#fff;cursor:pointer;border-radius:7px;padding:.45rem 1.1rem}.gv-locked button:hover{background:var(--color-accent-light);border-color:var(--color-accent-light)}.gv-cap-line{display:block}.gv-cap-meta{opacity:.75;margin-top:.2rem;font-size:.82rem}.gv-cap-loc{color:inherit;text-underline-offset:2px;-webkit-text-decoration:underline #fff6;text-decoration:underline #fff6}.gv-cap-loc:hover{text-decoration-color:currentColor}.gv-error{color:#c0392b}.gv-muted{opacity:.7;font-size:.85rem}@media (width<=640px){.gv-header{flex-direction:column;gap:.75rem}}.yarl__fullsize{width:100%;height:100%}.yarl__relative{position:relative}.yarl__portal{opacity:0;pointer-events:auto;transition:opacity var(--yarl__fade_animation_duration,.25s) var(--yarl__fade_animation_timing_function,ease);z-index:var(--yarl__portal_zindex,9999);position:fixed;inset:0;overflow:hidden}.yarl__portal_open{opacity:1}.yarl__container{background-color:var(--yarl__container_background_color,var(--yarl__color_backdrop,#000));overscroll-behavior:var(--yarl__controller_overscroll_behavior,contain);touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;user-select:none;outline:none;position:absolute;inset:0;overflow:hidden}.yarl__carousel{height:100%;opacity:var(--yarl__pull_opacity,1);transform:translate(var(--yarl__swipe_offset,0),var(--yarl__pull_offset,0));width:calc(100% + (var(--yarl__carousel_slides_count) - 1)*(100% + var(--yarl__carousel_spacing_px,0)*1px + var(--yarl__carousel_spacing_percent,0)*1%));flex:none;place-content:center;align-items:stretch;display:flex}.yarl__carousel_with_slides{-moz-column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%);column-gap:calc(var(--yarl__carousel_spacing_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_spacing_percent,0)*1%)}.yarl__flex_center{place-content:center;align-items:center;display:flex}.yarl__slide{padding:calc(var(--yarl__carousel_padding_px,0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent,0))*var(--yarl__carousel_padding_percent,0)*1%);flex:1;position:relative;overflow:hidden}[dir=rtl] .yarl__slide{--yarl__direction:-1}.yarl__slide_image{-o-object-fit:contain;object-fit:contain;touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;max-width:100%;max-height:100%}.yarl__slide_image_cover{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.yarl__slide_image_loading{opacity:0}@media screen and (width>=800px){.yarl__slide_wrapper:not(.yarl__slide_wrapper_interactive) .yarl__slide_image{-webkit-backface-visibility:hidden;-webkit-transform-style:preserve-3d;-webkit-transform:translateZ(0)}}.yarl__slide_placeholder{line-height:0;position:absolute;top:50%;left:50%;transform:translate(-50%)translateY(-50%)}.yarl__slide_loading{color:var(--yarl__slide_icon_loading_color,var(--yarl__color_button,#fffc));animation:1s linear yarl__delayed_fadein}.yarl__slide_loading line{animation:1s linear infinite yarl__stroke_opacity}.yarl__slide_loading line:first-of-type{animation-delay:-1.875s}.yarl__slide_loading line:nth-of-type(2){animation-delay:-1.75s}.yarl__slide_loading line:nth-of-type(3){animation-delay:-1.625s}.yarl__slide_loading line:nth-of-type(4){animation-delay:-1.5s}.yarl__slide_loading line:nth-of-type(5){animation-delay:-1.375s}.yarl__slide_loading line:nth-of-type(6){animation-delay:-1.25s}.yarl__slide_loading line:nth-of-type(7){animation-delay:-1.125s}.yarl__slide_loading line:nth-of-type(8){animation-delay:-1s}.yarl__slide_error{color:var(--yarl__slide_icon_error_color,red);height:var(--yarl__slide_icon_error_size,48px);width:var(--yarl__slide_icon_error_size,48px)}@media (prefers-reduced-motion){.yarl__portal,.yarl__slide{transition:unset}.yarl__slide_loading,.yarl__slide_loading line{animation:unset}}.yarl__toolbar{padding:var(--yarl__toolbar_padding,8px);justify-content:flex-end;display:flex;position:absolute;inset:0 0 auto auto}[dir=rtl] .yarl__toolbar{inset:0 auto auto 0}.yarl__icon{height:var(--yarl__icon_size,32px);width:var(--yarl__icon_size,32px)}.yarl__button{appearance:none;background-color:var(--yarl__button_background_color,transparent);border:var(--yarl__button_border,0);color:var(--yarl__color_button,#fffc);cursor:pointer;filter:var(--yarl__button_filter,drop-shadow(2px 2px 2px #000c));margin:var(--yarl__button_margin,0);padding:var(--yarl__button_padding,8px);-webkit-tap-highlight-color:transparent;outline:none;line-height:0}.yarl__button:focus{color:var(--yarl__color_button_active,#fff)}.yarl__button:focus:not(:focus-visible){color:var(--yarl__color_button,#fffc)}.yarl__button:focus-visible{color:var(--yarl__color_button_active,#fff)}@media (hover:hover){.yarl__button:focus-visible:hover,.yarl__button:focus:hover,.yarl__button:hover{color:var(--yarl__color_button_active,#fff)}}.yarl__button:disabled{color:var(--yarl__color_button_disabled,#fff6);cursor:default}.yarl__navigation_next,.yarl__navigation_prev{padding:var(--yarl__navigation_button_padding,24px 16px);position:absolute;top:50%;transform:translateY(-50%)}.yarl__navigation_prev{left:0}[dir=rtl] .yarl__navigation_prev{left:unset;right:0;transform:translateY(-50%)rotate(180deg)}.yarl__navigation_next{right:0}[dir=rtl] .yarl__navigation_next{left:0;right:unset;transform:translateY(-50%)rotate(180deg)}.yarl__no_scroll{overscroll-behavior:none;height:100%;overflow:hidden}@keyframes yarl__delayed_fadein{0%{opacity:0}80%{opacity:0}to{opacity:1}}@keyframes yarl__stroke_opacity{0%{stroke-opacity:1}to{stroke-opacity:.125}}.yarl__slide_captions_container{background:var(--yarl__slide_captions_container_background,#00000080);left:var(--yarl__slide_captions_container_left,0);padding:var(--yarl__slide_captions_container_padding,16px);right:var(--yarl__slide_captions_container_right,0);position:absolute;-webkit-transform:translateZ(0)}.yarl__slide_title{color:var(--yarl__slide_title_color,#fff);font-size:var(--yarl__slide_title_font_size,125%);font-weight:var(--yarl__slide_title_font_weight,bolder);max-width:calc(100% - var(--yarl__toolbar_width,0px));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.yarl__slide_title_container{top:var(--yarl__slide_title_container_top,0)}.yarl__slide_description{-webkit-hyphens:auto;hyphens:auto;color:var(--yarl__slide_description_color,#fff);-webkit-line-clamp:var(--yarl__slide_description_max_lines,3);text-align:var(--yarl__slide_description_text_align,start);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.yarl__slide_description_container{bottom:var(--yarl__slide_description_container_bottom,0)}.yarl__thumbnails{height:100%;display:flex}.yarl__thumbnails_bottom,.yarl__thumbnails_end .yarl__thumbnails_track,.yarl__thumbnails_start .yarl__thumbnails_track,.yarl__thumbnails_top{flex-direction:column}.yarl__thumbnails_wrapper{flex:1;position:relative}.yarl__thumbnails_container{background-color:var(--yarl__thumbnails_container_background_color,var(--yarl__color_backdrop,#000));padding:var(--yarl__thumbnails_container_padding,16px);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex:none;position:relative;overflow:hidden}.yarl__thumbnails_vignette{pointer-events:none;--yarl__thumbnails_vignette_size:12%;position:absolute}@media (width>=1200px){.yarl__thumbnails_vignette{--yarl__thumbnails_vignette_size:8%}}@media (width>=2000px){.yarl__thumbnails_vignette{--yarl__thumbnails_vignette_size:5%}}.yarl__thumbnails_bottom .yarl__thumbnails_vignette,.yarl__thumbnails_top .yarl__thumbnails_vignette{background:linear-gradient(to right,var(--yarl__color_backdrop,#000) 0,transparent var(--yarl__thumbnails_vignette_size,12%) calc(100% - var(--yarl__thumbnails_vignette_size,12%)),var(--yarl__color_backdrop,#000) 100%);height:100%;left:0;right:0}.yarl__thumbnails_end .yarl__thumbnails_vignette,.yarl__thumbnails_start .yarl__thumbnails_vignette{background:linear-gradient(to bottom,var(--yarl__color_backdrop,#000) 0,transparent var(--yarl__thumbnails_vignette_size,12%) calc(100% - var(--yarl__thumbnails_vignette_size,12%)),var(--yarl__color_backdrop,#000) 100%);width:100%;top:0;bottom:0}.yarl__thumbnails_track{gap:var(--yarl__thumbnails_thumbnail_gap,16px);outline:none}.yarl__thumbnails_thumbnail{appearance:none;background:var(--yarl__thumbnails_thumbnail_background,#000);border-color:var(--yarl__thumbnails_thumbnail_border_color,var(--yarl__color_button,#fffc));border-radius:var(--yarl__thumbnails_thumbnail_border_radius,4px);border-style:var(--yarl__thumbnails_thumbnail_border_style,solid);border-width:var(--yarl__thumbnails_thumbnail_border,1px);cursor:pointer;-webkit-tap-highlight-color:transparent;box-sizing:content-box;height:var(--yarl__thumbnails_thumbnail_height,80px);padding:var(--yarl__thumbnails_thumbnail_padding,4px);width:var(--yarl__thumbnails_thumbnail_width,120px);outline:none;flex:none;position:relative;overflow:hidden}.yarl__thumbnails_thumbnail_active{border-color:var(--yarl__thumbnails_thumbnail_active_border_color,var(--yarl__color_button_active,#fff))}.yarl__thumbnails_thumbnail_fadein{animation:yarl__thumbnails_thumbnail_fadein var(--yarl__thumbnails_thumbnail_fadein_duration,.5s) ease-in-out var(--yarl__thumbnails_thumbnail_fadein_delay,0s) forwards;opacity:0}.yarl__thumbnails_thumbnail_fadeout{animation:yarl__thumbnails_thumbnail_fadeout var(--yarl__thumbnails_thumbnail_fadeout_duration,.5s) ease-in-out var(--yarl__thumbnails_thumbnail_fadeout_delay,0s) forwards;cursor:unset}.yarl__thumbnails_thumbnail_placeholder{cursor:unset;visibility:hidden}.yarl__thumbnails_thumbnail:focus{box-shadow:var(--yarl__thumbnails_thumbnail_focus_box_shadow,#000 0 0 0 2px,var(--yarl__color_button,#fffc) 0 0 0 4px)}.yarl__thumbnails_thumbnail:focus:not(:focus-visible){box-shadow:unset}.yarl__thumbnails_thumbnail:focus-visible{box-shadow:var(--yarl__thumbnails_thumbnail_focus_box_shadow,#000 0 0 0 2px,var(--yarl__color_button,#fffc) 0 0 0 4px)}.yarl__thumbnails_thumbnail_icon{color:var(--yarl__thumbnails_thumbnail_icon_color,var(--yarl__color_button,#fffc));filter:var(--yarl__thumbnails_thumbnail_icon_filter,drop-shadow(2px 2px 2px #000c));height:var(--yarl__thumbnails_thumbnail_icon_size,32px);width:var(--yarl__thumbnails_thumbnail_icon_size,32px);position:absolute;top:50%;left:50%;transform:translate(-50%)translateY(-50%)}@keyframes yarl__thumbnails_thumbnail_fadein{0%{opacity:0}to{opacity:1}}@keyframes yarl__thumbnails_thumbnail_fadeout{0%{opacity:1}to{opacity:0}}.ga{padding-bottom:4rem}.ga-topbar{justify-content:space-between;align-items:center;gap:1rem;margin:1.5rem 0;display:flex}.ga-topbar h1{margin:0}.ga-panel{border:1px solid var(--color-border);background:#fff;border-radius:10px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 1px 3px #3d2b1f0f}.ga-panel h2{color:var(--color-primary);margin:0 0 1.1rem;font-size:1.15rem}.ga-btn{font:inherit;border:1px solid var(--color-border);color:var(--color-primary);cursor:pointer;white-space:nowrap;background:#fff;border-radius:7px;padding:.45rem 1rem;font-size:.9rem;transition:border-color .15s,background .15s}.ga-btn:hover{border-color:var(--color-accent);color:var(--color-accent)}.ga-btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.ga-btn--primary:hover{background:var(--color-accent-light);border-color:var(--color-accent-light);color:#fff}.ga-btn--primary:disabled{opacity:.5;cursor:default}.ga-btn--danger{color:#a33c2b}.ga-btn--danger:hover{color:#a33c2b;background:#fdf3f1;border-color:#a33c2b}.ga-btn-mini{font:inherit;border:1px solid var(--color-border);color:var(--color-text-muted);cursor:pointer;background:#fff;border-radius:5px;padding:.15rem .6rem;font-size:.75rem}.ga-btn-mini:hover{border-color:var(--color-accent);color:var(--color-accent)}.ga input[type=text],.ga input[type=password],.ga input[type=range],.ga input:not([type]),.ga textarea,.ga select{font:inherit;color:var(--color-text);border:1px solid var(--color-border);box-sizing:border-box;background:#fff;border-radius:7px;width:100%;padding:.45rem .65rem;font-size:.95rem}.ga input:focus,.ga textarea:focus,.ga select:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #b8733326}.ga input[type=range]{accent-color:var(--color-accent);border:none;padding:0}.ga input[type=checkbox]{accent-color:var(--color-accent);width:1rem;height:1rem}.ga-form-grid{grid-template-columns:1fr 1fr;gap:1rem 1.5rem;display:grid}.ga-form-grid label{color:var(--color-text-muted);flex-direction:column;gap:.35rem;font-size:.8rem;font-weight:600;display:flex}.ga-span2{grid-column:span 2}.ga-checks{flex-wrap:wrap;gap:.5rem 1.75rem;padding-top:.25rem;display:flex}.ga-checks label{color:var(--color-text);flex-direction:row;align-items:center;gap:.5rem;font-size:.92rem;font-weight:400}.ga-actions{align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.ga-error{color:#a33c2b}.ga-saved{color:#3e7d4e}.ga-muted{color:var(--color-text-muted);font-size:.85rem}.ga-login{border:1px solid var(--color-border);background:#fff;border-radius:10px;flex-direction:column;gap:1rem;max-width:340px;margin:4rem auto;padding:2rem;display:flex;box-shadow:0 1px 3px #3d2b1f0f}.ga-login h1{text-align:center;margin:0;font-size:1.4rem}.ga-create{gap:.6rem;margin-bottom:1.5rem;display:flex}.ga-create input{max-width:320px}.ga-gallery-list{border:1px solid var(--color-border);background:#fff;border-radius:10px;margin:0 0 2rem;padding:0;list-style:none;overflow:hidden}.ga-gallery-row{align-items:center;gap:1rem;padding:.85rem 1.25rem;display:flex}.ga-gallery-row+.ga-gallery-row{border-top:1px solid var(--color-nav-border)}.ga-gallery-row:hover{background:var(--color-bg)}.ga-gallery-open{font:inherit;cursor:pointer;color:var(--color-primary);text-align:left;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:.15rem;padding:0;display:flex}.ga-gallery-open strong{font-size:1.02rem}.ga-gallery-open:hover strong{color:var(--color-accent)}.ga-chips{gap:.4rem;display:flex}.ga-chip{letter-spacing:.02em;border:1px solid var(--color-border);color:var(--color-text-muted);background:var(--color-bg);border-radius:999px;padding:.12rem .65rem;font-size:.72rem;font-weight:600}.ga-chip--on{color:#3e7d4e;background:#f0f7f1;border-color:#3e7d4e}.ga-chip--warn{border-color:var(--color-accent);color:var(--color-accent);background:#faf3ec}.ga-album-list{margin:0;padding:0;list-style:none}.ga-album-list li{align-items:center;gap:.75rem;padding:.5rem 0;display:flex}.ga-album-list li+li{border-top:1px solid var(--color-nav-border)}.ga-album-list li>:first-child{flex:1}.ga-upload-opts{flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem;display:flex}.ga-upload-album{color:var(--color-text-muted);align-items:center;gap:.6rem;font-size:.85rem;font-weight:600;display:inline-flex}.ga-loc-select{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;display:flex}.ga-loc-select select,.ga-upload-album select{width:auto}.ga-dropzone{border:2px dashed var(--color-border);text-align:center;cursor:pointer;background:var(--color-bg);border-radius:10px;padding:2.5rem 1rem;transition:border-color .15s,background .15s}.ga-dropzone:hover,.ga-dropzone--over{border-color:var(--color-accent);background:#faf3ec}.ga-upload-queue{margin:1.1rem 0 0;padding:0;list-style:none}.ga-upload-item{grid-template-columns:1fr auto 140px;align-items:center;gap:.9rem;padding:.4rem 0;font-size:.85rem;display:grid}.ga-upload-item--error{color:#a33c2b}.ga-upload-item--done{color:#3e7d4e}.ga-upload-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ga-progress{background:var(--color-bg-light);border-radius:3px;height:6px;overflow:hidden}.ga-progress-bar{background:var(--color-accent);height:100%;transition:width .2s;display:block}.ga-progress-bar--indeterminate{width:40%;transition:none;animation:1.1s ease-in-out infinite ga-indeterminate}@keyframes ga-indeterminate{0%{margin-left:-40%}to{margin-left:100%}}.ga-upload-summary{color:var(--color-text-muted);align-items:center;gap:.6rem;margin-top:1.1rem;font-size:.85rem;display:flex}.ga-spinner{border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;flex-shrink:0;width:1rem;height:1rem;animation:.7s linear infinite ga-spin}@keyframes ga-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ga-progress-bar--indeterminate{opacity:.5;width:100%;animation:none}.ga-spinner{animation:none}}.ga-grid-head{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.25rem;display:flex}.ga-grid-head h2{margin:0}.ga-grid-head select{width:auto}.ga-photo-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));align-items:start;gap:1rem;display:grid}.ga-photo{border:1px solid var(--color-border);cursor:grab;background:#fff;border-radius:8px;position:relative;overflow:hidden}.ga-photo--dragging{opacity:.4}.ga-photo img{aspect-ratio:3/2;object-fit:cover;width:100%;display:block}.ga-photo-badge{color:#fff;background:#2a201abf;border-radius:4px;padding:.12rem .5rem;font-size:.68rem;position:absolute;top:.4rem;left:.4rem}.ga-photo-bar{justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .6rem;font-size:.8rem;display:flex}.ga-photo-title{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);overflow:hidden}.ga-photo-editor{border-top:1px solid var(--color-nav-border);background:var(--color-bg);flex-direction:column;gap:.55rem;padding:.7rem;display:flex}.ga-photo-editor .ga-actions{margin-top:.25rem}.ga-exif{margin:0;font-size:.75rem}.ga-wm{grid-template-columns:260px 1fr;align-items:start;gap:1.5rem;margin-top:1rem;display:grid}.ga-wm-preview{border:2px dashed var(--color-border);cursor:pointer;text-align:center;min-height:120px;color:var(--color-text-muted);background:conic-gradient(#6b5a5026 90deg,#0000 90deg 180deg,#6b5a5026 180deg 270deg,#0000 270deg) 0 0/20px 20px;border-radius:10px;justify-content:center;align-items:center;padding:.75rem;font-size:.85rem;display:flex}.ga-wm-preview:hover{border-color:var(--color-accent)}.ga-wm-preview img{max-width:100%;max-height:160px}@media (width<=700px){.ga-form-grid,.ga-wm{grid-template-columns:1fr}.ga-span2{grid-column:auto}.ga-create{flex-wrap:wrap}.ga-create input{max-width:none}.ga-upload-item{grid-template-columns:1fr auto}.ga-progress{display:none}}.gallery-title{margin:2rem 0 1.5rem}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}@media (width<=600px){.gallery-grid{grid-template-columns:1fr}}.gallery-card{cursor:pointer;border-radius:6px;transition:transform .15s;overflow:hidden}.gallery-card:hover{transform:scale(1.02)}.gallery-card__thumb{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.gallery-card__title{margin:.5rem 0 .25rem;font-size:1.1rem}.gallery-card__desc{color:#666;margin:0;font-size:.9rem}.project-overlay{z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#08080cf2;flex-direction:column;animation:.25s projectOverlayFadeIn;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes projectOverlayFadeIn{0%{opacity:0}to{opacity:1}}.project-overlay__header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#08080ce6;border-bottom:1px solid #c4a46926;flex-shrink:0;padding:1.5rem 2rem 1rem;position:relative}.project-overlay__close{z-index:1;color:#e8dcc8;cursor:pointer;background:#1a1c28;border:1px solid #c4a46966;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.4rem;line-height:1;transition:background .15s;display:flex;position:absolute;top:1.25rem;right:1.5rem}.project-overlay__close:hover{background:#2a2c38}.project-overlay__name{color:#e8dcc8;margin:0 0 .25rem;padding-right:3rem;font-family:Playfair Display,Georgia,serif;font-size:1.5rem}.project-overlay__desc{color:#a8a098;margin:0;font-size:.95rem;line-height:1.5}.project-overlay__body{scrollbar-width:none;-ms-overflow-style:none;flex:1;padding:1.25rem 2rem 2rem;overflow-y:auto}.project-overlay__body::-webkit-scrollbar{display:none}.project-overlay__grid{grid-template-columns:repeat(3,1fr);gap:10px;animation:.3s .1s both projectGridFadeIn;display:grid}@keyframes projectGridFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.project-overlay__thumb{aspect-ratio:4/3;cursor:pointer;border:1px solid #c4a46926;border-radius:6px;transition:border-color .15s,transform .15s;position:relative;overflow:hidden}.project-overlay__thumb:hover{border-color:#c4a46980;transform:scale(1.03)}.project-overlay__thumb img{object-fit:cover;width:100%;height:100%;display:block}.project-overlay__play-badge{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.project-overlay__play-icon{background:#0009;border:2px solid #fffc;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.project-overlay__play-icon:after{content:"";border:8px solid #0000;border-left:14px solid #ffffffe6;border-right-width:0;width:0;height:0;margin-left:3px;display:block}@media (width<=600px){.project-overlay__grid{grid-template-columns:repeat(2,1fr)}.project-overlay__header{padding:1rem 1.25rem .75rem}.project-overlay__body{padding:1rem 1.25rem 1.25rem}.project-overlay__name{font-size:1.25rem}.project-overlay__close{top:.85rem;right:1rem}}.page-hero{background:var(--color-bg-light);border-bottom:1px solid var(--color-border);padding:1.25rem 1.5rem}@media (width>=768px){.page-hero{padding:1.5rem}}.page-hero__title{color:var(--color-primary);margin-bottom:.4rem}.page-hero__subtitle{color:var(--color-text-muted);margin:0;font-size:1rem;line-height:1.7}.hero-tag{white-space:nowrap}.hero-tag--link{color:inherit;border-bottom:1px dashed var(--color-accent-light);border-radius:5px;margin:-.1rem -.3rem;padding:.1rem .3rem;text-decoration:none;transition:background .15s,color .15s,border-color .15s}.hero-tag--link:hover{background:var(--color-accent);color:#fff;border-bottom-color:#0000}.home-stays{padding:var(--spacing-md) 0 var(--spacing-xl)}.stays-box{border:1px solid var(--color-border);background:var(--color-bg-light);padding:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);gap:var(--spacing-md);border-radius:14px;flex-direction:column;display:flex}.stays-header{flex-direction:column;gap:.5rem;display:flex}.stays-subtitle{color:var(--color-text-muted);max-width:600px;font-size:.95rem;line-height:1.65}.stays-link{color:var(--color-accent);text-underline-offset:2px;text-decoration:underline}.guest-favorite{border:1px solid var(--color-border);background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:1.25rem;padding:1rem 1.5rem;display:flex}.gf-title{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.gf-laurel-img{width:auto;height:36px;display:block}.gf-title strong{color:var(--color-primary);text-align:center;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:700;line-height:1.3}.gf-sep{background:var(--color-border);flex-shrink:0;width:1px;height:2.5rem}.gf-desc{color:var(--color-text-muted);flex:1;min-width:140px;font-size:.88rem;line-height:1.5}.gf-stat{flex-direction:column;flex-shrink:0;align-items:center;gap:.1rem;display:flex}.gf-stat__num{color:var(--color-primary);font-family:Montserrat,sans-serif;font-size:1.1rem;font-weight:700;line-height:1}.gf-stat__stars{color:#222;letter-spacing:.05em;font-size:.65rem}.gf-stat__label{color:var(--color-text-muted);font-size:.78rem}@media (width<=600px){.gf-sep{display:none}.guest-favorite{justify-content:center;gap:1rem}}.stays-reviews__heading{text-transform:uppercase;letter-spacing:.09em;color:var(--color-text-muted);margin-bottom:var(--spacing-sm);font-family:Montserrat,sans-serif;font-size:.85rem;font-weight:700}.reviews-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (width<=640px){.reviews-grid{grid-template-columns:1fr}}.review-card{border:1px solid var(--color-border);background:#fff;border-radius:10px;flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.review-stars{color:#e8a838;letter-spacing:.05em;font-size:.95rem}.review-quote{color:var(--color-text);flex:1;font-size:.93rem;font-style:italic;line-height:1.6}.review-author{color:var(--color-text-muted);font-size:.83rem;font-weight:600}.link-cards{grid-template-columns:repeat(2,1fr);gap:1.25rem;display:grid}@media (width<=640px){.link-cards{grid-template-columns:1fr}}.link-card{border:1px solid var(--color-border);color:inherit;background:#fff;border-radius:10px;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s}.link-card:hover{border-color:var(--color-accent-light);transform:translateY(-2px);box-shadow:0 8px 24px #3d2b1f1a}.link-card--photo{flex-direction:column;display:flex;overflow:hidden}.link-card__photo{object-fit:cover;width:100%;height:220px;display:block}.link-card__body{flex-direction:column;gap:.35rem;padding:1rem 1.25rem 1.25rem;display:flex}.link-card__title{color:var(--color-primary);margin:0;font-family:Montserrat,sans-serif;font-size:1.05rem;font-weight:600}.link-card__cta{color:var(--color-accent);font-size:.88rem;font-weight:600}.spice-about{padding:var(--spacing-lg) 0 var(--spacing-md)}.spice-about p{color:var(--color-text-muted);max-width:720px;font-size:1rem;line-height:1.75}.spice-about strong{color:var(--color-primary);font-weight:600}.spice-gallery{padding:var(--spacing-md) 0 var(--spacing-lg)}.photo-grid{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}@media (width<=900px){.photo-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.photo-grid{grid-template-columns:1fr}}.photo-card{border:1px solid var(--color-border);background:#fff;border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.photo-card__img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.photo-card__caption{color:var(--color-text-muted);flex:1;padding:.75rem .9rem;font-size:.82rem;line-height:1.5}.spice-download{padding:0 0 var(--spacing-xl)}.download-box{border:1px solid var(--color-border);background:var(--color-bg-light);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.5rem;display:flex}.download-box__title{color:var(--color-primary);margin-bottom:.3rem;font-family:Montserrat,sans-serif;font-size:1rem;font-weight:700}.download-box__desc{color:var(--color-text-muted);font-size:.9rem;line-height:1.5}.download-btn{background:var(--color-accent);color:#fff;white-space:nowrap;border-radius:6px;flex-shrink:0;padding:.65rem 1.4rem;font-family:Montserrat,sans-serif;font-size:.88rem;font-weight:700;text-decoration:none;transition:background .15s;display:inline-block}.download-btn:hover{background:var(--color-accent-light)}:root{--color-bg:#faf7f2;--color-bg-light:#f0ebe3;--color-primary:#3d2b1f;--color-accent:#b87333;--color-accent-light:#d4924e;--color-text:#2a201a;--color-text-muted:#6b5a50;--color-border:#ddd0c4;--color-nav-bg:#fff;--color-nav-border:#ede6de;--color-nav-text:#2a201a;--color-nav-text-hover:#b87333;--color-nav-underline:#b87333;--color-footer-bg:#3d2b1f;--color-footer-text:#f5ede4;--spacing-xs:.5rem;--spacing-sm:1rem;--spacing-md:1.5rem;--spacing-lg:2rem;--spacing-xl:3rem}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:Arial,sans-serif;line-height:1.6}h1{margin-bottom:1rem;font-family:Montserrat,sans-serif;font-size:1.4rem;font-weight:700}@media (width>=768px){h1{font-size:2rem}}h2{margin-bottom:.75rem;font-family:Montserrat,sans-serif;font-size:1.1rem;font-weight:600}@media (width>=768px){h2{font-size:1.4rem}}.container{max-width:1120px;margin:0 auto;padding:0 1.5rem}.page-container{max-width:960px;margin:0 auto;padding:0 1.5rem}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1}
