/**
 * Swiper 9.3.0
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: May 8, 2023
 */

 @font-face{font-family:swiper-icons;src:url('data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper,swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide,swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translate3d(0,0,0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,:host(.swiper-horizontal.swiper-rtl) .swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,rgba(0,0,0,.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size,4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius,10px);position:relative;-ms-touch-action:none;background:var(--swiper-scrollbar-bg-color,rgba(0,0,0,.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset,1%);bottom:var(--swiper-scrollbar-bottom,4px);top:var(--swiper-scrollbar-top,auto);z-index:50;height:var(--swiper-scrollbar-size,4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left,auto);right:var(--swiper-scrollbar-right,4px);top:var(--swiper-scrollbar-sides-offset,1%);z-index:50;width:var(--swiper-scrollbar-size,4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset,1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color,rgba(0,0,0,.5));border-radius:var(--swiper-scrollbar-border-radius,10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move;touch-action:none}.swiper .swiper-notification,swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}



/* vars */

:root {
    --gap: 1rem;
    --biggap: 1.5rem;
    --max: 1920px;
    --sansserif: 'Lato', sans-serif;
    --serif: 'Lato', sans-serif;
    --cursive: 'Pacifico', cursive;
    --bodyfontsize:18px;
    --h1mult: 2.5;
    --h2mult: 1.5;
    --h3mult: 1.3;
    --h4mult: 1.2;
    --h5mult: 1.1;
    --h6mult: 1.0;
    --bg:#008285;
    --bghover:#c7e9e9;
    --bghover:#ebf7f7;
    --bgdark:#006062;
    --bglight:#EAF5F5;
    --accent:#25A8E0;
    --accentdark:#197CA3;
    --gray1:#222222;
    --gray2:#777777;
    --gray3:#C4C4C4;
    --gray4:#E2E2E2;
    --gray5:#FFFFFF;
    --gray6:#f0f0f0;
    --paleblue:#d6f1f1;
    --paleaqua:#b5dddd;
    --mt:#ED9750;
    --circlesize:25%;
    --readable:60rem;
    --bigreadable:80rem;
    --bucketwidth:30rem;
    --innerpadding:10rem;
    --shadow:drop-shadow(0 0 3px rgba(0,0,0,0.8));
    --dropshadow:drop-shadow(0px 5px 5px rgba(0, 0, 0, 0.2));
    --col:6rem; /* based on 12 col */
    --cardwidth:15.5rem;
    --mobilebreakpoint:1170px;
}
@media (max-width:800px) {
    :root {
        --h1mult:2.0;
    }
}
.uppercase {
    text-transform:uppercase !important;
}
.clearboth {
    clear:both;
}
.contain.read960 {
   /*  max-width:1000px;
    padding-left:1rem;
    padding-right:1rem; */
}

body.mobilepopular, body.mobilenav {
    overflow:hidden;
}

.mobileonly {
    display:none;
}
@media (max-width:1170px) {
    .mobileonly {
        display:block;
    }
    .dec_squiggle {
        display:none;
    }
    .ttd_image_and_title h2 {
        text-shadow:0 0 8px black;
    }
}

div#messages {
    display: flex;
    flex-direction: column;
    gap: var(--biggap);
}
.alert.notification {
    margin-left:auto;
    margin-right:auto;
    left:0;
    right:0;
    position:relative;
    background: #5a5;
    background:var(--accent);
    color:white;
    padding:var(--gap);
    width:100%;
}
.alert.notification p {
    width:var(--max);
    max-width:90vw;
    margin:0;
    margin-left:auto;
    margin-right:auto;
    left:0;
    right:0;
}
.events .notification.is-success p {
    font-size: 4rem;
    padding: 6rem;
}
.alert.notification.is-danger {
    background: #d55;
    color: white;
}
.alert.notification.is-warning {
    background: #c83;
    color: white;
}
button.close.delete {
    position:absolute;
    top:1rem;
    right:1rem;
    display:none;
}
section {
    clear:both;
}

.sticky {
    position:sticky;
    top:0;
    z-index:2;
}
.stickycontainer {
   /*  max-height:100vh;
    max-height:100dvh;
    overflow-y:scroll; */
    margin-bottom:var(--biggap);
}

.dev_banner {
    height: 3rem !important;
}
.dev_banner h1 {
    height: 1rem !important;
    font-size: 1rem !important;
    color: white !important;
}

body, html, main {
    scroll-behavior: smooth;
    color:var(--gray1);
}


.autoshadow {
    filter: drop-shadow(0 0 3px rgba(0,0,0,0.8));
    filter:var(--shadow);
}

/* color */

.is-primary {
    color:var(--bg);
}
.is-primary.invert {
    color:white;
    background-color:var(--bg);
}

/* typography */
html {
    overflow-x:hidden;
}
@media (max-width:1280px) {
    html {
        overflow-x:hidden;
    }
}

html {
    font-size:var(--bodyfontsize); /* base rem */
    font-family:var(--sansserif);
    color:var(--gray1);
    scrollbar-color:var(--paleblue); /* firefox only */
}
@media (max-width:1280px) {
    html {
        font-size: calc(var(--bodyfontsize) * 0.95);
    }
}
@media (max-width:800px) {
    html {
        font-size: 15px;
    }
    #hero_copy :is(h1), ,hero_copy :is(h1) {
        text-align: center;
        /* margin-top: 2em; */
    }
}
@media (max-width:500px) {
    html {
        font-size: 14px;
    }
}

.search h3 {
    padding-top:8rem;
    margin-top:-8rem;
}

body {
    margin:0;
    padding:0;
    min-height:100vh;
    mmin-height:100dvh;
    position:relative;
}

body::-webkit-scrollbar, .bucket_swiper_container::-webkit-scrollbar {
    width:var(--gap);
}
body::-webkit-scrollbar-track, .bucket_swiper_container::-webkit-scrollbar-track {
    background: var(--paleblue);        /* color of the tracking area */
}
body::-webkit-scrollbar-thumb, .bucket_swiper_container::-webkit-scrollbar-thumb {
    background-color: var(--bg);    /* color of the scroll thumb */
    border-radius: 0.5rem;       /* roundness of the scroll thumb */
    border: 3px solid var(--paleblue);  /* creates padding around scroll thumb */
}

nav {
    /* overflow:hidden; */
}

p {
    line-height:1.3;
}

fieldset {
    border-radius: calc(0.4rem);
    border: 1px solid var(--gray3);
    padding:var(--gap);
}
fieldset legend {
    border:1px solid var(--bg);
    background:var(--bg);
    color:white;
    padding:var(--gap);
}

.hideoverflow {
    overflow:hidden;
}

h1,h2,h3,h4,h5,h6 {
    font-family:var(--sansserif); /* most sans for SWM */
    margin:0.75em 0;
    line-height:1.2;
    text-wrap-style:pretty;
}

a {
    color:var(--bg);
    transition:color 0.2s ease;
}
a:hover {
    color:black;
}

h1, .is-1 {
    color:var(--bg);
    font-weight:bold;
    font-size:calc(1rem * var(--h1mult));
    font-family:var(--sansserif);
    text-transform: none;
    display:block;
        line-height: 1;
}
h2, .is-2, .description.misc h1 {
    color:var(--gray2);
    text-transform: uppercase;
    font-weight:bold;
    font-size:calc(1rem * var(--h2mult));
    font-family:var(--sansserif);
}
h3, .is-3 {
    font-size:calc(1rem * var(--h3mult));
    text-transform:uppercase;
}
h4, .is-4 {
    font-size:calc(1rem * var(--h4mult));
    color:var(--gray1);
    text-transform:capitalize;
}
h5, .is-5 {
    font-size:calc(1rem * var(--h5mult));
}
h6, .is-6 {
    font-size:calc(1rem * var(--h6mult));
    font-weight:bold;
    color:var(--gray1);
}

blockquote {
    background:var(--gray4);
    padding:var(--biggap);
}
cite {
    margin-left:var(--biggap);
}

p:first-of-type {
    margin-top:0;
}

/* forms */

.field {
    position:relative;
    margin-bottom:var(--biggap);
    margin-bottom:var(--gap);
    margin-top:var(--gap);
}

form label {
    font-size:1.25rem;
    font-size:1rem;
    font-weight:bold;
    display:block;
    /* margin:1em 0; */
    position: absolute;
    z-index: 1;
    font-size: 0.7rem;
    background: white;
    padding: 0.25em 0.5em;
    top: 0;
    transform: translate(1rem, -0.75em);
    font-weight: normal;
    color: var(--bg);
}

input, select, textarea, option {
    font-size:1.125rem;
    font-size:1rem !important;
    border-radius:calc(1.125rem);
    padding: 0.5em 1em;
    border:1px solid var(--bg);
    filter: var(--dropshadow);
    padding-left: 1rem;
}
#book_room_hero_wrap {
    input, select, textarea, option {
        filter:none;
    }
}
textarea:focus, input:focus {
    border-color:var(--bg);
    outline:none;
}
/* remove chrome autofill bg color */
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    -webkit-box-shadow: 0 0 0 3rem white inset !important;
}
a.btn, a.button {
    display: inline-block;
}
p.help {
    font-size: 0.8rem;
    opacity: 0.7;
    margin: 0.25em 0.5em;
    border-bottom: 2px solid #eee;
    padding-bottom: 0.5em;
    margin-bottom: 2em;
}
p.help.nosep {
    border-bottom: none;
    margin-bottom: -0.5em;
    margin-top: 2em;
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button) {
    text-decoration:none;
    z-index:1;
    position: relative;
    font-size:1rem;
    border-radius:calc(0.5625rem + 1em); /* half font size + half vertical padding */
    text-transform: none;
    color:var(--bg);
    border:1px solid var(--bg);
    background:white;
    padding:0.5em 1em;
    font-weight:bold;
    overflow:hidden;
    transition: all 150ms cubic-bezier(0.445, 0.050, 0.550, 0.950);
    align-self:center; /* prevent full width button inside flex column */
    box-shadow:0 5px 5px rgba(0,0,0,0.1);
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button, button.btn):hover {
    background:var(--bg);
}
/* :is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):before {
    position:absolute;  
    content:"";
    background-image: url(/templates/sm2025/images/sssurf.svg);
    background-repeat: repeat-x;
    background-size:contain;
    width:800%;
    height:105%;
    top:calc(0.5625rem + 1em); 
    left:0;
    z-index:-1;
    opacity:1;
    transition: all 1.5s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):after {
    content: "";
    position: absolute;
    background: var(--bg);
    bottom: 0;
    opacity:1;
    left: 0;
    right: 0;
    top:calc(1.5625rem + 1.5em);
    z-index: -2;
    height:100%;
    transition: all 1.5s cubic-bezier(0.230, 1.000, 0.320, 1.000);
} */
:is(input):is([type=submit], [type=button], [type=reset], a.btn, a.button):hover, :is(a.active.button) {
    background:var(--bg); /* input element workaround - no waves */
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):hover:before, :is(a.active.button) {
    top:calc(-1 * (1.3rem + 1em)); 
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):hover:after, :is(a.active.button) {
    top:0em;
    opacity:1;
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):hover, :is(a.active.button) {
    color:white;
    /* background:var(--bg); */
    cursor:pointer;
}
:is(button.transparent, a.btn.transparent) {
    border-color:white;
    color:white;
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button).teal {
    color:var(--bg);
    border-color:var(--bg);
    background:white;
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button).teal:hover {
    color:white;
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button).dark {
    color:white;
    border-color:var(--bg);
    background:var(--bg);
}
:is(button, [type=submit], [type=button], [type=reset], a.btn, a.button).dark:hover {
    color:white;
    background:var(--bghover);
}

.div5 * {
    text-align:center;
}

@media (pointer: coarse) { 
    .bellhoplarge {
        margin-left:2rem;
    }
    .circle_menu_circle_wrap button {
        display:none;
    }
    .circle_menu_circle_wrap:hover img {
        scale:1;
    }
    .circle_menu_circle_wrap:hover button {
        opacity:1;
    }
    :is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):before {
        position:absolute;  
        content:"";
        background-image: none;
        background-repeat: repeat-x;
        background-size:contain;
        width:0%;
        height:0%; /* fix flashing white line */
        top:0px; /* half font size + half vertical padding */;
        left:0;
        z-index:-1;
        opacity:0;
        transition: none;
    }
    :is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):after {
        content: "";
        position: absolute;
        background: var(--bg);
        bottom: 0;
        opacity:0;
        left: 0;
        right: 0;
        top:0px; /* half font size + half vertical padding */;
        z-index: -2;
        height:0%;
        transition: none;
    }
    :is(button, [type=submit], [type=button], [type=reset], a.btn, a.button):hover {
        color:var(--bg) !important; /* avoid white text on mobile */
    }
}

[type=checkbox]:checked, [type=radio]:checked, [type=range] {
    accent-color:var(--bg);
}

/* layout */

html {
    box-sizing: border-box;
}
*, *:before, *:after {
    box-sizing: inherit;
}
hr {
    clear:both;
}
.contain {
    clear:both;
    max-width:var(--max);
    padding-left:var(--biggap);
    padding-right:var(--biggap);
    margin-left:auto;
    margin-right:auto;
    left:0;
    right:0;
    width:100%; /* for smaller content, make sure we are always full width */
    position:relative; /* ensure above wave in stack */
}
.contain.morecontain {
    max-width:var(--bigreadable);
}

.contain.nopadding {
    padding-left:0px;
    padding-right:0px;
}

.maxwidth {
    display:block;
    width:100%;
}

.flex {
    display:flex;
}
.flex.biggap {
    gap:var(--biggap);
}
.flex.flexwrap {
    flex-wrap:wrap;
}

main {
    /* max-width:100vh; */
    /* overflow:hidden; */
    position:relative; /* ensure we are above wavepath bg in z-index stack */
}
.itineraries main {
   margin-bottom:var(--biggap);
}
:is(.itineraries, .towns) :is(#topnav, #mainnav) {
    z-index:2;
    position:relative;
}

.search h1{
    margin-bottom:0;
}
.search h2 {
    margin-top:0;
}

.sticky_cc_nav {
    z-index:3 !important; /* fix cc page */
}

.sticky_cc_nav {
    position: sticky;
    background: white;
    z-index: 90;
    top: 4rem;
    z-index: 30 !important; /* this was last in css passed over from dh - keeping for now */
}

/* * {
    outline:1px solid red;
} */

.home .hero img, .home .hero video {
    height:calc(85vh);
}
.hero img, .hero video {
    width:100%;
    height:calc(65vh);
    min-height:500px;
    object-fit:cover;
    clip-path: polygon(0% 74%, 11% 67%, 26% 63%, 38% 64%, 49% 70%, 60% 78%, 69% 90%, 78% 93%, 90% 92%, 97% 88%, 100% 85%, 100% 0%, 0% 0%); 
    /* clip-path: polygon(0% 74vmin, 11% 67vmin, 26% 63vmin, 38% 64vmin, 49% 70vmin, 60% 78vmin, 69% 90vmin, 78% 93vmin, 90% 92vmin, 97% 88vmin, 100% 85vmin, 100% 0vmin, 0% 0vh); */
    clip-path:url(#waveclip);
    /* clip-path:url(/templates/sm2025/images/wavelines-svg.png); */
    -webkit-mask-image: url(/templates/sm2025/images/waveclip_large.png); 
    -webkit-mask-size:scale;
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-position:left bottom; 
}
@media (max-width:800px) {
    /* .hero img, .hero video {
        -webkit-mask-image: url(/templates/sm2025/images/waveclip_mobile.png); 
        -webkit-mask-position: center 100%;
        object-position: 15% bottom;
        min-height:55vh;
        height:calc(55vh - 5rem);
    } */
}
@media (min-width:220000px) { 
    /* experimental full width - note px - won't ever happen :) ) */
    header.hero {
        padding-left:0px;
        padding-right:0px;
        max-width:100vw;
    }
    header.hero :is(img,video) {
        clip-path:none !important;
        -webkit-mask-image: none !important;
        height:65vh;
    }
    .bgwave {
        top: calc(65vh - 268px) !important; /* update vh to match header height - note: make change in js index.php too!!!*/
    }
    #hero_copy {
        margin-top:0 !important;
    }
}

#hero_copy, .hero_copy {
    padding-left:var(--innerpadding);
    padding-right:var(--innerpadding);
    margin-bottom:3rem;
    margin-top:4rem;
    text-align:center;
    display:flex;
    flex-direction:column;
    justify-content: center;
    align-items:center;
}

.home #hero_copy, .home .hero_copy {
   /*  margin-top:2rem; */
}

#hero_copy h1, .hero_copy h1 {
    line-height:0.9;
    display:block;
}
#hero_copy :is(h1,p), .hero_copy :is(h1,p) {
    margin-left: 0;
    max-width:var(--readable);
}
#hero_copy :is(h1), .hero_copy :is(h1) {
    max-width: 44rem;
}
#hero_copy :is(.is-2) {
    filter: drop-shadow(0 0 2px white); /* ensure visibility against any h1 ligatures above */
    line-height: 1;
    display: inline-block;
    padding-top: 1em;
}
.readable {
    max-width:var(--readable);
    margin-left:auto;
    margin-right:auto;
}
.heromarkup p {
    max-width:var(--readable);
}
body:not(.home) .heromarkup {
    /* max-width:var(--readable); */
    max-width: 50rem;
}
div#mapwrap {
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
    text-align: right;
    position:relative;
}
img#countycounties {
    position: absolute;
    top: 0;
    left: 0;
    width: 36%;
    height: auto;
}
img#countylocationmobile {
    display:none;
}
@media (max-width:800px) {
    #mapwrap {
        padding:var(--biggap);
        padding-bottom:0px;
        margin-bottom:0px !important;
    }
    img#countycounties {
        position:relative;
        width:100%;
    }
    img#countylocation {
        display:none;
    }
    img#countylocationmobile {
        display:block;
        margin-top:-30%;
    }
}
@media (max-width:930px) {
    #hero_copy, .hero_copy {
        padding-left:var(--biggap);
        padding-right:var(--biggap);
    }
}

:is(.creative, .dispensary) .teaser {
    height:20rem;
    min-height:20rem !important;
}
:is(.creative, .dispensary) .teaser img {
    height:auto;
    min-height:auto;
}

.teaser {
    position:relative;
    display:flex;
    align-items: center;
    margin-top:var(--col);
    margin-bottom:var(--col);
}
.teaser img {
    width:100%;
    max-width:100%;
    object-fit:cover;
}
.teaser_btn_wrap {
    margin-top:2rem;
}
.teaser_content {
    max-width:var(--readable);
    padding:1rem;
}
.teaser_btn_wrap a  {
    text-decoration:none;
}

.teaser, .teaser img {

}
.meetings .teaser, .meetings .teaser {
    height:40rem;
    min-height:45vh;
    margin-top:5rem;
}
aside.teaser_content {
    position: relative;
}

.home .teaser {
    /* margin-top:(-5vmin); */
}

@media screen and (max-width: 1300px) {
    .teaser {
        flex-direction:column;
    }
}

.teaser .contain {
    min-width:30rem;
}
@media screen and (max-width: 1300px) {
    .teaser .contain {
        min-width:auto;
    }
}

a.home_link, a#home_link {
    top: 0;
    left: 0;
}
a.home_link img, a#home_link img {
    height: 3em;
    margin-top: 0.5em;
    margin-left: var(--biggap);
}
#mobile_home_link, .mobile_home_link {
    display:block;
    text-align:center;
    margin-bottom:var(--biggap);
}
#mobile_home_link img, .mobile_home_link img {
    height:5rem;
}
button#mobile_nav_toggle_inner {
    border: none;
    box-shadow: none;
    position: absolute;
    right: 1em;
    background:none;
}

#topnav {
    background:var(--bgdark);
    color:white;
    height:3rem;
    font-size:0.9rem;
}
#topnav ul {
    height:3em;
    gap:2em;
}
img.mainnav_logo {
    transform: scale(1.4);
}
#mainnav, #mobiletopnav {
    background:white;
    color:black;
    height:4em;
    font-size:1.0rem;
    /* font-weight:bold; */
    position: sticky;
    position:fixed;
    width:100%;
    top: 0px;
    top:3em;
    z-index: 41;
} 
#mainnav .contain, #mobiletopnav .contain {
    display:flex;
    justify-content: space-between;
    align-items:center;
}
#topnav {
    position:relative;
    top:0px;
    width:100%;
    z-index:41;
}
#mainnav {
    position:sticky;
    top:0rem;
}
#mainnav nav > ul {
    height:4em;
    gap:1em;
    padding-left:0px;
}
nav ul {
    margin:0;
    list-style:none;
}
:is(#topnav,#mainnav) ul {
    display:flex;
    justify-content: end;
    align-items: center;
    position:relative;
}
:is(#topnav,#mainnav) a {
    text-decoration:none;
    text-transform:none;
}
#topnav a {
    color:white;
}
#mainnav a {
    color:black;
}


#topnav_wrap {
    justify-content: end;
    gap:var(--biggap);
    align-items: center;
}
#search {
    padding-left:2.5rem;
}
#topnav #search {
    font-size:1rem;
    padding:0;
    border:none;
    padding:0.25em 0.5em;
    border-radius: 1.5em;
    width: 2em;
    background: rgba(255,255,255,0.5);
    transition:all 0.3s ease;
    color:rgba(0,0,0,0);
}
#mobile_search_form {
    position:relative;
}
img#desktopsearch_icon, img#mobilesearch_icon {
    width: 1.2rem;
    position: absolute;
    left: 1rem;
    top: 0.50rem;
    z-index:1;
    pointer-events:none;
}
img#mobilesearch_icon {
    width: 1.5em;
    left: 1rem;
    top: 0.60em;
}
input:focus ~ img#desktopsearch_icon, input:hover ~ img#desktopsearch_icon {
    filter: invert(0);
    opacity:0.3;
}
#topnav #search:focus, #topnav #search:hover {
    width:33em;
    background:white;
    color:rgba(0,0,0,1);
}

.share_icons {
    display:inline-flex;
    gap:1rem;
}
.share_icons img {
    width:2rem;
    height:2rem;
    object-fit:contain;
    object-position:center;
    display:inline-block;
}
.share_icons a:hover {
    opacity:0.5;
}

#sticky_search {
    background:white;
    padding:var(--biggap);
    display: flex;
    justify-content: center;
    top: 4rem; /* push under sticky topnav */
}

main.page_view_21 #member_filter {
    /* pull member filter up on main tag result pages */
    padding-top:0px;
    margin-top:0px;
}

#mobiletopnav {
    display:none;
    
}
@media (max-width:1170px) {
    #mainnav, #topnav {
        display:none;
    }
    #mobiletopnav {
        display:flex;
        position:sticky;
        position:fixed;
        width:100%;
        top:0px;
    }
}

#mainnav ul li {
    height:4em;
    display:flex;
    align-items: center;
    background:white;
    transition:all 0.3s ease;
    padding:1em;
    /* overflow:hidden; */
    position:relative;
}
#mainnav ul li:hover {
    /* background:rgba(255,255,255,0.5); */
    background-color:var(--bghover);
}
#mainnav ul li a {
    height:4em;
    display:flex;
    align-items: center;
    scale:1;
}
#mainnav nav > ul > li.current, #mainnav nav > ul > li:has(li.current) {
    /* apply squiggle to only top level main nav li */
    /* that is either current or has a current child */
    /* background-image:url(/templates/sm2025/images/header_squiggle.svg);
    background-repeat:no-repeat;
    background-size:6rem auto;
    background-position:center 2.3em; */
    >a {
        color:var(--bg);
    }
}

#meeting_nav li.current {
    background-size:4rem auto;
    background-position:center 2.2em;
}
#mainnav ul li.current a {
    transition:all 0.3s ease;
}
#mainnav ul li.current a {
    /* scale:1.1; */
}
#mainnav ul li a:hover {
    /* scale:1; */
}
#mainnav nav > ul > li ul {
    position:absolute;
    top:100%;
    right:0;
    opacity:0;
    pointer-events:none;
    z-index:3; /* force in front of hero */
    flex-direction:column;
}
#mainnav nav > ul > li:hover ul {
    opacity:1;
    pointer-events:all;
}
#mainnav nav > ul > li ul {
    width:100%; /* dropdown match parent width */
    padding:0;
    box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1);
    border-radius: 0 0 0.5rem 0.5rem;
    overflow: hidden;
}
#mainnav nav > ul > li ul li {
    width:100%;
    justify-content: center; /* center dropdown links */
    font-size:75%;
    text-align:center;
    border-bottom: 1px solid rgba(255,255,255,0.2);
}
#mainnav nav > ul > li ul li a {
    /* text-align:right; */
}
#mainnav li.things-to-do > ul {
    /* width:12em; */
    width:100%;
}
a#home_link_desktop {
    width: 13rem;
}

#desktopsearch_wrap {
    overflow: visible;
    display: flex;
    justify-content: end;
    position:relative;
}

#meeting_nav {
    background:var(--accent);
}
#menu_meetings-menu ul {
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    justify-content: end;
}
#menu_meetings-menu ul a {
    color:white;
    text-decoration:none;
    padding:1em 1rem;
    display:block;
    font-size: 1rem;
    /* font-weight: bold; */
    text-transform:uppercase;
    transition:all 0.3s ease;
}
#menu_meetings-menu ul a:hover {
    background:var(--accentdark);
}

#topnav, #meeting_nav, #mainnav {
    letter-spacing: 0.05em !important;
}

:is(.meetings,.group-dining,.spaces,.team-building) #mainnav {
    position:relative !important;
    height:4rem;
    z-index:4; /* keep above meeting nav */
}
:is(.meetings,.group-dining,.spaces,.team-building) #meeting_nav {
    position:sticky;
    top:0px;
    z-index:3;
    height:4rem;
}
:is(.meetings,.group-dining,.spaces,.team-building) #mainnav a#home_link img {
    height: 1.5em;
}
:is(.meetings,.group-dining,.spaces,.team-building) #mainnav nav > ul {
    height:3rem;
}
:is(.meetings,.group-dining,.spaces,.team-building) #mainnav nav > ul > li {
    height:3rem;
    font-size:1rem !important;
}

@media (max-width:1100px) {
    body:is(.meetings,.group-dining,.spaces,.team-building) #meeting_nav {
        top:4rem;
        height:auto;
    }
    body:is(.meetings,.group-dining,.spaces,.team-building) #meeting_nav nav > ul > li {
        width: 46%;
        height:auto !important;
    }
    #meeting_nav nav > ul {
        height: auto !important;
        flex-wrap:wrap;
        padding-top: 1em;
        padding-bottom: 1em;
        gap:1em;
    }
    body:is(.meetings,.group-dining,.spaces,.team-building) #meeting_nav nav > ul {
        height: auto !important;
        flex-wrap:wrap;
        padding-top: 1em;
        padding-bottom: 1em;
        gap:1em;
    }
    #menu_meetings-menu ul a {
        font-size:1rem !important;
        text-align:center;
        display:block;
        padding:0 !important;
        height:auto !important;
    }
    #mainnav nav > ul > li.current, #mainnav nav > ul > li:has(li.current), #meeting_nav li.current {
        background-image:none;
        background-color:var(--accent);
    }
}

:is(.meetings,.group-dining,.spaces,.team-building) #meeting_nav nav > ul {
    height:4rem;
}
:is(.meetings,.group-dining,.spaces,.team-building) #meeting_nav nav > ul > li {
    height:4rem;
}
:is(.meetings,.group-dining,.spaces,.team-building) #meeting_nav nav > ul > li a {
    height:4rem;
    font-size:1.2rem;
}


.circle_menu_wrap {
    z-index: 2;
    padding-left: var(--biggap);
    padding-right: var(--biggap);
    
}


#menu_top-nav li {
    /* border-right: 1px solid rgba(255,255,255,0.3); */
    padding-right: 1rem;
}

.weather_top {
    display:flex;
    gap:0.2rem;
    align-items: center;
}
img.weather_icon {
    max-width: 2rem;
}
.weather_icon_wrap {
    display: flex;
    align-items: center;
}

.circle_menu_swiper {
    display:flex;
    gap:2em;
    /* keep above any content after such as teaser that this needs to 'overlap' */
    z-index: 2;
    position: relative;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    flex-wrap:wrap;
    justify-content: center;
}
.circle_menu_swiper > * {
    width:22%;
}
.circle_menu_swiper.three {
    /* align left on mobile to let scroll work */
    justify-content:left; 
}
@media screen and (min-width:800px) {
    .circle_menu_swiper.three {
        /* only have three circles - looks weird aligned left */
        justify-content:center; 
    } 
}
@media screen and (max-width:1600px) and (hover: none) {
    /* swiper on touch only - no weird scrollbars */
    .circle_menu_swiper {
        
        justify-content: start;
    }
}
.circle_menu_swiper > * {
    max-width:70vw;
    flex-grow:0;
    flex-shrink:1;
    width:22%;
    width: calc(25% - 1.5rem);
    scroll-snap-align: center;
    display: flex;
    justify-content: center;
    max-width: 15rem;
}
.circle {
    width:100%;
    display:block;
    /* overflow:hidden; */
    position: relative;
    background:transparent;
    display:flex;
    flex-direction:column;
    justify-content: end;
    filter: var(--dropshadow);
}
.cirlce.link {
    margin-right:0 !important;
}
.circle.link {
    transition:all 0.3s ease;
}
.circle.link:hover {
    transform:scale(1.05);
}
.circle img {
    max-width:100%;
    object-fit:cover;
    aspect-ratio: 1/1.1;
    height:auto;
    display:block;
    scale:1.0;
    transition:scale 0.3s ease;
    border-radius:2rem 2rem 0 0 ;
    /* remove color changes - per DC 11/25/24 */
    /* filter:brightness(1) contrast(0.8) saturate(0.8); */
    /* -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,4) 47%, rgba(0,0,0,0.6558998599439776) 70%, rgba(0,0,0,0.22172619047619047) 100%); */
}

.circle_menu_circle_wrap a {
    text-decoration:none;
}

.circle_content {
    display:flex;
    flex-direction:row;
    text-align: center;
    color: var(--bg);
    background-color:white;
    z-index: 1;
    border-radius:0 0 2rem 2rem;
    justify-content: space-between;
    align-items: center;
    padding-left:var(--gap);
    padding-right:var(--gap);
}
.circle_content .is-1 {
    font-size:clamp(1em, 1.3vw, 1.6em);
    font-weight:normal;
    color:var(--bg);
    line-height:1;
    padding:0.5em 0.5em;
}
.circle_menu_circle_wrap {
    position:relative;
}
img.chevron {
    display: inline;
    width: 2rem;
    height: 2rem;
    width:clamp(1em, 1.5vw, 2.0em);
    height:clamp(1em, 1.5vw, 2.0em);
}
@media (max-width:1024px) {
    .circle_menu_circle_wrap  {
        width: calc(50% - 1rem);
    }
    .circle_menu_swiper {
        gap:1rem;
        h5, .is-1 {
            font-size:1rem;
        }
        .circle_content {
            padding-left:0.5rem;
            padding-right:0.5rem;
        }
    }
}
@media (max-width:500px) {
    .circle_menu_circle_wrap  {
        /* width: 100%;
        max-width:100%; */
    }
}


.swipernav, .swiper-pagination {
    position:relative;
    list-style:none;
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
    display:flex;
    gap:var(--biggap);
    justify-content: center;
}
.swipernav li a, .swiper-pagination-bullet {
    text-indent: -9999px;
    display: inline-block;
    width: 2.5rem;
    border-bottom: 8px solid #aaa;
    border-radius: 17rem;
    height: 4px;
}
.swiper-pagination-bullet {
    height:auto;
    background:none;
}

.bucket_grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: var(--biggap);
    grid-row-gap: var(--biggap);
    aspect-ratio: 2.4/1;
}
.bucket_grid * {
    overflow:hidden;
}
img.bucket_squiggle {
    width: 6rem !important;
    display:inline-block !important;
    object-fit: none !important;
}
img {
    max-width:100%;
    height:auto;
}

#threebucket {
    display:flex;
    gap:var(--biggap);
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
}
#threebucket a {
    text-decoration: none;
}
.threebucket_bucket {
    text-align:center;
    border-radius:2rem;
    width:33%;
    aspect-ratio:1/1.1;
    padding:var(--biggap);
    background-size:cover;
    display:flex;
    flex-direction:column;
    gap:var(--biggap);
    align-items: center;
    justify-content: space-around;
}
#mt_bucket {
    background-image:url(/templates/sm2025/images/mt_bg.webp);
    background-blend-mode: soft-light;
    background-color: #202020;
    color:var(--mt);
}
#newmember_bucket, p .is-2 {
    color:var(--bg);
}
span.is-2.med {
    font-size: 2.1vw;
    line-height: 1;
    display:inline-block;
}
span.is-2.big {
    font-size: 5vw;
    line-height: 1;
}
p.nm_bucket  {
    margin-bottom:0;
}
#newmember_bucket p, #cc_bucket p, #mt_bucket p, #trails_bucket p {
    font-weight:bold;
    font-size:1.2rem;
    text-transform:uppercase;
}
#newmember_bucket {
    box-shadow:0 0 5px rgba(0,0,0,0.5);
    background:white;
    background-position: center 18%;
    background-size: 500%;
    background-image: url(/templates/sm2025/images/wavelines.svg);
}
#trails_bucket {
    background-image: url(/templates/sm2025/images/homepagecards/Trails-desktop.svg);
    background-size:cover;
}
#cc_bucket {
    background-color:var(--accentdark);
    color:white;
    background-image:url(/templates/sm2025/images/ccbg.png);
    background-size:cover;
}
p.trails_bucket {
    text-transform:uppercase;
    color:white;
}
.threebucket_bucket img {
    padding:1rem;
    align-self: center;
    max-height:15rem;
    object-fit:contain;
}
@media (max-width:930px) {
    .trails_bucket.main {
        margin:0;
    }
    #threebucket {
        flex-direction:column;
    }
    #trails_bucket {
        background:#006062;
    }
    #trails_bucket img {
        width:50%;
        max-width:250px;
        padding:0px;
    }
    #trails_bucket p {
        font-weight: bold;
        font-size: 1.2rem;
        text-transform: uppercase;
    }
    .threebucket_bucket {
        flex-direction:row;
        width:100%;
        aspect-ratio:auto;
        padding:0.5rem;
    }
    .threebucket_bucket p:not(.main) {
        display:none;
    }
    .threebucket_bucket img {
        max-height:15rem;
        padding:1rem;
        max-width:50%;
    }
}
@media (max-width:540px) {
    .threebucket_bucket p {
        width:66%;
    }
    .threebucket_bucket p:first-of-type, .threebucket_bucket img {
        width:33%;
    }
    .threebucket_bucket a {
        font-size:2.3vw;
        font-size:clamp(12px, 2.3vw, 1.0rem);
    }
}

#new_member_teaser {
    background-image:url('/templates/sm2025/images/homepagecards/Desktop_Become a Member.jpg');
    background-size:cover;
    background-position:right center;
    margin-bottom: var(--biggap);
}
#new_member_teaser .wrap {
    padding:2rem;
}
#new_member_teaser .wrap > * {
    max-width:50%;
}
#new_member_teaser h2 {
    margin-top:0;
    color:var(--bg);
}
@media (max-width:1600px) {
    #new_member_teaser {
        background-image:url('/templates/sm2025/images/homepagecards/Tablet_Become a Member.jpg');
    }
}
@media (max-width:900px) {
    #new_member_teaser {
        background-image:url('/templates/sm2025/images/homepagecards/Mobile_Become a Member.jpg');
        background-size:cover;
        background-position:center top;
        margin-bottom:var(--biggap);
    }
    #new_member_teaser .wrap {
        padding:1rem 0rem;
        padding-top:25vh;
    }
    #new_member_teaser .wrap > * {
        max-width:100%;
    }
    #new_member_teaser h2 {
        margin-top:0;
        color:var(--bg);
    }
}

.bucket_grid > div { background-size:cover; overflow:hidden; display:flex; background-color:black;}
.bucket_grid > div > * { width:100%; height:100%; display:block; } /* ostensibly anchor immediately wrapping grid element */
.bucket_grid .div1 { grid-area: 1 / 1 / 2 / 4;  }
.bucket_grid .div2 { grid-area: 1 / 4 / 2 / 6;  }
.bucket_grid .div3 { grid-area: 1 / 6 / 3 / 8;  }
.bucket_grid .div4 { grid-area: 2 / 1 / 3 / 3;  }
.bucket_grid .div5 { grid-area: 2 / 3/ 3 / 6; padding:2.5rem; background:var(--bg); overflow: hidden;
    padding-top: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    justify-content: center;
    align-items: center; }
.bucket_grid * { color:white; text-decoration:none; }
.bucket_grid img { object-fit:cover; display:block; width:100%; height:100%;  } 
.bucket_grid .bucket_content {
    position:absolute;
    bottom:2rem;
    left:2rem;
    overflow:hidden;
}
/* 2.25h2, 4.5h1 */
.bucket_intro_heading .is-1 {
    display:inline !important;
}
.bucket_grid .bucket_intro_heading h2 {
    font-size:clamp(20px, 2.2vw, 2.5rem);
    margin:0px;
    margin-bottom:0.6em;
    overflow:visible; /* make sure ligatures are not cut off */
}
.bucket_intro_heading {
    height: auto !important; /* wah wah */
    overflow: visible;
}
.bucket_grid .bucket_intro_heading h2 .is-1 {
    font-size:clamp(24px, 3vw, 4.5rem);
}
.bucket_menu_bucket_wrap {
    position:relative;
}
.bucket_menu_bucket_wrap h5 {
    margin-bottom:0;
}
.bucket_grid .bucket_menu_bucket_wrap p {
    margin:0;
    padding:0;
    overflow:hidden;
    opacity:0;
    max-height:0px;
    transition:all 0.9s ease;
}
.bucket_grid .bucket_menu_bucket_wrap:hover p {
    max-height:4rem;
    opacity:1;
}
.bucket_grid .bucket_menu_bucket_wrap img {
    scale:1; 
    transition:scale 0.4s ease;
}
.bucket_grid .bucket_menu_bucket_wrap:hover img {
    scale:1.02;
}
.bucket_grid :is(.div1,.div4,div) aside {
    right:2rem;
    left:auto;
    left: 2rem;
}
.bucket_grid :is(.div1,.div4) :is(h5,p,div) {
    text-align:right;
}

.bucket_grid .div2 :is(h5,p,div) {
    text-align:center;
}
.bucket_grid .div2 aside {
    width:calc(100% - 4rem);
}

.bucket_menu_wrap {
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
}

.bucket_menu_wrap img {
    -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,4) 47%, rgba(0,0,0,0.6558998599439776) 70%, rgba(0,0,0,0.22172619047619047) 100%);
}
.bucket_intro p {
    font-size:0.9rem;
}

#bucket_swiper.contain {
    padding-left:0px;
    padding-right:0px;
}

@media only screen and (min-width:1269px) {
    .bucket_swiper_container, .swipernav {
        display: none !important;
    }
    .bucket_intro_wrap {
        display:none;
    }
}
@media only screen and (max-width: 1270px) {
    .miniteaser h5 {
        padding-left:0px !important;
        max-width:100% !important;
    }
    .bucket_grid {
        display:none;
    }
    .bucket_swiper_container {
        display:block; /* no grid on mobile */
    }
    .bucket_menu_swiper {
        display: flex;
        width: 100%;
        width: 9999px; /* force black bg */
    }
    .bucket_content.autoshadow {
        filter:none;
    }
    .bucket a {
        text-decoration: none;
    }
    .bucket.link {
        position:relative;
    }
    .bucket.link aside {
        position:absolute;
        width:100%;
        padding:var(--biggap);
        bottom:0;
        left:0;
    }
    .bucket.link aside :is(h5,p) {
        color:white;
        text-align:center;
        filter:var(--shadow);
        max-width: 80%;
        padding-left: 2rem;
    }
    .bucket.link aside p {
        display:none; /* hide desc on mobile ? */
    }
    .bucket_menu_swiper {
        background: #000; /* for gradient clip on mobile */
    }
    .bucket_swiper_container {
        scrollbar-width: none;
    }
    .bucket_swiper_container::-webkit-scrollbar {
        display:none;
    }
    .bucket_intro_wrap {
        background:var(--bg);
        padding:var(--biggap);
    }
    .bucket_intro_wrap * {
        color:white;
        text-align:center;
    }
    .bucket_squiggle_wrap {
        display:none !important;
    }
}

#bucket_swiper_nav {
    display:flex;
    margin-top:var(--biggap);
    gap:var(--gap);
    justify-content: center;
}
#bucket_swiper .swiper-slide {
    min-width:300px;
    width:95vw;
    max-width:600px;
}
.bucket_menu_swiper-wrapper {
    /* width:100%; */
}

.bucket_swiper_container {
    /* comment out for now - redo with real swiper.js */
    /* overflow-x:scroll;
    width:100%;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth; */
}
.bucket_menu_swiper {
    
    display: flex;
}
.bucket_swiper_container .bucket {
    width:var(--bucketwidth);
    scroll-snap-align: center;
    overflow:hidden;
}
.bucket_swiper_container .bucket img {
    width:100%;
    aspect-ratio: 1/1;
    object-fit: cover;
    height: 100%;
    display:block
}

main {
    display:block;
}

#mce-EMAIL {
    color:#222 !important;
}
div#mc_embed_signup_scroll {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: center;
}
#signup, #apps {
    padding:var(--biggap);
}
:is(#signup, #apps) * {
    color:white;
}
:is(#signup, #apps) .is-1 {
    font-size:3rem;
    margin-top:0;
}
#signup {
    background:var(--bgdark);
}
#apps {
    background:var(--accentdark);
}
#ctas {
    margin-bottom:var(--biggap);
    gap:var(--biggap);
    > * {
        width:33%;
        text-align:center;
    }
}

form#subscibe_form {
    display: flex;
    gap: var(--biggap);
}
@media (max-width:1300px) {
    #ctas {
        display:flex;
        flex-direction:column;
        align-items: center;
        gap:var(--biggap);
        width:100%;
        margin-bottom:var(--biggap);
        > * {
            max-width:30em;
            width:100%;
        }
    }
}

#ctas .is-4 {
    font-weight:200;
}

@media only screen and (max-width:899px) {
    #ctas {
        display:flex; /* stack ctas */
        /* margin-bottom:0 !important; */
        > * {
            width:100%;
        }
    }
    #signup {
        padding-left:var(--biggap);
    }
}

#signup {
    /* background-image:url(/templates/sm2025/images/homepagecards/Newsletter-background.jpg); */
}
#guidebucket {
    padding:var(--biggap);
    color:white;
    text-decoration:none;
    /* background-image:url(/templates/sm2025/images/homepagecards/VisitorsGuide-background.jpg); */
}
#guidebucket * {
    color:white;
    text-decoration:none;
}
#ctas button {
    color:var(--bg);
}
#ctas button:hover {
    /* color:white; */
    background:var(--bghover);
}
#apps {
    /* background-image:url(/templates/sm2025/images/homepagecards/App-background.jpg); */
}
#apps h2 {
    margin-bottom:0px;
}
#signup, #guidebucket, #apps {
    background-position:center;
    background-size:cover;
    background-color:var(--bg);
    display:flex;
    justify-content:center;
    align-items:center;
    flex-direction:column;
}

.swipernav {
    display:flex;
    gap:var(--biggap);
    justify-content: center;
    align-items: center;
}
.swipernav a {
    transition:all 0.3s ease;
    border-color:var(--gray4);
}
.swipernav a.active {
    border-color:var(--gray2);
}

.events #hero_copy {
    margin-bottom:var(--bigap);
}

#event_cards {
    display:flex;
    gap:var(--biggap);
    flex-shrink:1;
    flex-grow:0;
    flex-wrap:wrap;
    justify-content:start;
    margin-bottom:var(--biggap);
    max-width: 70rem;
    width:100%;
    margin-bottom:var(--biggap);
    /* max-height: 79vh;
    overflow-y: auto; */
}
@media screen and (max-width: 1170px) {
    #event_cards {
        justify-content:center;
    }
}
    
.event_card_wrap {
    background-color:var(--gray6);
    overflow:hidden;
    width:var(--cardwidth);
    border-radius:var(--gap);
    text-decoration:none;
    transition:all 0.3s ease;
    display: flex;
    flex-direction: column;
    height:auto !important;
}
.swiper .event_card_wrap {
    /* swiper handles it's own slide width based on slides per view etc */
    max-width:var(--cardwidth);
    width:auto;
}
.event_card_wrap .event_thumb  {
    aspect-ratio:1/1;
    display:block;
    object-fit: cover;
    object-position: center;
}
.event_card_info_wrap {
    padding:var(--gap);
    display: flex;
    flex-direction: column;
    flex-grow:1;
    flex-wrap:wrap;
}
.event_card_location_wrap {
    display:flex;
    justify-content: start;
    gap:var(--gap);
    align-items: center;
}
.event_card_location_wrap img {
    width:1.5rem;
    height:1.5rem;
    display:block;
}
.event_card_info_wrap .event_card_location_wrap p {
    font-size:0.8rem;
    color:var(--gray2);
    margin:0;
}
.event_card_info_wrap h4 {
    text-transform: uppercase;
    color:var(--gray1);
    /* limit lines in event card */
    max-lines:4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    display: -webkit-box;
}
.event_card_info_wrap p {
    color:var(--bg);
    font-size:1rem;
    margin:0;
}

#event_cards:hover .event_card_wrap {
    opacity:0.8;
    filter:saturate(0.5);
}
#event_cards:hover .event_card_wrap:hover {
    opacity:1;
    filter:saturate(1);
}


#event_card_and_filter {
    display:flex;
    gap:var(--biggap);
    margin-bottom:var(--biggap);
    margin-top:var(--biggap);
}

#event_filter_form .control {
    margin-bottom:0;
}

.filter_trigger {
    text-align: center;
}

#event_filter {
    background:var(--paleaqua);
    padding:var(--gap);
    width:22rem;
}
.event_card_image_and_date {
    position:relative;
}
.card_event_big_date {
    color:white;
    position:absolute;
    bottom:0;
    left:0;
    padding:var(--gap);
    background:var(--bg);
    display:flex;
    flex-direction: column;
    align-items: center;
}
.bigdate_month {
    font-weight:bold;
    text-transform: uppercase;
    margin-bottom:-3rem;
}
.bigdate_day {
    font-family: var(--cursive);
    font-size:3.5rem;
    margin-bottom:-1rem;
    font-weight:400;
}
.event_card_time_and_date {
    margin-top: auto;
    /* font-weight: bold; */
}

#event_cards.list {
    flex-direction: column;
    flex-grow: 1;
    max-height:inherit;
}
#event_cards.list .event_card_wrap {
    flex-direction:row;
    width:auto;
    max-width:100%;
}
#event_cards.list .event_card_image_and_date {
    display:flex;
    max-width:15rem;
}
#event_cards.list .event_thumb {
    max-width: 100%;
    height: auto;
    aspect-ratio: 5/1;
}
#event_cards.list .event_card_location_wrap p br {
    display:inline;
    content: ',';
    padding: 0;
}
#event_cards.list .event_card_location_wrap p br::before {
    content:',';
}
#event_cards.list .event_card_time_and_date p br {
    display:inline;
    content: ',';
    padding: 0;
}
#event_cards.list .event_card_time_and_date p br::before {
    content: ' | ';
}

@media (max-width:1170px) {
    #event_cards.list .event_card_image_and_date {
        display:none;
    }
    span.card_date_text {
        font-weight: bold;
    }
}

#reset_event_wrap, #submit_event_wrap {
    margin-top:2rem;
}
button#dismiss_filter {
    border: none;
    background:white;
    display:none;
}
@media (max-width:1170px) {
    #event_card_and_filter {
        display:flex;
        flex-direction:column;
        gap:var(--biggap);
        margin-bottom:var(--biggap);
    }
    #event_filter {
        width:100%;
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height:100vh;
        height: 100dvh;
        z-index: 99999;
        display:none;
    }
    form#event_filter_form {
        display:flex;
        gap:2rem;
        flex-direction:column;
    }
    form#event_filter_form {
        padding: var(--gap);
    }
    form#event_filter_form h3 {
        font-size: 0.8rem;
    }
    #event_filter_form input {
        max-width:100%;
    }
    body.eventfilter #event_filter {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    body.eventfilter #reset_event_wrap {
        display:none;
    }
    button#dismiss_filter {
        border: none;
        background:white;
        display:block;
    }
}

.toggles {
    display:flex;
    justify-content: center;
    margin-bottom:var(--gap);
    gap: var(--biggap);
}


.toggle_and_label, .radionav_wrap {
    display:flex;
    gap:var(--gap);
    align-items: center;
    justify-content: center;
}
:is(.toggle_and_label,.radionavs_container) h3 {
    text-transform: uppercase;
}

.toggle {
    display:inline-flex;
    position:relative;
    margin:0;
}
.toggle:after {
    content:'';
    width:100%;
    height:100%;
    z-index:-2;
    background: #eee;
    border-radius:2rem;
    position:absolute;
    top:0;
    left:0;
}
img.toggle_icon {
    margin-right: var(--gap);
    
}
.toggle label {
    color:var(--bg);
}
.toggle label:hover {
    cursor:pointer;
}
.toggle .btn, .radionav {
    transition: background 600ms ease, color 600ms ease;
    padding:0.5rem 1rem;
}
.toggle label, .radionav {
    position:relative;
    margin:0;
    text-transform: uppercase;
}
input[type=radio].toggle {
    display: none;
}
input[type=radio].toggle + label {
    cursor: pointer;
}
input[type=radio].toggle + label:hover {
    color: var(--bg);
    border-radius: 2rem;
}
input[type=radio].toggle + label:after {
    background: var(--bg);
    content: "";
    height: 100%;
    position: absolute;
    top: 0;
    transition: left 200ms cubic-bezier(0.77, 0, 0.175, 1);
    width: 100%;
    z-index: -1;
    border-radius: 2rem;
}
input[type=radio].toggle.toggle-left + label {
    border-right: 0;
}
input[type=radio].toggle.toggle-left + label:after {
    left: 100%;
    border-radius: 2rem;
}
input[type=radio].toggle.toggle-right + label {
/* margin-left: -5px; */
}
input[type=radio].toggle.toggle-right + label:after {
    left: -100%;
}
input[type=radio].toggle:checked + label {
    cursor: default;
    color: #fff;
    transition: color 200ms;
}
input[type=radio].toggle:checked + label:after {
    left: 0;
}
input[type=radio].toggle:checked + label img {
    filter: saturate(0) brightness(3);
}

img.inputicon {
    height: 1rem;
    width: 1rem;
    object-fit: contain;
    position:absolute;
    top:0.5rem;
}
.control.iconright img {
    right:1rem;
}
.control {
    position:relative;
    margin-bottom:var(--biggap);
}
div > .control:last-of-type {
    margin-bottom:0;
}

::placeholder { 
    opacity: 0.5;
}

#eventsearchinput {
    width:100%;
    padding: 0.5rem 1.25rem;
    border-radius:1rem;
    font-size:1rem;
    border:none;
}
form#event_filter_form {
    padding: var(--biggap);
}
form#event_filter_form select {
    width:100%;
}

.tidylist {
    display:flex;
    flex-direction:column;
    gap:var(--gap);
    margin:var(--gap);
    list-style:none;
    padding-bottom:var(--biggap);
}

#related_events, #related_content, .related_content, #member_filter {
    scroll-padding-top:8rem;
    scroll-margin-top:8rem;
}

.hidden_schema {
    display:none;
}
img.rendered_img.eventimage, .thumbnail, .memberpage_logo {
    width:350px;
    height:auto;
    max-width:100%;
}

.taglist {
    list-style:none;
    margin-top:var(--gap);
    margin-bottom:var(--gap);
    display:flex;
    gap:var(--gap);
    flex-wrap:wrap;
    justify-content: end;
}
.taglist .tag_icon {
    width:3.3rem;
    height:3.3rem;
    object-fit:contain;
}

.row {
    display:flex;
    gap:var(--biggap);
    flex-wrap:nowrap;
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
}
.col4 {
    width:calc(33% - 1rem);
    flex-shrink:0;
}
@media screen and (max-width:600px) {
    .row {
        flex-wrap:wrap;
    }
    .col4 {
        width:100%;
    }
}

.event_swiper {
    margin:var(--biggap);
    list-style:none;
    /* basic - use swiper.js later */
    display:flex;
    gap:var(--biggap);
    flex-wrap:wrap;
}
@media (max-width:900px) {
    .event_swiper {
        margin-left:0;
        padding-left:0;
        justify-content: center;
    }
}
@media (max-width:400px) {
    .event_swiper {
        margin-left:0;
        padding-left:0;
        justify-content: center;
        width: 100%;
    }
}

.member_row.row  {
    gap:calc(2 * var(--biggap));
}
.member_left {
    width: 350px;
    flex-shrink: 0;
    max-width:350px;
}

@media (max-width:800px) {
    .member_row {
        flex-direction:column;
    }
    .member_left {
        width:100%;
    }
}

#upcoming_events {
    width:100%;
    height:auto;
    margin-bottom:var(--biggap);
}
#upcoming_events .swiper-slide {
    height:auto !important; /* swiper js wtf */
    /* min-height:30em;
    max-height:20em; */
}



.testslide {
    width:30rem !important;
    height:30rem !important;
    display:flex;
    justify-content: center;
    align-items: center;
    background:green;
    color:red;
}
.swiper-wrapper {
    height:auto !important; /* wtf swiper.js */
}
#test_swiper {
    height:auto !important;
}

#related_content, .related_content {
    padding-left:var(--gap);
    padding-right:var(--gap);
    margin-bottom:var(--biggap);
}

#related_events {
    margin-bottom:var(--biggap);
}

a.external::after {
    content: '';
    /* background-size: contain;
    background-position: center;
    background-image: url(/templates/sm2025/images/external.svg);
    background-repeat: no-repeat;
    display: inline-block;
    width: 1.0rem;
    height: 0.4rem;
    padding-left: var(--gap);
    padding-left: var(--gap);
    filter: invert(1) opacity(0.3);
    transform: translateY(-0.5em) translateX(-0.2em); */
}

.experiences_browser_wrap img {
    aspect-ratio:16/9;
    object-fit:cover;
    object-position:center;
    display:relative;
}

#share_member {
    margin-top:calc(3 * var(--biggap));
    text-align:center;
    margin-bottom:calc(2 * var(--biggap));
}

section.things_to_do_wrap {
    margin-top:var(--biggap);
    margin-bottom:calc(var(--biggap) * 2);
}
.ttd_image_and_title {
    position:relative;
    background:black;
}
img.ttd_banner {
    min-height:300px;
    display:block;
    object-fit: cover;
    aspect-ratio: 3.142/1.4;
    -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,4) 47%, rgba(0,0,0,0.6558998599439776) 70%, rgba(0,0,0,0.22172619047619047) 100%);
}
h2.is-2.reverse {
    color:white;
}
.ttd_image_and_title h2 {
    margin:0;
    position: absolute;
    bottom: var(--biggap);
    right: var(--biggap);
    display: flex;
    flex-direction: column;
    gap:1rem;
    align-items: end;
    text-align: right;
}
.ttd_image_and_title h2 img {
    flex-shrink:1;
    width:6rem;
}
.ttd_content_wrap {
    display:flex;
    justify-content: space-between;
    gap:var(--biggap);
    width:100%;
}
.ttdwords {
    max-width:var(--readable);
}
.ttdwords h3 {
    margin-top:2em;
}
.ttdtags {
    flex-grow:1;
    display:flex;
    flex-wrap:wrap;
    align-self: start;
    justify-content: end;
    max-width:50%;
    min-width:24rem;
    list-style:none;
    margin:0;
    /* margin-top:var(--gap); */
}
@media screen and (max-width:1170px) {
    .ttdtags {
        
        min-width:100%;
        width:100%;
    }
}
    
.ttd_tag_wrap a {
    width:7rem;
    padding:1rem;
    text-align:center;
    display:flex;
    flex-direction:column;
    gap:0.5rem;
    justify-content: center;
    align-items: center;
}
.ttd_tag_wrap img {
    display:block;
    aspect-ratio:1/1;
    object-fit: contain;
    width:4rem;
    height:4rem;
}
.ttdtags a {
    list-style:none;
    text-decoration: none;
}
.ttdtags li {
    transition:all 0.3s ease;
}
.ttdtags li:hover {
    background:#D3F0F0;
}
.ttd_tag_wrap p {
    margin:0;
    font-weight:bold;
    font-size:0.9rem;
}
@media (max-width:1170px) {
    .ttd_content_wrap {
        display:flex;
        flex-direction:column;
    }
    .ttdtags {
        width:100%;
        padding:0;
        max-width:100%;
        flex-wrap:wrap;
        justify-content: center;
    }
}

footer {
    background-color:#222;
    background-image:url('/templates/sm2025/images/footer_bg.webp');
    background-size:cover;
    background-position: 46% bottom;
}
footer::after {
    content:'';
    width:100%;
    height:100%;
    background:linear-gradient(180deg, rgba(0,0,0,4) 47%, rgba(0,0,0,0.6558998599439776) 70%, rgba(0,0,0,0.22172619047619047) 100%);
}
footer .footer_wrap {
    display:flex;
    gap:var(--biggap);
    justify-content: space-between;
    align-items: flex-start;
    padding-top:5rem;
    padding-bottom:5rem;
}
footer .footer_logo {
    max-width:350px;
}
@media (max-width:900px) {
    footer .footer_wrap {
        flex-direction:column;
    }
    .footer_wrap.contain.nopadding {
        filter: drop-shadow(0px 0px 13px rgba(0,0,0,0.5));
    }
    footer #footer_left * {
        text-align:center;
    }
    footer #footer_left {
        padding-left:var(--biggap);
    }
}
.footer_wrap > * {
    width:100%;
    display: flex;
    flex-direction: column;
    color: white;
    padding:var(--biggap);
    justify-content: flex-start;
}
#footer_left {
    padding-left:calc(2 * var(--biggap));
}
#footer_left a {
    color:white;
}
#footer_left img {
    max-width:350px;
    margin-bottom:var(--biggap);
}
#copyright {
    text-align:center;
    font-size:0.75rem;
    color:white;
    text-align:center;
    padding-bottom:4rem;
}
#copyright p {
    text-align:center;
    width:100%;
}
#copyright a {
    color:white;
    font-weight:bold;
}

nav#footermenu ul {
    margin:0;
    padding:0;
}
nav#footermenu ul {
    display: grid;
    gap: 1rem;
    padding:2rem;
    grid-template-columns: repeat(3, 1fr); 
}
@media (min-width: 900px) {
    nav#footermenu ul { 
        max-width:30rem;
        padding:3rem;
        padding-top:0px;
        grid-template-columns: repeat(2, 1fr); 
    }
    .footer_wrap > * {
        width: 50%;
    }
}
@media (min-width: 1120px) {
    nav#footermenu ul { 
        grid-template-columns: repeat(3, 1fr); 
    }

}
nav#footermenu ul a {
    color:white;
    text-decoration:none;
    text-transform:uppercase;
    min-width:16em;
    font-size:0.8rem;
    font-weight:bold;
}
nav#footermenu ul a:hover {
    text-decoration:underline;
}

iframe {
    border:none;
}
.youtube_embed_wrap {
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
}

ul.content_list {
    list-style:none;
    margin:0;
    display:flex;
    flex-wrap:wrap;
    padding:0;
    gap:var(--gap);
}
ul.content_list li {
    width:48%;
}
@media screen and (max-width:800px) {
    ul.content_list li {
        width:100%;
    }
}

ul.content_list a {
    display:flex;
    padding:var(--gap);
    text-decoration:none;
    color:var(--gray1);
    gap:var(--biggap);
    width:100%;
    justify-content: space-between;
    align-items: center;
    background-color: var(--gray6);
}
ul.content_list li .content_list_left {
    font-weight:normal;
    max-width: 50%;
}
ul.content_list li .content_list_right {
    display:flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: space-between;
    align-items: end;
    max-width: 50%; /* prevent giant tags */
}
.content_list_type {
    color:var(--gray2);
    font-size:0.75rem;
}
.content_list_date {
    color:var(--bg);
    text-align: right;
}
#related_content.double, #related_events.double {
    display:flex;
    gap:var(--biggap);
    justify-content: center;
}
#related_content.double > div, #related_events.double > div  {
    width:50%;
    max-width:50rem;
    flex-shrink:1;
    flex-grow:1;
}
#related_content.double ul li {
    width:100%;
}
@media (max-width:1170px) {
    #related_content.double {
        flex-direction:column;
    }
    #related_content.double > div {
        width:100%;
        max-width:100%;
    }
}

.radionavs {
    padding: 0;
    border-radius: 1rem; /* changed from 2rem to make wrapped navlist look ok */
    background:var(--gray6);
    list-style:none;
    margin:0;
    display:flex;
}
.radionavs.inline {
    display:inline-flex;
    flex-wrap:wrap; 
    justify-content: center;
}
.radionav {
    border-radius: 2rem;
    color:var(--bg);
    font-weight:bold;
    border:none !important;
}
.radionav.active {
    background:var(--bg);
    color:white;
}
.radionavs button:hover {
    cursor:pointer;
}
#blogfilterform {
    margin:0;
}
.radionavs a {
    display:block; /* prevent excess inline element 'padding' affecting ul container */
}

.blog main ul li {
    padding-bottom:var(--gap);
}

p.note {
    opacity:0.5; font-size:0.75rem;
}

.blog_teasers.list {
    flex-direction: column;
}
.blog_teasers.list li.teaser_circle_wrap {
    max-width:100%;
    border-radius:0;
    aspect-ratio:auto;
}
.blog_teasers.list .blog_teaser_circle_contents {
    flex-direction:row;
    gap:var(--biggap);
}
.blog_teasers.list .blog_teaser_circle_contents .circle_teaser_image {
    aspect-ratio:1/1;
    width:10rem;
    height:10rem;
}
.blog_teasers.list :is(p.limitlines,.blog_squiggle_wrap) {
    display:none;
}
.blog_teasers.list h2 {
    font-size: calc(1rem * var(--h4mult)); /* is-4 */
    text-align:left;
    margin-right: auto;
    width: 100%;
}
.blog_teasers.list .blog_teaser_date {
    padding:0;
    margin:0;
    padding-right:var(--biggap);
    text-align:right;
    display:none;
}
.blog_teaser_date {
    font-size: clamp(0.8rem, 1.5vw, 1.2rem);
}

.blogtags .taglist {
    justify-content:start;
}



.blog_teaser_circle_contents {
    display:flex;
    flex-direction: column;
    justify-content: space-between;
    align-items:center;
    height:100%;
    gap: 0.25rem;
}
.circle_teaser_image {
    width:100%;
    aspect-ratio:2/1;
    display:block;
    object-fit: cover;
    object-position: center top;
}
.blog_squiggle_wrap {
    display:none;
}
p.limitlines, .blog_teaser_date {
    font-size:1rem !important;
    text-align:center;
}
.teaser_circle_wrap h2.is-2 {
    font-size: calc(0.7rem* var(--h2mult));
}
.limitlines {
    -webkit-box-orient: vertical;
    overflow: hidden;
    display: -webkit-box;
}
.limitlines3 {
    max-lines: 3;
    -webkit-line-clamp: 3;
}
.blog_teasers {
    display:flex;
    gap:var(--biggap);
    justify-content: space-between;
    flex-wrap:wrap;
    max-width:var(--readable);
    margin-left:auto;
    margin-right:auto;
}
.teaser_circle_wrap {
    max-width:48%;
    position:relative;
    border-radius:2rem;
    overflow:hidden;
    aspect-ratio:1/1;
    box-shadow:0 5px 10px rgba(0,0,0,0.2);
    background:white;
    display:block;
}
.blog_teasers {
    padding-left:0;
}
.blog_teasers_list {
    padding-left:0;
}
@media (max-width:930px) {
    .blog_teasers {
        align-items: center;
        justify-content: center;
    }
    .teaser_circle_wrap {
        width:100%;
        max-width:35rem;
        aspect-ratio:unset;
    }
    .blog_teaser_circle_contents {
        gap:0.55rem;
    }
    .blog_teasers.list img {
        width:4rem !important;
        height:4rem !important;
    }
    .blog_teasers.list h2 {
        font-size:1.1rem !important;
        margin:0 0;
    }
    .blog_teasers.list .blog_teaser_date {
        padding-right:0;
        font-size:0.6rem !important;
    }
    .blog_teasers.list li {
        padding:1rem;
    }
    .blog_teasers .limitlines3.limitlines {
        -webkit-line-clamp: 5;
    }
}
.teaser_circle_wrap:hover {
    background:var(--bg);
    color:white;
}
.teaser_circle_wrap:hover :is(a,h2,p) {
    color:white;
}
.teaser_circle_wrap .blog_squiggle_wrap img {
    transform:scale(100%); 
    transition:all 0.3s ease;
}
.teaser_circle_wrap:hover .blog_squiggle_wrap img {
    /* filter:saturate(0) brightness(5); */
    transform:scale(150%);
}

.teaser_circle_wrap a {
    color:var(--gray1); 
    text-decoration:none;
}
.teaser_circle_wrap h2 {
    color:var(--gray1); 
    margin-left:1em;
    margin-right:1em;
    text-align:center;
}
.teaser_circle_wrap p {
    padding-left:3em;
    padding-right:3em;
    padding-top:0;
    padding-bottom:0;
    margin:0;
}

p.blog_teaser_date {
    margin-top: auto;
    color:var(--gray3);
    padding-bottom:0.5em;
}
p.blog_squiggle_wrap {
    padding-top: 1.5rem;
}

.blog .blog_contain img:not(.pull-right,.pull-left) {
    /* force blog images to specific size */
    /* can't do yet */
    /* display:block;
    aspect-ratio:2/1;
    object-fit: cover; */
}

.pagination {
    display:flex;
    flex-wrap: wrap;
    margin-left:auto;
    margin-right:auto;
    justify-content: center ;
    gap:var(--biggap);
    margin: var(--biggap);
    margin-top:calc(2* var(--biggap));
}
.pagination a {
    text-decoration:none;
    color:var(--gray3);
}
.pagination_link {
    font-weight:bold;
    color:var(--gray3);
}
.pagination_link.current {
    color:var(--bg);
}
.pagination a:is(.prev,.next) {
    color:var(--bg);
}
.pagination :is(.prev,.next) {
    padding-left:var(--gap);
    padding-right:var(--gap);
}

.miniteaser_contain {
    width:50%;
}
@media (max-width:800px) {
    .miniteaser_contain {
        width:100%;
        margin-bottom:var(--biggap);
    }
}
.miniteaser_bucket_wrap {
    background:black;
}
a.miniteaser {
    position:relative;
}
.miniteaser aside.bucket_content {
    position:absolute;
    bottom:0;
    padding:var(--biggap);
}
.miniteaser .bucket_content * {
    color:white;
}
.miniteaser .bucket_desc {
    max-height:0rem;
    opacity:0;
    overflow:hidden;
    transition:all 0.3s ease;
    margin:0;
}
.miniteaser h5 {
    margin:0;
}
.miniteaser:hover .bucket_desc {
    padding-top:1rem;
    max-height:3rem;
    opacity:1;
}
.miniteaser img {
    width:100%;
    display:block;
    object-fit: cover;
    aspect-ratio: 3.142/1;
    -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,4) 47%, rgba(0,0,0,0.6558998599439776) 70%, rgba(0,0,0,0.22172619047619047) 100%);
}
.miniteaser_solo {
    width:100%;
}
.miniteaser_solo  img {
    aspect-ratio: 5.4/1;
}
.flex.miniteasers {
    gap:var(--biggap);
    margin-bottom:var(--biggap);
}
@media screen and (max-width: 1170px) {
    .miniteaser_solo {

        margin:var(--biggap) 0;
    }
}
    


.miniteaser_contain.contain.nopadding.widget_24 {
    /* food restaurants */
    width: 50%;
    float: left;
    padding-right:var(--gap);
    clear:none;
}
.miniteaser_contain.contain.nopadding.widget_27 {
    /* food truck */
    width: 50%;
    float: right;
    padding-left:var(--gap);
    clear:none;
}
aside {
    clear:both; 
}
.food-and-drink .circle_menu_wrap {
    padding-top:var(--biggap);
}
@media (max-width:700px) {
    .miniteaser_contain.contain.nopadding.widget_24 {
        /* food restaurants */
        width: 100%;
        float: none;
        padding-right:0px;
        clear:none;
    }
    .miniteaser_contain.contain.nopadding.widget_27 {
        /* food truck */
        width: 100%;
        float: none;
        padding-left:0px;
        clear:none;
    }
}
@media (max-width:800px) {
    .flex.miniteasers {
        flex-direction: column;
        /* gap:var(--biggap); */
        gap:0px;
        margin-bottom:0px;
    }
    .miniteaser_image {
        aspect-ratio: 3.142/1.2 !important;
    }
}

.group_collection_wrap .flex {
    margin:calc(2 * var(--biggap)) 0;
    gap:calc(2 * var(--biggap));
    align-items: center;
}
.groupimage {
    width:100%;
}

.group_collection_member_list {
    list-style:none;
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
    padding:0;
    display:flex;
    gap:var(--biggap);
    flex-wrap:wrap;
    justify-content: center;
}
.group_collection_member_link {
    max-width:9rem;
    display:block;
    text-decoration:none;
    font-weight:bold;
    display:flex;
    flex-direction: column;
    gap:var(--gap);
    height: 100%;
    justify-content: space-between;
    text-align:center;
}
.group_collection_member_link img {
    max-width:80%;
    object-fit: contain;
    margin-left:auto;
    margin-right:auto;
    margin-top: auto;
}
.group_collection_member_link p {
    margin-top:auto;
    margin:0;
}
.group_collection_image_and_text {
    position:relative;
    background:black;
    width: 100%;
    max-width:25rem;
    flex-shrink:0;
}
.group_collection_image_and_text h2 {
    position:absolute;
    color: white;
    bottom: var(--gap);
    right: var(--gap);
    margin: 0;
    background-image:url(/templates/sm2025/images/header_squiggle.svg);
    background-repeat:no-repeat;
    background-size:6rem auto;
    background-position: right 1em;
    padding-top: 3rem;
    line-height: 1;
    padding-left: var(--biggap);
}
.group_collection_image_and_text img {
    -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,4) 7%, rgba(0,0,0,0.6558998599439776) 70%, rgba(0,0,0,0.22172619047619047) 100%);
}

#mobile_nav_toggle span {
    pointer-events: none;
}

@media screen and (max-width: 920px) {
    .group_collection_image_and_text {
        max-width:100%;
    }
    .group_collection_wrap .flex {
        flex-direction: column;
        gap:var(--gap);
    }
    .group_collection_wrap .flex .groupimage {
        aspect-ratio: 3.142/1.2;
        object-fit:cover;
    }
    .group_collection_image_and_text h2 {
        background-image: none;
    }
}
#related_members h3 {
    text-align:center;
}

.footersocials {
    text-align:center;
    max-width: 30rem;
}
@media (max-width:800px) {
    .footersocials {
        max-width:100%;
    }
}
.footersocials img {
    width: 2rem;
    filter: grayscale(1) brightness(2.3);
    margin: 0px 0.6rem;
}

#maps_browser {
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
}



#towns_browser {
    margin-bottom:var(--biggap);
}
.towns_browser_wrap, .maps_browser_wrap {
    list-style:none;
    display:flex;
    flex-direction:column;
    gap:var(--biggap);
    margin-bottom:calc(2*var(--biggap));
}
.towns_browser_wrap li, .maps_browser_wrap li {
    display:flex;
    gap:calc(2 * var(--biggap));
    justify-content: space-between;
    align-items: center;
}
.towns_browser_wrap li .btn, .maps_browser_wrap li .btn {
    min-width: 12em; /* switch to em for consistency */
    text-align: center;
}
.town_browser_circle, .map_browser_circle {
    display:block;
    width:15rem;
    height:15rem;
    border-radius:100%;
    object-fit:cover;
}
#town_copy, #maps_copy {
    margin-top:var(--biggap);
}
.resource_list {
    margin:var(--biggap) 0;
    padding:0;
    list-style:none;
    display:flex;
    gap:var(--biggap);
    flex-wrap:wrap;
}

@media (max-width:1170px) {
    .towns_browser_wrap li, .maps_browser_wrap li {
        position:relative;
    }
    .towns_browser_wrap li .btn, .maps_browser_wrap li .btn {
        position: absolute;
        bottom: 0;
        right: 0;
    }
}
@media (max-width:700px) {
    .towns_browser_wrap li .btn, .maps_browser_wrap li .btn {
        transform:translateY(0rem);
        position:relative;
    }
    .maps_browser_wrap li, .towns_browser_wrap li {
        flex-direction:column;
        gap:1rem;
    }
    .towns_browser_wrap, .maps_browser_wrap {
        gap:6rem;
    }
}

.map_sep {
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
}

.blog_markup li {
    /* clear:both; */
}
.blogheader_img {
    width:100%;
    /* aspect-ratio:3/1; */
    height:66vh;
    display:block;
    margin-left:auto;
    margin-right:auto;
    object-fit:cover;
}
.blogheader_title_wrap {
    background: var(--bg);
    position: absolute;
    width:100%;
    left:0;
    top: 0;
    left: -10rem;
    border-radius: 0 0 50% 50%;
    width: calc(100% + 20rem);
}
.blogheader.contain.nopadding {
    overflow:hidden;
}

.bloghead_title {
    left:0;
    right:0;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100vw;
    max-width: 100%;
    flex-direction: column;
}
.bloghead_title :is(h1,h2) {
   max-width:90%;
}
.bloghead_title h2 {
   margin-top:0;
   font-size:1em;
   margin-bottom:2em;
}
.bloghead_title h1 {
    margin-top:0.25em;
    margin-bottom:0.25em;
 }

.blog main img {
    clear: both;
}

@media (max-width:1170px) {
    #blog_toggles .radionavs_container {
        display:none;
    }
}
@media (max-width:800px) {
    h2.limitlines {
        font-size:calc(4vw);
    }
}

.blogheader_title_wrap * {
    color:white;
    text-align:center;
}
.blog_list {
    margin: var(--biggap) 0;
    padding: 0;
    list-style: none;
    display: flex;
    gap: var(--biggap);
    flex-wrap: wrap;
}

.social_sharing h3 {
    text-transform: uppercase;
}
.social_sharing {
    text-align:center;
    padding:var(--biggap);
    margin:calc(2 * var(--biggap)) 0 ;
}

.center {
    text-align:center;
}
#socialgallerywrap {
    padding-left:var(--biggap);
    padding-right:var(--biggap);
}
#socialgallery_heading {
    display:flex;
    justify-content: center;
    gap:var(--biggap);
    align-items: center;
    
}
#socialgallery_heading img {
    max-width:13%;
}
@media (max-width:1170px) {
    #socialgallery_heading {
        font-size:1.5rem;
    }
}
#socialgallery_heading img {opacity:0.5;}
.socialgallery {
    display:flex; 
    /* flex-wrap:wrap;  */
    gap:.1rem; 
    margin-bottom:var(--biggap); 
    justify-content:center; 
}
@media (max-width:1140px) {
    .socialgallery {
        flex-wrap:wrap;
    }
}
.socialgallery a {text-decoration:none !important; box-shadow:0 0 0 rgba(0,0,0,0.5);}
.socialgallery a:hover {z-index:1; box-shadow:0 1rem 1rem rgba(0,0,0,0.3);}
.socialgallery a {transition:all 0.2s ease; display:inline-block;}
.socialgallery_link {
    aspect-ratio: 1/1;
    max-width:30rem;
    width:20%;
    min-width:150px;
    position:relative;
}
.socialgallery a img {
    aspect-ratio: 1/1;
    object-fit: cover;
    object-position: center;
    display: block;
    width: 100%;
    max-width:100%;
}
.socialgallery a:hover {transform:scale(1.05);}
.socialgallery_link {position:relative;}
.socialgallery_link .info_popup {position:absolute; top:var(--biggap); left:var(--biggap); padding:var(--gap); opacity:0; transition:all 0.3s ease; background:rgba(0,0,0,0.4);}
.socialgallery_link:hover .info_popup { opacity:1; }
.info_popup p {color:white; margin:0; font-size:0.8rem;}

.home .email {
    color:#222 !important;
}

.fa {
    display:none !important;
}
.hbcms_editor_toolbar .fa {
    display:inline-block !important;
} 
.member_portal_form {
    margin-bottom:var(--biggap);
}
.profile textarea, .contact-us textarea {
    width:100%;
    font-family:inherit;
    font-size:1rem !important;
    color:var(--gray1);
}
.profile input:not([id="memberaddressnotfixed"], [id="search"], [id="checkbox_memberaddressnotfixed"]) {
    width: 50%;
    min-width: 30ch;
}
.field.field_id_memberdescription label {
    transform:none;
    position:relative;
}
.selected_image_wrap.active p {
    display: none;
}
.image_field_hr ~ p {
    margin:1em;
    opacity:0.5;
    font-size:0.8rem;
}
.ss-main {
    padding-top:1rem;
}
/* hide front-end fields */
.field_id_alias, .field_id_category, .field_id_note, .field_id_state, .field_id_start, .field_id_end, .field_id_meetingdescription, .field_id_membertowns {
    display:none;
}

nav#member_portal_menu_nav {
    position: sticky;
    top: 0;
    z-index: 3;
}
/* nav#member_portal_menu_nav {
    width: 100%;
    left: 0;
    top: -3rem;
} */
ul.portal_menu {
    background:var(--gray2);
    list-style:none;
    display:flex;
    width:100%;
    justify-content: end;
    gap:var(--biggap);
    flex-wrap: wrap;
}
ul.portal_menu * {
    color:white;
}
ul.portal_menu > li > a {
    padding:0.5em 1em;
    display:inline-block;
    text-decoration: none;
    text-transform:uppercase;
}
.ss-main .ss-multi-selected .ss-values .ss-value {
    background-color:var(--bg) !important;
}
.front_end_edit_wrap {
    position:absolute; z-index:3;  background:rgba(0,0,0,0.5); color:white; border-radius: 0 0 2rem 0;
}
.front_end_edit_wrap a {
   font-size:0.8rem; color:white; text-decoration:none; padding:0.5em 1.5rem; display:inline-block;
}
ul.portal_menu > li.business_dropdown::after {
    content:"↴";
}
li.pull-left-list {
    margin-right:auto;
}
ul.portal_menu > li > ul {
    display:none;
    position:absolute;
    background:var(--gray2);
    margin:0;
    padding:0;
}
ul.portal_menu > li:hover > ul {
    display:block;
    z-index:1;
}
ul.portal_menu > li > ul a {
    padding:0.5em 1em;
    display:block;
    text-decoration:none;
}

ul.portal_menu > li > ul a:hover {
    text-decoration:underline;
}

/* mobile menu */
#mobile_nav, #mobile_popular {
    position:fixed;
    z-index:5;
    width:100vw;
    height:100vh;
    height:100dvh;
    background-color:var(--accentdark);
    background:white;
    transform:translateY(110vh);
    transition:all 0.3s ease;
    z-index:42;
    color:black;
    a {
        color:black;
    }
}
.meetings_menu #mobile_nav {
    background:#dcdcdc;
}
#mobile_popular {
    transform:translateY(-110vh); 
    background-color: var(--bg);
}
a#popular_trigger {
    display: flex;
    justify-content: flex-end;
}

.radionavs li a.active {
    color:white !important;
}

.mobile_nav_inner {
    display: flex;
    flex-direction: column;
    /* justify-content: space-between; */
    align-items: center;
    gap: var(--biggap);
    padding: var(--biggap);
    /* margin-top:12dvh;
    margin-bottom:10vh;
    height:70vh;
    height:80dvh; */
    height:100dvh;
    padding: 3rem;
}
#mobile_search_wrap, nav#menu_mobile-nav {
    width:100%;
}

:is(.mobile_nav) nav > ul > li > ul {
    display:none; /* hide sub nav on mobile */
}

#mobile_nav a {
    text-decoration:none;
}
body.mobilenav {
    overflow-y:hidden;
}
body.mobilenav #mobile_nav {
    transform:translateY(0);
}
body.mobilepopular #mobile_popular {
    transform:translateY(0);
}
#mobile_nav hr {
    width: 100%;
    height: 3px;
    /* border: none; */
    background: white;
    border-radius: 5px;
}
#mobilesearch, .mobilesearch, #mobilesearchpop {
    background:#72a1b4;
    border-radius: 3rem;
    font-size: 1.2rem !important;
    color: white;
    border:none;
    box-shadow: 0 0 1vh rgba(0,0,0,0.2);
    width:100%;
    background:white;
    color:black;
    border:1px solid var(--bg);
}
.mobilesearch::placeholder, #mobilesearch::placeholder {
    color: white;
    opacity:1;
    font-size:1rem;
    text-align:center;
}
#mobilesearch {
    padding-left:2.5em;
}
#mobilesearchpop {
    background:var(--bghover);
}
#menu_mobile-nav-bottom ul {
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:1em;
    font-size:0.8rem;
    text-align:center;
}
#menu_mobile-nav-bottom ul a {
    text-transform:uppercase;
    
}
#popular_trigger_img {
    filter:invert();
}
#menu_popular-menu ul {
    display:flex;
    flex-direction:column;
    gap:1.5em;
    font-size:1rem;
    margin:0;
    padding:1rem;
}
#menu_popular-menu li {
    display:block;
    padding:0px;
    margin:0px;
    text-align: center;
}
#menu_popular-menu a {
    text-transform:uppercase;
    color:white;
    text-decoration:none;
}

#mobile_popular .mobile_nav_inner {
    display:flex;
    flex-direction: column;
    gap:1rem;
    justify-content: start;
}
#mobile_popular .mobile_nav_inner h2 {
    color:white;
    margin:0;
    margin-top:1em;
}
#mobile_popular .mobile_nav_inner hr {
    width:100%;
    height: 2px;
    background: white;
    border: none;
    border-radius: 1rem;
}

#mobiletopnav a img {
    height: 3em;
    margin-top: 0.5em;
    /* margin-left: var(--biggap); */
    max-width: 100%;
    object-fit: contain;
    margin-left:0;
}

#mobile_nav_toggle, .mobile_nav_toggle {
    background:white;
    color:white;
    display:inline-flex ;
    justify-content: center !important;
    align-items:center !important;
    z-index:5 !important;
    font-size:2rem !important;
    width: 1.5em !important;
    height: 1.5em !important;
    padding:0 !important;
    background:none !important;
    border:none !important;
    box-shadow:none !important;
}
#mobile_nav_toggle.open {
    background:var(--bg);
}
#mobile_nav_toggle .open {
    display:none;
    color:white;
}
#mobile_nav_toggle .close, .mobile_nav_toggle .close {
    display:inline-block;
    color:var(--accentdark);
}
#mobile_nav_toggle.open .open {
    display:inline-block;
}
#mobile_nav_toggle.open .close {
    display:none;
}
#mobile_nav_toggle::before, .mobile_nav_toggle::before {
    height:0%;
    width:0%;
}
#mobile_nav_toggle::after, .mobile_nav_toggle::after {
    height:0%;
    width:0%;
}
@media (min-width:1170px) {
    #mobile_nav_toggle {
        display:none;
    }
}
#menu_mobile-nav ul {
    display:flex;
    flex-direction:column;
    font-size: 2.8vh;
    gap:1em;
    margin:0;
    padding:0;
    margin-top:1em;
}
#menu_mobile-nav ul a {
    text-transform:none;
    width:100%;
    display:block;
    text-align:left;
}
#menu_mobile-nav ul li.parent ul a {
    color:#777;
    font-size:1.25rem;
}
/* end mobile menu */
#menu_mobile-nav li.parent::after {
    content:'';
    background-image:url('/templates/sm2025/images/menu_arrow.svg');
    width:1rem;
    height:1rem;
    display:inline-block;
}
#menu_mobile-nav.tree_wrap ul li.parent > ul {
    display:none;
    padding-left: 2rem;
    font-size: 1rem;
    gap: 1.25rem;
    margin-top: 2rem;
}
#menu_mobile-nav.tree_wrap ul li.open > ul {
    display:block;
    display:flex;
}
#menu_mobile-nav li.parent {
    position:relative;
}
#menu_mobile-nav li.parent::after {
    content: '';
    background-image: url(/templates/sm2025/images/menu_arrow.svg);
    width: 1.2rem;
    height: 2.0rem;
    display: inline-block;
    object-fit: cover;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0px;
    right: 0px;
    transition:all 0.3s ease;
    scale:1.2;
}
#menu_mobile-nav li.parent.open::after {
    transform:rotate(90deg);
}

#itin_copy {
    margin-top:var(--biggap);
    z-index:2; /* fix clickable itin header for patt/josh */
}
.itin_place {
    display:flex;
    gap:var(--biggap);
    margin-bottom:calc(2 * var(--biggap));
}
img.itin_square {
    aspect-ratio:1.2/1;
    display:block;
    object-fit: cover;
    object-position:center;
    width:50rem;
    max-width:40vw;
}
.itin_right {
    width:100%;
    flex-grow:1;
}
.itin_left {
    flex-shrink:1;
    position:relative;
}
span.itin_place_index {
    position: absolute;
    top: 40%;
    padding:1.5em;
    display:flex;
    width:3rem;
    height:3rem;
    justify-content: center;
    align-items: center;
    border-radius:100%;
    transform:translateX(-3rem);
    font-size:2rem;
    color:var(--bg);
    background-color:rgba(158,233,234,0.5);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}
.itin_place h3 {
    color:var(--bg);
    text-transform: capitalize !important;
}
.itin_place h6 {
    font-weight:400;
    text-transform: uppercase;
    margin-bottom:2em;
}
.itin_day_content {
    display:none;
    /* push down anchor */
    padding-top: calc(3 * var(--biggap));
    margin-top: calc(-3 * var(--biggap));
}
.itin_day_content.active {
    display:block;
}
 #day_pickers {
    margin-top:var(--bigggap);

    display: inline-flex;
    margin-left:auto;
    margin-right:auto;
 }
 #day_pickers_wrap {
    position:sticky;
    top:0px;
    background:white;
    width:100%;
    padding:2rem;
    z-index:2;
 }
 #day_pickers_wrap.daycount_1 {
    display:none;
 }
 @media (max-width:1170px) {
    #day_pickers_wrap {
        top:4.0rem;
    }
 }

 @media (max-width:1170px) {
    .itin_place {
        flex-direction: column;
    }
    img.itin_square {
        aspect-ratio: 2/1;
        width:100%;
        max-width:100%;
    }
 }

 #contact_form_wrap {
    margin-top:var(--biggap);
    margin-bottom:var(--biggap);
 }

 div.field.hidden {
	display:none;
}
.field.required label::after {
    opacity:0.5;
    content: ' (reqd.)';
    font-size: 0.8em;
}
input:required, textarea:required {
    border: 1px solid orange;
  }
  input:invalid, textarea:invalid {
    border:1px solid red;
  }
  input:required:valid, textarea:required:valid {
    border: 1px solid var(--gray3);
  }

  .meetingrouter {
    display:flex;
    gap:var(--biggap);
  }
  .meetingrouter > * {
    width:50%;
  }
  img.rendered_img.mr_block_image, a.mr_block {
    display:block;
    aspect-ratio:16/4;
  }
  img.mr_block_image {
    position: absolute;
    max-width: 100%;
    object-fit:cover;
    object-position:100% center;
    -webkit-mask-image: linear-gradient(90deg, rgba(0,0,0,4) 37%, rgba(0,0,0,0.6558998599439776) 50%, rgba(0,0,0,0.22172619047619047) 100%);
  }
  a.mr_block {
    position: relative;
    background:black;
  }
  .mr_block_title {
    color:white;
    text-decoration: none;
    position:absolute;
    right:var(--biggap);
    bottom:var(--gap);
    margin:0;
    padding:0;
  }
  .mr_right {
    display:flex;
    flex-direction: column;
    gap:var(--biggap);
  }
  .mr_left h2 {
    margin-top:0;
  }
  .meetingrouter_wrap {
    margin-top:calc(3 * var(--biggap));
    margin-bottom:calc(3 * var(--biggap));
  }

.article_contain {
    margin-bottom:var(--biggap);
    padding-left:var(--gap);
    padding-right:var(--gap);
}
/* * {
    outline:1px solid red;
} */

@media (max-width:900px) {
    .meetingrouter {
        flex-direction:column;
    }
    .mr_left, .mr_right {
        width:100%;
        max-width:100%;
    }
}

#media_selector h1 {
    font-size:1.2rem !important;
    font-family:'sans-serif',sans-serif;
}
.media_selector_list {
    margin:1rem;
    padding:0;
    display:flex;
    gap:2rem;
    list-style:none;
    flex-wrap:wrap;
}
.media_selector_selection:hover {
    cursor:pointer;
    color:white;
}
.media_selector {
    overflow-y: scroll;
    height: 80vh;
}

.taglist.memberlist {
    display:flex;
}
.taglist.memberlist li {
    width:auto !important;
}
.taglist.memberlist .tag_icon {
    width:2rem;
    height:2rem;
}
.taglist.memberlist {
    margin-left: 0;
    padding-left: 0;
    margin-bottom:0;
}

aside#meetingteaser {
    position: relative;
    background:black;
    overflow:hidden;
    height:40rem;
    margin-top:calc(2 * var(--biggap));
    margin-bottom:calc(2 * var(--biggap));
    display: flex;
    flex-direction: column;
    justify-content: end;
    border-radius:3rem 3rem 0 0;
}
img.rendered_img.meetingteaserimg {
    border-radius:3rem 3rem 0 0;
    position: absolute;
    width: 100%;
    object-fit: cover;
    display: block;
    max-width: 100%;
    height:40rem;
    aspect-ratio: 3.142/1;
    -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,4) 47%, rgba(0,0,0,0.6558998599439776) 70%, rgba(0,0,0,0.22172619047619047) 100%);
}
.meetingteasercontent {
    padding: var(--biggap);
    filter: drop-shadow(0px 0px 6px black);
}
.meetingteasercontent :is(h1,a,p, .is-1, .is-2) {
    color:white !important;
    position: relative;
}
a.pull-right.btn.transparent.button {
    float: right;
    margin-left: 2rem;
    margin-top: 2rem;
}
.meetingteasercontent .is-2 {
    line-height: 1;
    display: block;
}
@media screen and (max-width: 900px) {
    a.pull-right.btn.transparent.button {
        margin-left: 2rem;
        margin-top: 2rem;
        margin-bottom:0rem;
        
    }
    img.rendered_img.meetingteaserimg {
        -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,4) 0%, rgba(0,0,0,0.2558998599439776) 70%, rgba(0,0,0,0.22172619047619047) 100%);
    }
}

ul#set-rl_tabs-1 {
    position: sticky;
    display: block;
    top: 0;
    display: flex;
    gap: 2rem;
    list-style: none;
    padding: 2rem;
    justify-content: center;
    background: white;
    z-index: 2;
    flex-wrap:wrap;
}
body.weddings .internal_anchor {
    padding-top:6rem;
    margin-top:-6rem;
}
a.chevron_link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
}
.chevron_link_image_wrap img {
    max-width:2rem;
}

/* creative connections and dispensary / natural route quick fix */
@media screen and (max-width: 900px) {
    html:is(.creative,.dispensary) {
        font-size:12px; 
    }
    :is(.creative,.dispensary) #mobiletopnav {
        font-size:155%;
    }
    :is(.creative,.dispensary) #mobile_nav_toggle {
        font-size:3rem !important;
    }
    :is(.creative,.dispensary) .bellhoplarge {
        width:4.5rem;
        height:4.5rem;
    }
    :is(.creative, .dispensary) :is(.mobilesearch, #mobilesearch, #mobilesearchpop) {
        font-size:1.5rem !important;
    }
    :is(.creative, .dispensary) :is(.mobilesearch, #mobilesearch, #mobilesearchpop)::placeholder {
        font-size:1.5rem !important;
    }
    :is(.creative, .dispensary) .tree_wrap li a {
       font-size:1.5rem;
    }
    :is(.creative) .cc_hero_wrap h1 {
        margin-top:0;
    }
    .creative .teaser .msg {
        padding-left:2rem;
    } 
}


.destination_content {
    overflow-y: auto;
    max-height: 442px;
}
.destination_content_wrap {
    padding: 1.5rem;
    max-height: 500px;
    overflow: hidden;
}
.faq h3 {
    max-width: 40%;
}
.faq p {
    text-align:left;
    margin-right: auto;
}
#faq > div > div.faq.button-cta > h3 {
    display:none;
}

.downtown-st-joseph-parking img.pull-right {
    max-width:50%;
    margin-left:1rem;
    margin-bottom:1rem;
    float:right;
}
.articleflex {
    display:flex;
    gap:2rem;
}
.articleflex > * {
    width:50%;
}
@media screen and (max-width: 950px) {
    .downtown-st-joseph-parking img.pull-right {
        width:100%;
        max-width:100%;
        height:auto;
        margin-left:0px;
        margin:1rem 0px;
        float:none;
        display:block;
    }
    .articleflex {
        display:block;
    }
    .articleflex > * {
        width:100%;
    }
}

@media screen and (max-width: 600px) {
    .faq h3 {
        max-width: 100%;
        text-align:center;
        max-width:100% !important;
    }
}

.field_id_membergallery > .field > label {
    font-size:1.5rem;
    font-weight:bold;
    position:relative !important;
}

img.rendered_img.memberpage_gallery {
    max-height: 70vh;
    object-fit: contain;
    object-position: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.profile .pull-right {
    float:right;
}

.bellhoplarge {
    background: var(--bghover);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 3rem 3rem 3rem 3rem;
    width:3rem;
    height:3rem;
    transform: translateX(-2rem);
}
body.mobilenav #bookroom_desktop, body.mobilepopular #bookroom_desktop {
    display:none;
}
div#bookroom_desktop {
    display: flex;
    justify-content: end;
    position: fixed;
    right: 0rem;
    bottom: 2rem;
    z-index:99;
    align-items: center;
    display:none;
}
#bookroom_desktop.inactive {
    pointer-events:none;
}
#bookroom_desktop.inactive #bookroomnew {
    opacity:0;
    pointer-events:none;
}
#bookroom_desktop #bookroomnew {
    opacity:1;
    pointer-events:all;
    transition:all 0.3s ease;
    background: var(--bghover);
    border-radius: 3rem 0 0 3rem;
    transform:translateX(3rem);
    padding: 0rem;
    display: flex;
    align-items: center;
    max-height: 5rem;
    /* overflow: hidden; */
}
.bellhoplarge, .bellhoplarge img {
    pointer-events: all !important;
}
.bellhoplarge img {
    max-width:100%;
    height:auto;
    z-index:2;
}
#jrs-form-1971 {
    display:flex;
    gap:2rem;
    padding:0 !important;
    flex-wrap: nowrap !important;
   /*  overflow: hidden; */
    /* padding-right:3rem !important; */
}
#jrs-widget-1971 {
    background: none !important;
    width: auto !important;
    margin: 0 !important;
    height: auto !important;
    border: none !important;
    box-shadow:none !important;
    
}
#jrs-calendar-start-1971:before, #jrs-calendar-end-1971:before {
    content:none !important;
}
.book_room_label {
    display:flex;
    flex-shrink: 0;
    align-items:center;
    gap:1rem;
}
label:hover {
    cursor:pointer;
}
#jrs-submit-1971 {
    padding-right: 0rem;
    min-width:11ch;
    margin:0px !important;
}
.jrs-datepicker-1971 {
    height:auto !important;
    text-align: center;
    width:80% !important;
    margin:0 !important;
}
.jrs-calendar-1971 {
    top: -5rem;
}
@media (max-width:1170px) {
    #jrs-submit-1971 {
        padding-right:0 !important;
    }
    #bookroom_desktop {
        left:2rem !important;
        bottom:2rem !important;
        right:auto !important;
        justify-content: start;
    }
    #bookroomnew {
        display:none !important;
    }
}

#jrs-calendar-end-1971, #jrs-calendar-start-1971 {
    display:flex;
    width:auto !important;
}
#jrs-calendar-end-1971:before, #jrs-calendar-start-1971:before {
    font-size: 0.8rem !important;
    font-family: 'Lato',sans-serif !important;
    color: #707070 !important;
    text-transform: uppercase !important;
    display: block !important;
    margin-bottom: 0.5rem !important;
    text-align: center !important;
    position:absolute;
    opacity:0;
    pointer-events:none;
}

#bookroom_form #jrs-calendar-end-1971:before, #bookroom_form #jrs-calendar-start-1971:before {
    margin-bottom: 1rem !important;
    text-align: center !important;
    font-weight: bold !important;
}
#bookroom_form :is(#jrs-calendar-start-1971, #jrs-calendar-end-1971) {
    border: 1px solid #aaa !important;
    padding: 0.5rem 1rem !important;
    background:white !important; 
}
.book_calendar_icon {
    margin-right:1em;
    width:1.5em !important;
    height:1.5em !important;
    min-height:1em !important;
    display:inline !important;
    object-fit:contain !important;
    -webkit-mask-position:unset !important;
}
#book_room_hero #jrs-form-1971 {
    gap:1rem !important;
    padding:1rem !important;
    label {
        transform:none;
        font-size:1rem;
        font-weight:bold;
    }
}
@media (max-width:1170px) {
    #bookroom_form #jrs-form-1971 {
        flex-direction:column;
    }
    #bookroom_form #jrs-form-1971 div {
        width:100% !important;
    }
}
@media (max-width:800px) {
    img.book_calendar_icon {
        display: none !important;
    }
    #book_room_hero #jrs-form-1971 {
        gap: 0rem 0px !important;
        padding:0.5rem !important;
    }
    div#book_room_hero_wrap {
        label {
            flex-direction:column;
        }
        input {
            padding-left:0px !important;
        }
    }
    #book_room_hero_wrap :is(button, label, span, input) {
        font-size:0.8rem !important;
    }
}
.hotels #jrs-form-1971 {
    position:relative;
    overflow:visible;
}
#jrs-calendar-start-1971, #jrs-calendar-end-1971 {
    position:relative !important;
    margin:0px !important;
}

#bookroom_visible {
    margin-top:var(--biggap);
}

#jrs-button-1971 {
    cursor: pointer !important; 
    background: inherit !important; 
    color: white !important; 
    font-size: auto !important; 
    text-decoration: none !important; 
    outline: none !important; 
    border: none !important; 
    font-family: inherit !important; 
    text-transform: none !important; 
    padding: inherit !important; 
    height: auto !important; 
    width:auto !important;
    text-decoration:none !important;
    z-index:1 !important;
    position: relative !important;
    font-size:1rem !important;
    border-radius:calc(0.5625rem + 1em) !important;  
    color:var(--bg) !important;
    border:1px solid var(--bg) !important;
    background:none !important;
    padding:0.5em 1em !important;
    font-weight:bold !important;
    overflow:hidden !important;
    transition: all 150ms cubic-bezier(0.445, 0.050, 0.550, 0.950) !important;
    align-self:center !important ;
}
#jrs-button-1971:hover {
    color:white !important;
    background:var(--bg) !important;
}

#story_container {
    margin-top:calc(2 * var(--biggap));
    margin-bottom:calc(2 * var(--biggap));
    display: flex;
    width: 100%;
    gap:var(--gap);
    justify-content: center;
    align-items: center;
}
.storyswiper .swiper-slide {
    max-width:15rem;
    background: black;
    border-radius: 1rem;
    overflow:hidden;
}
.story_preview img:not(.story-bug) {
    max-width:100%;
    -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,4) 37%, rgba(0,0,0,0.6558998599439776) 50%, rgba(0,0,0,0.22172619047619047) 100%);
}
a.story_preview {
    position:relative;
    background:black;
    display: block;
}
a.story_preview .story-content {
    position:absolute;
    bottom:2rem;
    right:2rem;
    max-width:80%;
}
a.story_preview .story-content {
    text-decoration:none;
    color:white;
    text-align:right;
}
a.story_preview .story-content p {
    margin:0;
}
a.story_preview .story-bug {
    position:absolute;
    top:1rem;
    left:1rem;
    width:3rem;
    height:3rem;
    z-index:1;
}
.story-swiper-arrow {
    display:flex;
    width:5rem;
    height:5rem;
    background-image:url(/templates/sm2025/images/swiper_arrow_circle.png);
    background-size:contain;
    background-repeat:no-repeat;
    background-position:center;
    flex-shrink:0;
}
@media (max-width:1170px) {
    .story-swiper-arrow {
        width:2rem;
        height:2rem;
    }
}

.storyswiper {
    overflow:hidden;
}
.story-swiper-prev {
    transform:rotate(-180deg);
    /* margin-right:var(--gap); */
}

p.limitlines {
    font-size:clamp(0.8rem, 1.5vw, 1.2rem);
}

.maps-and-guides .contain > h2 {
    margin:var(--biggap) 0;
    margin-bottom:calc(3*(var(--gap)));
    text-align:center;
}

.field_id_literature label {
    position:relative;
}

#sitemap {
    margin-top:2rem;
    margin-bottom:2rem;
}
.sitemap .unimportant {
    opacity:0.3;
    font-size: 0.7rem;
    margin-left:2rem;
    margin-right:2rem;
}
.child_indicator {
    margin-left:1rem;
    margin-right:1rem;
}

#member_gallery .swiper-slide {
    position:relative;
    min-height:15rem;
    overflow:hidden;
}
#member_gallery .swiper-slide aside {
    padding:var(--gap);
    color:white;
    width:100%;
    top:0;
    left:0;
}
#member_gallery .swiper-slide aside * {
    color:#222;
    margin:0;
    overflow:hidden;
}
#member_gallery .swiper-slide aside h5 {
    margin-bottom:0.5em;
    font-size:90%;
}
#member_gallery .swiper-slide aside p {
    font-size:75%;
}

#search_pages_list li, .basic_search_results_list li {
    margin-bottom:var(--gap);
}
#search_pages_list, .basic_search_results_list {
    margin-bottom:var(--biggap);
}

img.rendered_img.blog_hero_image {
    aspect-ratio: 16/9;
    object-fit: cover;
    display:block;
    margin-bottom:var(--biggap);
}
@media (max-width:1170px) {
    img.rendered_img.blog_hero_image {
        aspect-ratio: auto;
    } 
}

table#all_pages_table {
    margin-left: auto;
    margin-right: auto;
}

#portal_new_business {
    margin-top:2rem;
}

.blog_hero_image {
    width: 100vw;
    max-width:100vw;
    position: relative;
    margin-left: -50vw;
    height: 500px;
    max-height:50vh;
    /* margin-top: 100px; */
    left: 50%;
}

aside#book_room_hero {
    position: absolute;
    top: 42vh;
    width: 100%;
    max-width:84ch;
    left: 0px;
    right: 0px;
    margin-left: auto;
    margin-right: auto;
    h1 {
        color:white;
        text-align:center;
    }
}
aside#book_room_hero button {
    text-transform:none;
}

div#book_room_hero_wrap {
    background: white;
    border-radius: 0.75rem;
    box-shadow: 0px 5px 5px rgba(0,0,0,0.1);
    label {
        display:flex;
    }
    input {
        text-align:left !important;
        /* padding-left:1em !important; */
    }
}

@media print {
    nav, #mobile_nav, #mobile_popular, .toggles, form, #event_filter, #bookroom_desktop, #ctas, footer, .bellhoplarge, .circle_menu_wrap, .teaser, .bucket_grid, #story_container, #threebucket, .bucket_menu_wrap,  #socialgallerywrap  {
        display:none;
    }
    header.hero {
        opacity:0;
        height:14rem !important;
    }
    #day_pickers_wrap, .social_sharing  {
        display:none;
    }
    .itin_day_content {
        display:block;
    }
}

.resetform {
    margin-bottom:var(--biggap);
}

.taglist li {
    text-align: center;
}
.taglist li a {
    text-decoration:none;
    color:#222;
}

.taglist li .tagtitle {
    display:none;
    text-decoration:none;
    color:#222;
    opacity:0.4;
    font-size:0.5rem;
    text-transform: uppercase;
    margin-top:-0.3em;
}

.search .taglist li .tagtitle {
    display:block;
}
.search .taglist {
    justify-content: start;
}
.searchtags {
    margin-bottom:var(--biggap);
}

.modal.is-active {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 999999;
    background: white;
    display: flex;
    align-items: center;
    padding:2rem;
}
.modal-content {
    max-width: 52rem;
    margin-left: auto;
    margin-right: auto;
}

.image_photo_by {
    font-size: 80%;
    opacity: 0.7;
}

button#dismiss_filter {
    border: none;
    background:white;
}

#onesignal-bell-container.onesignal-reset.onesignal-bell-container-bottom-right {
    bottom: 3rem !important;
    right: 1rem !important;
}

.petfriendlyicon {
    padding-right:1.5em;
    background-image:url('/images/Tag_Icons/pet friendly.png');
    background-position:right center;
    background-size:contain;
    background-repeat:no-repeat;
}

#blogmorewrap, #eventmorewrap {
    margin:var(--biggap);
    display:flex;
    justify-content: center;
}

#onesignal-slidedown-container button::before {
    opacity:0 !important;
}
#onesignal-slidedown-container button::after {
    opacity:0 !important;
}

font {
    color: inherit !important;
    font-family: inherit !important;
}

.blog figure.rich_image_figure {
    text-align:center;
}
.blog figure.rich_image_figure.pull-right img {
    float:none;
    margin:0;
    max-width:100%;
}
.blog figure.rich_image_figure.pull-right {
    float:right;
    margin-left:1em;
    margin-bottom:1em;
    max-width:50%;
    display:inline-block; 
}

.blog .blog_markup img.pull-right {
    float:right;
    margin-left:1em;
    margin-bottom:1em;
    max-width:50%;
    height:auto;
}

body > img {
    /* hide ad tracker from tv tracking - caused layout issues */
    display: none;
}

/* fix p inside lists */

ul li p {
    margin-top:0px;
    padding-top:0px;
}

/* push anchor links down */

a[title] {
    padding-top:8rem;
    position:relative;
}

.app-buttons {
    gap:var(--gap);
}

.staff_browser_circle {
    display:block;
    aspect-ratio:1/1;
    object-fit:cover;
    max-width:100%;
    width:100%;
    object-position: center top;
}
.staff_browser_wrap .intro {
    gap:var(--biggap);
    gap:4rem;
}
.staff_browser_title_and_desc {
    width:70%;
    min-width:18rem;
}
.staff_browser_wrap {
    margin-bottom:var(--biggap);
}
.staff_browser_title_and_desc h2:first-of-type {
    margin-top:0px;
}
.staffbuckets, .staff_browser_wrap .intro {
    margin-bottom:var(--biggap);
}
@media (max-width:800px) {
    .staff_browser_wrap .intro {
        flex-direction:column;
    }
    .staff_browser_circle {
        max-width:100vw;
    }
    .staff_browser_title_and_desc {
        width:100%;
    }
}
.staffbuckets {
    gap:var(--gap);
}
.staffbuckets img {
    width:100%;
    display:block;
    aspect-ratio:16/9;
    object-fit:cover;
    object-position:center;
}
.staffbucket {
    width: 33%;
}
@media (max-width:1170px) {
    .staffbuckets {
        flex-direction:column;
    }
    .staffbucket {
        width: 100%;
    }

}

.sarah_help_wrap {
    position: absolute;
    z-index: 2;
    right: 2rem;
    width: 10rem;
    height: 10rem;
    display:none;
}

#page_switcher {
    margin-bottom:var(--biggap);
}


.member_ctas {
    display:flex;
    gap:var(--biggap);
    flex-wrap:wrap;
    margin-bottom:var(--biggap);
}
.member_ctas > * {
    flex-shrink:0;
}
@media (max-width:800px) {
    .member_ctas {
        display:flex;
        flex-direction: column;
    }
    .member_ctas > * {
        align-self:start !important;
    }
    .food-and-drink .flex.miniteasers {
        margin-bottom:0px;
    }
}

h3:has(+ h4) {
    margin-bottom: 0px;
}
h3 + h4 {
    margin-top: 0px !important;
}

/* hide staff page buckets for now */
.flex.staffbuckets {
    display: none;
}

@media (max-width: 600px) {
    h2.limitlines {
        font-size:0.9rem !important;
    }
    p.limitlines {
        font-size:0.9rem !important;
    }
}
#miniteasers {
    margin-top:var(--col);
}

#meetingguidebucket {
    display:block;
    padding: var(--biggap);
    color: white;
    text-decoration: none;
    background-image: url(/templates/sm2025/images/homepagecards/VisitorsGuide-background.jpg);
    background-size:cover;
    max-width: var(--max);
    padding-left: var(--col);
    padding-right: var(--col);
    margin-left:auto;
    margin-right:auto;
    background-repeat:no-repeat;
    width:100%;
    text-align:center;
    margin-bottom:var(--biggap);
    * {
        color:white;
        text-align:center;
    }
}

.cursive {
    font-family:var(--cursive) !important;
    font-weight:normal !important;
}

#visitor_guide_teaser {
    background-color:#EBF7F7;
    margin-bottom:var(--col);
    margin-top:var(--col);
}
#visitor_guide_teaser_contain {
    display:flex;
    justify-content: center;
}
#vgt_left {
    max-width:60ch;
    width:50%;
    padding-top: 4rem;
}
#vgt_right img {
    transform: translateY(-3%) scale(1.25);
    max-height:55vh;
}
@media (max-width: 1170px) {
    #vgt_left {
        max-width:100%;
        width:100%;
    }
    #visitor_guide_teaser_contain {
        flex-direction:column;
    }
    #vgt_right img {
        transform: translateY(4%) scale(1.15);
        max-height:55vh;
    }
}

#challenges_cards {
    margin-top:var(--col);
    margin-bottom:var(--col);
    padding-bottom:3rem;
    .challenge_card {
        text-decoration:none;
    }

    .challenge_cards_contain {
        display:flex;
        gap: var(--biggap);
        justify-content: center;
    }
        
    .challenge_logo_mobile {
        display:none;
    }
    .challenge_card {
        display:flex;
        flex-direction: column;
        border-radius:1rem;
        box-shadow:0 5px 5px rgba(0,0,0,0.1);
        overflow:hidden;
        width: 25%;
    }
    .challenge_card_top {
        position:relative;
    }
    img.challenge_logo_desktop {
        position: absolute;
        bottom: 1rem;
        left: 0px;
        right: 0px;
        margin-left: auto;
        margin-right: auto;
        max-width: 70%;
    }
    img.challenge_image {
        width:100%;
        object-fit:cover;
        display:block;
        aspect-ratio: 9/12;
    }
    .desktop_info_and_cta {
        display:flex;
        margin-top: auto;
        justify-content: center;
        flex-direction:column;
        padding:var(--biggap);
        * {
            text-align:center;
            text-decoration:none;
        }
        h3 {
            font-size:1.2rem;
            text-decoration:none !important;
            color:black;
        }
    }
}
@media (max-width: 1024px) {
    #challenges_cards {
        .challenge_cards_contain {
            flex-wrap: wrap;
        }
        .challenge_card {
            width:47%;
        }
    }
}
@media (max-width: 600px) {
    #challenges_cards {
        .challenge_cards_contain {
            flex-wrap: wrap;
        }
        .challenge_card {
            width:100%;
            display:flex;
            flex-direction:row;
            max-height: 11rem;
            height:11rem;
        }
        .challenge_logo_mobile {
            display:block;
            padding: var(--biggap);
            object-fit: contain;
        }
        .desktop_info_and_cta, .challenge_logo_desktop {
            display:none;
        }
        .challenge_card > * {
            width:50%;
        }
        img.challenge_image {
            width: 100%;
            height: auto;
            object-fit: cover;
            aspect-ratio: unset;
            max-height: 100%;
            height:100%;
        }
    }
}

p.footersocials {
    padding: 2.2rem;
    text-align: left;
}

.home header.contain {
    max-width:100%;
}
.hero img, .hero video {
    -webkit-mask-size:cover;
}

#menu_meetings-menu-mobile {
    width:100%;
    ul {
        margin-left:0px;
        padding-left:0px;
        display:flex;
        gap:1em;
        font-size:2.8vh;
        flex-direction:column;
    }
}
aside#mobile_nav_subsite_toggle {
    margin-top: auto;
}


#menu_meetings-menu-mobile {
    display:none;
    margin-top:2rem;
}
#mobile_nav .tree_wrap {
    display:none;
}
#mobile_nav .tree_wrap.open {
    display:block;
}

#staff_browser {
    margin-top:var(--col);
}
section#about_us_info {
    background: var(--bghover);
    padding: 2rem;
    padding-bottom:0rem;
}
#about_us_info_wrap {
    display:flex;
    gap:var(--col);
    margin-top:1rem;
}
#about_us_left {
    width:60%;
}
#about_us_right {
    width:40%;
    margin-top: -6rem;
    background:var(--bg);
    padding:5rem 3rem;
    border-radius:0.3125rem 0.3125rem 0 0 ;
    * {
        color:white;
    }
    ul {
        display:flex;
        flex-direction:column;
        gap:var(--biggap);
    }
}

@media (max-width: 1200px) {
    #about_us_info_wrap {
        display:block;
    }
    #about_us_left, #about_us_right {
        width: 100%;
    }
    #about_us_right {
        margin-top:3rem;
    }
}
@media (max-width: 800px) {
    #about_us_right {
        padding: 1rem 2rem;
    }
}

#board_of_directors {
    margin-top:var(--col);
    margin-bottom:var(--col);
    .contain {
        text-align:center;
    }
}
#board_list {
    display:flex;
    list-style:none;
    gap:2rem;
    flex-wrap:wrap;
    justify-content: start;
    margin-top:var(--col);
}
#board_list > * {
    width:12rem;
    display:flex;
    flex-direction:column;
    margin-bottom: 1rem;
}
span.board_name {
    font-weight: bold;
}
span.board_position {
    margin-top: 0.5rem;
    font-style: italic;
    opacity: 0.6;
}
.staff_browser_title_and_desc h3.is-4 {
    color:black;
}
.staff_browser_title_and_desc h3 {
    color:#777;
    font-weight:normal;
}
.jrs-calendar-1971 {
    z-index:10 !important;
}