/*!
 * Web Fonts from Fontspring.com
 *
 * All OpenType features and all extended glyphs have been removed.
 * Fully installable fonts can be purchased at https://www.fontspring.com
 *
 * The fonts included in this stylesheet are subject to the End User License you purchased
 * from Fontspring. The fonts are protected under domestic and international trademark and 
 * copyright law. You are prohibited from modifying, reverse engineering, duplicating, or
 * distributing this font software.
 *
 * (c) 2010-2026 Fontspring
 *
 *
 *
 *
 * The fonts included are copyrighted by the vendor listed below.
 *
 * Vendor:      exljbris Font Foundry
 * License URL: https://www.fontspring.com/licenses/exljbris/webfont
 *
 *
 */

@font-face {
    font-family: 'Museo Sans';
    src: url('fonts/MuseoSans_500-webfont.woff2') format('woff2'),
         url('fonts/MuseoSans_500-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;

}

* { margin: 0; padding: 0; border: 0; }
html, body { min-height: 100%; }
body{margin:0;padding:0;}
.fl_menu{list-style:none;}
.cms_imgleft{margin:3px 10px 10px 0;float:left;}
.cms_imgright{margin:3px 0 10px 10px;float:right;}
.clear{clear:both;}
.gallthumbnail{display:inline-block;border:1px solid #666;margin-right:5px;margin-bottom:5px;}
.fl_blogpostavatar{float:right;border:1px solid #eee;margin:0 0 5px 5px;}
.fl_commentavatar{float:left;border:1px solid #eee;margin:0 5px 0 0;}
.fl_commentname{display:block;margin-left:80px;text-transform:uppercase;margin-bottom:5px;font-size:10px;}
.fl_commentmessage{display:block;margin-left:80px;}
.fl_gtname{display:block;text-transform:uppercase;margin-bottom:5px;font-size:8pt;}
.fl_gtmessage{display:block;}
.fl_postinfo{text-transform:uppercase;margin-bottom:5px;font-size:10px;}
.fl_blogfooter{clear:both;}
.fl_comment1{display:block;padding:5px;margin-top:5px;}
.fl_comment2{display:block;padding:5px;background-color:#eee;margin-top:5px;}
.fl_commclear{display:block;clear:both;}
#fl_commsbox, #fl_tracksbox{clear:both;padding-top:15px;}
.fl_bigpic{border:1px solid #eee;}
.fl_bigcaption{margin-top:10px;}
.fl_gallpreview1{margin-bottom:10px;padding:5px;clear:both;}
.fl_gallpreview2{margin-bottom:10px;background-color:#eee;padding:5px;clear:both;}
.fl_gallpreview1 img, .fl_gallpreview2 img{float:left;border:1px solid #eee;}
.fl_galllink, .fl_galltext{display:block;margin-left:110px;}
.fl_mailform textarea{height:200px;}
.fl_rsslinks{padding-top:10px;clear:both;text-align:right;}
.fl_rsslinks a{text-transform:uppercase;font-size:8pt;text-decoration:none;margin-left:10px;}
.fl_rsslinks:empty{display:none;}
.fl_rating{float:right;text-align:right;}
#msgwrap{position:fixed;top:150px;left:50%;text-align:center;z-index:99;pointer-events:none;}
#msgbar{position:relative;color:#fff;border-width:3px;border-style:solid;padding:15px;font-size:28px;line-height:40px;width:300px;left:-168px;cursor:default;display: block; opacity: 0; transition: opacity 1s; pointer-events: none; }
#msgbar a{color:#fff;}
#msgbar.messageshown { opacity: 0.9; pointer-events: auto; }
#msgbar.messagehide { transition: none; pointer-events: none; opacity: 0; }
input, textarea{padding:10px;background-color:#fff;font-size:12px;}
textarea{height:150px;}
.fl_later{float:left;}
.fl_earlier{float:right;}
.flmsg_alert{background-color:#4ad;border-color:#079;}
.flmsg_error{background-color:#900;border-color:#600;}
.flmsg_success{background-color:#096;border-color:#066;}
.flmsg_generic{background-color:#666;border-color:#999;}
#fl_gallwrap{position:fixed;top:0;left:0;margin:0;padding:0;width:100%;height:100%;display:block;font-size:12px;line-height:20px;color:#333;text-align:center;z-index: 99; opacity: 0; pointer-events: none; transition: opacity 0.5s; }
#fl_gallwrap.fl_gallwrapshown { opacity: 1; pointer-events: auto; }
#fl_gallcover{position:fixed;width:100%;height:100%;top:0;left:0;margin:0;padding:0;background-color:#000;opacity:0.8;}
#fl_gallbox{position:relative;top:5%;margin:0 auto;background: #fff url('../gfx/fl_loading.svg') no-repeat center/32px auto;padding:10px;display:inline-block;min-width:32px;min-height:32px}
.gallhidden { display: none!important; }
#fl_gallpicwrap { overflow: hidden; transition: all 0.5s ease-in-out; max-width: 64px; max-height: 64px; width: 90vw; height: 90vh; }
#fl_gallpic{display:block;margin:0 auto;transition: opacity 0.5s; max-width: 100%; }
#fl_gallpic.galltransitionfast { transition: 0.2s all; }
#fl_gallpic.fl_gallpichidden { opacity: 0; }
#fl_gallbelowpic{clear:both;display:block;margin:0 -10px;overflow:hidden;position: relative; z-index: 51; transition: all 0.5s; opacity: 0; max-height: 0; }
#fl_gallbelowpic.fl_gallbelowpicshown { opacity: 1; max-height: 500px; }
#fl_gallwrap a{color:#666;text-decoration:none;}
#fl_gallwrap a:hover{color:#444;}
#fl_gallprevnext{background:url('../scripting/blank.gif');position:relative;}
#fl_gallprev, #fl_gallnext { position: absolute; top: 0; bottom: 0; width: 50%; display: none; z-index: 50; }
#fl_gallprev { left: 0; text-align: left; }
#fl_gallnext { right: 0; text-align: right; }
#fl_gallclose, #fl_gallslide{clear:right;float:right;}
#fl_gallclose { margin: 10px 10px 0 0; }
#fl_gallslide { margin-right: 10px; }
a#fl_gallprev:hover, a#fl_gallnext:hover, a#fl_gallclose:hover{border-width:0;}
#fl_gallprev img, #fl_gallnext img{visibility:hidden;padding-top:50px;}
#fl_gallprev:hover img, #fl_gallnext:hover img{visibility:visible;}
#fl_gallcaption { text-align: left; padding: 10px 10px 0; max-width: calc(100% - 120px); }
#fl_loading { display: none; position: fixed; top: 10px; right: 10px; background: #fff; padding: 3px; border: 1px solid #ccc; width: 32px; height: 32px; z-index: 150; }

#fl_tracksbox, .fl_rsslinks, .fl_rsslinks .rsscomments { display: none; }


:root {
	--swib-text: #000000;
	--swib-lttext: #4c4c4c;
	--swib-pink: #cf55a0;
	--swib-purple: #5a536c;
	--swib-dkpurple: #433e51;
	--swib-vdkpurple: #2d2936;
	--swib-green: #acca63;
	--swib-blue: #42aacd;
	--swib-neutral: #f6f6f6;
	--swib-dkneutral: #ccc;
}


html, body { background: #fff; color: var(--swib-text); font: 16px/24px Inter, sans-serif; }
p { margin: 15px 0; }
ul, ol { margin: 15px 25px; }
a { color: var(--swib-pink); }
a:hover { text-decoration: none; opacity: 0.5; }
img { max-width: 100%; height: auto!important; }
b, strong, p.accountheader { font-weight: 600; }

h1, h2, h3, h4, h5 { font-family: "Museo Sans", sans-serif; margin: 25px 0; font-weight: 500; color: var(--swib-purple); }
h1 { font-size: 36px; line-height: 40px; margin-top: 0; }
h2 { font-size: 28px; line-height: 32px; }
h3 { font-size: 24px; line-height: 28px; }
h4 { font-size: 20px; line-height: 24px; }
h5 { font-size: 18px; line-height: 22px; }
h1 b, h1 strong, h2 b, h2 strong, h3 b, h3 strong, h4 b, h4 strong, h5 b, h5 strong { font-weight: 500; }
.textlabel { position: absolute; margin-left: -9999px; }
h1:empty { display: none; }

.skipto a { position: absolute; margin-left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; color: #fff!important; padding: 10px; background: var(--swib-pink); }
.skipto a:focus { margin-left: 0; width: auto; height: auto; opacity: 1; z-index: 50; }

.wrapper, .fl_menu { max-width: 1100px; margin: 0 auto; padding: 0 25px; position: relative; }

header { padding: 25px 0; }
.logo { width: 254px; display: block; margin: 0 auto; }
.logo:hover { opacity: 1; }
.logo img { display: block; }
.topright { position: absolute; top: 0; right: 25px; text-align: right; }
.topright a.button { display: inline-block; vertical-align: top; margin-bottom: 5px; width: auto; }

#menu { background: var(--swib-neutral); text-align: center; position: sticky; top: 0; z-index: 20; }
.fl_menu li, .fl_menu a { display: inline-block; position: relative; }
.fl_menu a { font: 500 18px/40px "Museo Sans", serif; text-decoration: none; color: var(--swib-text); }
.fl_menu>li:after { content: '\2022'; margin: 0 25px; color: var(--swib-pink); }
.fl_menu>li:last-child:after { display: none; }
#menu_c_search a { text-indent: -9999px; width: 25px; background: url('../gfx/icon-search-black.svg') no-repeat top 7px center / contain; }
#menubutton { display: none; }

.fl_menu ul { position: absolute; background: var(--swib-neutral); margin: 0; z-index: 20; top: 40px; max-height: 0; left: -10px; width: 200px; overflow: hidden; transition: max-height 0.25s; text-align: left; }
.fl_menu ul li, .fl_menu ul a { display: block; margin: 0; padding: 0; }
.fl_menu ul a { font-size: 14px; line-height: 22px; padding: 5px 10px; }
.fl_menu>li.menusize ul { max-height: none!important; transition: none!important; opacity:0!important; }

.fl_menu li:hover ul { max-height: 500px; }
.fl_menu ul ul { display: none!important; }

#searchscreen, #signinform, #fl_popupwrap { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 50; background: rgba(255,255,255,0.8); text-align: center; opacity: 0; pointer-events: none; transition: opacity 0.5s; }
#searchscreen.searchshown, #signinform.signinshown, #fl_popupwrap.popupshown { opacity: 1; pointer-events: auto; }
#searchclose { position: fixed; top: 25px; right: 25px; width: 40px; height: 40px; background: var(--swib-pink) url('../gfx/search-close.svg') no-repeat center; background-size: 18px auto; cursor: pointer; border-radius: 50%; text-indent: -9999px; }
#searchscreen label, #signinform label { position: absolute; left: -9999px; }
#searchscreen form { position: absolute; top: 50%; left: 0; right: 0; height: 60px; margin: -30px 160px 0 100px; }
#searchscreen input { -webkit-appearance: none; }
#searchscreen input.st { position: absolute; width: 100%; left: 0; border: 0; box-sizing: border-box; height: 60px; padding: 0 20px; color: #000; font-size: 18px; border-radius: 5px 0 0 5px; }
#searchscreen input.sg { position: absolute; width: 60px; height: 60px; box-sizing: border-box; right: 0; margin-right: -60px; background: var(--swib-pink) url('../gfx/icon-search-white.svg') no-repeat center!important; cursor: pointer; border: 0; background-size: auto 24px!important; border-radius: 0 5px 5px 0; text-indent: -9999px; }

.signinoverlay, #fl_popupbox { position: absolute; top: 50%; left: 50%; transform: translate3d(-50%, -50%, 0); width: 400px; box-sizing: border-box; padding: 20px; background: #fff; box-shadow: 0 0 10px rgba(0,0,0,0.5); text-align: left; max-height: 75vh; max-width: 90vw; overflow: auto; -webkit-overflow-scrolling: touch; word-wrap: break-word; }
#fl_popupbox { width: 800px; }
.signinoverlay h3, #fl_popuptext h2 { text-transform: uppercase; margin: 0 0 10px; padding-top: 40px; position: relative; }
.signinoverlay h3:before, #fl_popuptext h2:before { position: absolute; top: 0; left: 0; width: 30px; height: 30px; border-radius: 50%; background: var(--swib-blue); content: ''; }
.signinoverlay input { margin-bottom: 5px; }
.signinoverlay input[type=submit] { margin-top: 10px; }
#signinclose, #fl_popupclose { position: absolute; top: 20px; right: 20px; width: 40px; height: 40px; background: var(--swib-pink) url('../gfx/search-close.svg') no-repeat center; background-size: 18px auto; cursor: pointer; border-radius: 50%; text-indent: -9999px; padding: 0; z-index: 5; }
#searchclose:hover, #signinclose:hover, #fl_popupclose:hover { transform: scale3d(1.05,1.05,1); }
.signinoverlay a { margin-right: 10px; }
#fl_popupclose { float: right; position: sticky; top: 0; right: 0; }

main { min-height: calc(100vh - 590px); box-sizing: border-box; margin-bottom: 50px; }

#imgfade { height: 300px; background: var(--swib-neutral); position: relative; display: flex; overflow: hidden; max-width: 1600px; margin: 0 auto 35px; }
#imgfade img { display: none; width: 100%; height: 100%!important; position: absolute; top: 0; left: 0; z-index: 5; object-fit: cover; object-position: center; transition: opacity 2s; }
#imgfade img:first-child { display: block; }
#imgfade.hasjs img { display: block; opacity: 0; }
#imgfade.hasjs img.curimg { opacity: 1; }
#imgfade:after { content: ''; position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: 6; background: linear-gradient(to right, rgba(62,59,70,0.9) 45%, rgba(62,59,70,0) 60%); }
.pagetitle { max-width: 1100px; margin: 0 auto; padding: 0 50px; width: 100%; align-self: center; color: #fff;position: relative; z-index: 10; text-transform: uppercase; }
.pagetitle .breadcrumbs { max-width: 60%; margin: 0 0 10px; padding-left: 30px; position: relative; }
.pagetitle .breadcrumbs:before { content: ''; width: 20px; height: 20px; position: absolute; top: 2px; left: 0; background: var(--swib-blue); border-radius: 50%; }
.pagetitle .breadcrumbs a { color: #fff; font: 16px/20px "Museo Sans", sans-serif; display: inline-block; text-decoration: none; white-space: nowrap; max-width: 150px; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; }
.pagetitle .breadcrumbs span.divider { display: inline-block; vertical-align: middle; }
.pagetitle .breadcrumbs span.divider:before { content: '/'; margin: 0 10px; color: #fff; }
.pagetitle .breadcrumbs a:last-child { display: none; }
.pagetitle h1 { max-width: 60%; margin: 0; color: #fff; }
.pagetitle p { max-width: 60%; margin: 15px 0 0; text-transform: none; font: 500 24px/28px "Museo Sans", sans-serif; }

.page-front #imgfade { height: 800px; max-height: calc(90vh - 265px); min-height: 500px; }
.page-front .pagetitle h1 { padding-top: 50px; position: relative; }
.page-front .pagetitle h1:before { position: absolute; top: 0; left: 0; width: 40px; height: 40px; border-radius: 50%; background: var(--swib-green); content: ''; }

main>.wrapper { display: flex; flex-direction: row-reverse; }
.contentwrap { width: calc(100% - 240px); }
.contentwrap>*:first-child { margin-top: 15px; }
.sectionwrap { width: 240px; padding-right: 25px; box-sizing: border-box; min-height: 10px; position: sticky; top: 60px; align-self: flex-start; }
.sectionwrap ul { list-style: none; margin: 15px 0 0; }
.sectionwrap li { display: block; margin: 15px 0 0; }
.sectionwrap li.first:child { margin-top: 0; }
.sectionwrap li.current a { opacity: 0.5; text-decoration: none; }
.sectionwrap a { color: inherit; font-family: "Museo Sans", sans-serif; }
.sectionwrap ul ul { display: block; margin-left: 15px; }

.subpages, .accountoptions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; margin-top: 50px; grid-auto-rows: 1fr; }
.contentwrap>div:first-child>.subpages { margin-top: 0; }
.accountoptions { margin: 25px 0; }
ul.accountoptions li { display: inline-grid; margin: 0; }
ul.accountoptions li:before { display: none; }
.subpages a, .accountoptions a { display: block; align-content: center; padding: 20px; text-align: center; color: #fff; background: var(--swib-pink); text-decoration: none; font: 500 18px/22px "Museo Sans", sans-serif; border-radius: 5px; }
.pf-members .subpages a { padding: 20px 10px; }
.subpages a:hover, .accountoptions a:hover { transform: scale3d(1.02,1.02,1); opacity: 1; }
.pf-members .subpages div { display: none; }
.subpages a span.cattot { display: block; font: 600 0.8em/1.4em Inter, sans-serif; margin-top: 5px; }
.memwrap { margin-top: 25px; border-top: 1px solid var(--swib-dkneutral); }
.memwrap a { display: block; border-bottom: 1px solid var(--swib-dkneutral); padding: 25px; text-decoration: none; color: inherit; }
.memwrap a:hover { background: var(--swib-neutral); opacity: 1; }
.memwrap a img { display: block; float: right; margin: 0 0 15px 15px; }
.memwrap a span { display: block; }
.memwrap a .membercompany { font: 500 24px/28px "Museo Sans", sans-serif; margin-bottom: 10px; color: var(--swib-pink); }
.memwrap a .membername { font-weight: 600; }
.memwrap a .descpar { margin-top: 10px; }
.pf-members .profileinfo { float: right; width: 248px; margin: 0 0 15px 15px; background: var(--swib-neutral); }
.profileinfo img { display: block; }
.profileinfotext { font-size: 0.8em; line-height: 1.4em; padding: 10px; word-wrap: break-word; }
.profileinfotext .profilelabel { font-weight: 600; margin-top: 5px; display: block; }
.profileinfotext .profilelabel:first-child { margin-top: 0; }

.eventwrap, .pf-shop .catwrap { display: grid; grid-template-columns: repeat(3, 1fr); margin: 25px 0; gap: 25px; }
.eventwrap a, .pf-shop .catwrap a { text-decoration: none; color: inherit; display: block; }
.pf-shop .catwrap a { height: 0; padding-bottom: 100%; position: relative; background-position: center; background-size: contain; background-repeat: no-repeat; }
.eventwrap a:hover, .pf-shop .catwrap a:hover { opacity: 1; }
.eventwrap a .eventimage { position: relative; height: 0; padding-bottom: 100%; background: var(--swib-neutral) url('../gfx/circles-colourful.svg') no-repeat center / 50% auto; overflow: hidden; margin-bottom: 10px; }
.eventwrap a .eventimage img { position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%!important; object-fit: cover; object-position: center; }
.eventwrap a:hover .eventimage img { transform: scale3d(1.02,1.02,1); }
.eventwrap a .eventtitle, .catwrap a .prodname { font: 500 18px/24px "Museo Sans", sans-serif; color: var(--swib-purple); text-decoration: underline; margin-bottom: 5px; }
.eventwrap a:hover .eventtitle, .catwrap a:hover .prodname { color: var(--swib-pink); text-decoration: none; }
.eventwrap a .datevenue { font-weight: 500; margin-bottom: 10px; }
.eventwrap a .datevenue .divider { display: inline-block; }
.eventwrap a .datevenue .divider:before { content: '\2022'; color: var(--swib-pink); margin: 0 15px; }
.eventwrap a .descpar { color: var(--swib-lttext); }
.pf-shop .catwrap a .catinfo { background: rgba(255,255,255,0.8); position: absolute; bottom: 0; left: 0; right: 0; padding: 10px; }
.pf-shop .catwrap a .catinfo span { display: block; }

.eventpage { display: flex; flex-direction: row-reverse; }
.eventright { width: 300px; margin-left: 25px; font-size: 14px; line-height: 20px; color: var(--swib-lttext); position: sticky; top: 55px; align-self: flex-start; }
.eventright a.button { display: block; margin-bottom: 15px; }
.eventleft>h2:first-child { margin-top: 0; }
.eventleft>*:last-child { margin-bottom: 0; }
.booktop { display: none; }

.partners { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.partner { position: relative; }
.partner:has(a):hover img { transform: scale3d(0.98, 0.98, 1); }
.partner:has(img) p:first-child { position: relative; height: 0; padding-bottom: 100%; margin: 0; overflow: hidden; }
.partner img { position: absolute; top: 0; left: 0; width: 100%; height: 100%!important; object-fit: contain; object-position: center; transition: transform 0.5s; }
.partner:not(:has(img)) { padding-top: 100%; }
.partner:not(:has(img)) h4:before { position: absolute; top: 0; left: 0; width: 100%; height: 0; padding-bottom: 100%; content: ''; background: var(--swib-neutral) url('../gfx/circles-colourful.svg') no-repeat center / 75% auto; }
.partner a:before { content: ''; position: absolute; top: 0; left: 0; bottom: 0; right: 0; }
.partner h4 a { color: var(--swib-purple); }
.partner:hover h4 a { color: var(--swib-pink); opacity: 1; }

.page-front main>.wrapper { display: block; max-width: none; padding: 0; }
.page-front h2 { text-transform: uppercase; position: relative; padding-top: 40px; }
.page-front h2:before { position: absolute; top: 0; left: 0; width: 30px; height: 30px; border-radius: 50%; background: var(--swib-blue); content: ''; }
.frontabout { background: var(--swib-neutral); padding: 25px calc(40% + 25px) 25px 25px; position: relative; }
.frontabout h2 { margin-top: 0; }
.frontabout>*:last-child { margin-bottom: 0; }
.frontabout h2:before { background: var(--swib-pink); }
.frontabout p img { display: none; }
.frontabout:after { position: absolute; top: 0; right: 0; width: 40%; background: #fff; height: 25px; content: ''; }
.frontabout .aboutimage { position: absolute; right: 0; top: 25px; bottom: -25px; width: 40%; overflow: hidden; background: var(--swib-neutral); }
.frontabout .aboutimage img { object-position: center; object-fit: cover; position: absolute; top: 0; bottom: 0; left: 0; right: 0; width: 100%; height: 100%!important; }
.page-front .eventscrollcont { max-width: 1100px; padding: 0 25px; margin: 0 auto; position: relative; }
.page-front .eventscroll { width: 100%; white-space: nowrap; overflow: auto; -webkit-overflow-scrolling: touch; box-sizing: border-box; }
/*.page-front .eventscrollcont:before, .page-front .eventscrollcont:after { content: ''; top: 0; bottom: 0; left: 0; width: 50px; background: linear-gradient(to right, #fff, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0)); position: absolute; pointer-events: none; z-index: 8; }*/
.page-front .eventscrollcont:after { left: auto; right: 0; background: linear-gradient(to left, #fff, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0)); }
.eventscroll::-webkit-scrollbar { height: 6px; border-radius: 3px; }
.eventscroll::-webkit-scrollbar-track { background: transparent; }
.eventscroll::-webkit-scrollbar-thumb { background: var(--swib-dkneutral); height: 6px; border-radius: 3px; transition: background 0.1s; }
.eventscroll::-webkit-scrollbar-thumb:hover, .eventscroll::-webkit-scrollbar-thumb:active { background: var(--swib-purple); }

.page-front .eventwrap a.blockready { margin-bottom: 0; }

.page-front .eventwrap { display: flex; /*padding-left: calc(50vw - 550px);*/ margin: 0 0 50px; }
.page-front .eventwrap a { display: inline-block; width: calc(32% - 40px); white-space: normal; vertical-align: top; flex-shrink: 0; position: relative; }
/*.page-front .eventwrap .scrollend { display: inline-block; flex-shrink: 0; vertical-align: top; height: 20px; width: calc(50vw - 575px); width: 25px; }*/
.page-front main { margin-bottom: 0; }
.page-front .eventwrap .descpar { max-height: 180px; overflow: hidden; }
.page-front .eventwrap a:after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 50px; background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,1)); }
form#mc-embedded-subscribe-form { background: var(--swib-dkpurple); color: #fff; margin-top: 50px; padding: 25px 0 0; }
.mc-fields-group { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; }
form#mc-embedded-subscribe-form h2 { color: #fff; }

table.basket { width: 100%; border-collapse: collapse; }
table.basket td { padding: 5px; }
table.basket thead { background: var(--swib-neutral); font-weight: 600; }
table.basket tbody tr { border-bottom: 1px solid var(--swib-neutral); }
table.basket tbody tr.totrow { font-weight: bold; }
table.basket tbody tr.totrow .totbox { text-align: right; }

.contentwrap ul { list-style: none; }
.contentwrap li { margin-top: 3px; }
.contentwrap ul li:before { content: '\2022'; position: absolute; margin-left: -20px; color: var(--swib-blue); margin-top: -1px; }
blockquote { background: var(--swib-neutral); border-left: 1px solid var(--swib-blue); margin: 25px; padding: 25px; }
blockquote>*:first-child { margin-top: 0; }
blockquote>*:last-child { margin-bottom: 0; }
.cms_imgleft, .cms_imgright { max-width: 300px; }

.fl_gallinc { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; margin: 25px 0; }
.fl_gallinc>div { width: auto!important; height: auto!important; border: 0; margin: 0; overflow: hidden; }
.fl_gallinc a, .fl_gallinc img { display: block; }
.fl_gallinc a:hover { transform: scale3d(1.02,1.02,1); opacity: 1; }

.fl_blogpost1 h2.fl_blogentrytitle { margin-top: 0; }
.fl_postinfo { font-size: 12px; margin-top: -15px; margin-bottom: 15px; }

.memberformbox { display: inline-block; width: 50%; vertical-align: top; box-sizing: border-box; padding: 0 0 0 5px; }
.memberformbox:first-child { padding: 0 5px 0 0; }
.memberformbox label { margin-top: 0; }

.pf-events .sectionwrap, .page-front .sectionwrap { display: none; }
.pf-events .contentwrap, .page-front .contentwrap { width: auto; }

summary { background: var(--swib-neutral); position: relative; list-style: none; cursor: pointer; padding: 15px 40px 15px 10px; transition: all 0.25s; font: 500 20px/24px "Museo Sans", sans-serif; z-index: 2; color: var(--swib-purple); }
summary:hover { background: var(--swib-pink); color: #fff; }
summary::-webkit-details-marker { display: none; }
summary:after { position: absolute; top: 50%; margin-top: -10px; line-height: 20px; right: 10px; content: '\25BC'; font-size: 0.6em; transition: transform 0.25s; transform: rotate(-90deg); }
summary:hover:after { transform: rotate(-90deg) scale3d(1.25,1.25,1); }

details { margin: 10px 0; }
details[open] summary { background: var(--swib-purple); color: #fff; }
details[open] summary:after { transform: rotate(0); }
details[open] summary:hover:after { transform: rotate(0) scale3d(1.25,1.25,1); }

.detailswrap { opacity: 1; padding: 20px; background: #f6f6f6; position: relative; z-index: 1; animation: none; }
.detailswrap .detailswrap { padding: 0; }
.detailswrap > *:first-child { margin-top: 0; }
.detailswrap > *:last-child { margin-bottom: 0; }

details {

  @media (prefers-reduced-motion: no-preference) {
    interpolate-size: allow-keywords;
  }

  &::details-content {
    block-size: 0;
    overflow-y: clip;
	transition: content-visibility 0.5s allow-discrete, block-size 0.5s;
  }

  &[open]::details-content {
    block-size: auto;
  }
}

@supports not (interpolate-size: allow-keywords) {
	details[open] .detailswrap { animation: 0.5s linear details-in; animation-fill-mode: forwards; }
}

@keyframes details-in {
  from {
    transform: translate3d(0,-20px,0);
    opacity: 0;
  }
  to {
    transform: translate3d(0,0,0);
    opacity: 1;
  }
}


.pf-contact main>.wrapper { display: block; }
.pf-contact .sectionwrap { display: none; }
.pf-contact .contentwrap { width: auto; }
.contactwrap { display: grid; grid-template-columns: 1fr 1fr; gap: 25px; }
.contactcontent>*:first-child { margin-top: 0; }
.fl_mailform { margin-top: 15px; }

footer { background: var(--swib-dkpurple); color: #fff; font: 14px/20px "Museo Sans", sans-serif; padding: 35px 0 0; }
footer p.socmed { position: absolute; top: 0; right: 25px; margin: 0; }
.socmed a { display: inline-block; width: 30px; height: 30px; display: inline-block; margin: 0 0 5px 5px; background-color: #fff; background-size: auto 50%; background-repeat: no-repeat; background-position: center; border-radius: 3px; }
.socmed a:first-child { margin-left: 0; }
.socmed a.fb { background-image: url('../gfx/icon-fb.svg'); }
.socmed a.ig { background-image: url('../gfx/icon-ig.svg'); }
.socmed a.li { background-image: url('../gfx/icon-li.svg'); }
footer p.copyright { padding-top: 65px; background: url('../gfx/circles-colourful.svg') no-repeat top left/auto 50px; }
footer p.footerlinks { position: absolute; top: 50px; right: 25px; text-align: right; }
footer p.madeby { background: var(--swib-vdkpurple); text-align: center; margin: 0; padding: 15px 20px; margin-top: 50px; }
footer a { color: inherit; }

.pagetitle .breadcrumbs { animation-duration: 1s; animation-iteration-count: 1; animation-name: slide-in-from-below; animation-fill-mode: forwards; }
.pagetitle h1 { animation-duration: 1.25s; animation-iteration-count: 1; animation-name: slide-in-from-below-with-delay; animation-fill-mode: forwards; text-wrap: balance; }
.pagetitle h1:first-child { animation-duration: 1s; animation-name: slide-in-from-below; }
.pagetitle p { animation-duration: 1.25s; animation-iteration-count: 1; animation-name: slide-in-from-below-with-delay; animation-fill-mode: forwards; }
.hasjs .blockready { opacity: 0; transform: translate3d(0,50px,0); }
.hasjs .blockdisp { animation-duration: 1s; animation-iteration-count: 1; animation-name: slide-in; animation-fill-mode: forwards; }

@keyframes slide-in-from-below {
    0% {
        opacity: 0;
        transform: translate3d(0, 50px, 0);
    }
    5% {
        opacity: 0;
        transform: translate3d(0, 50px, 0);
    }


    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
@keyframes slide-in-from-below-with-delay {
    0% {
        opacity: 0;
        transform: translate3d(0, 50px, 0);
    }
    25% {
        opacity: 0;
        transform: translate3d(0, 50px, 0);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}
@keyframes slide-in {
  0% {
    opacity: 0;
    transform: translate3d(0,25px,0);
  }
  100% {
    opacity: 1;
    transform: translate3d(0,0,0);
  }
}


main label { display: block; font-size: 14px; line-height: 20px; font-weight: 600; margin: 10px 0 5px; }
input, textarea { -webkit-appearance: none; border-radius: 0; width: 100%; box-sizing: border-box; }
input, textarea, .fl_mailform textarea, select, button { font: 14px Inter, sans-serif; color: var(--swib-text); border: 0; background: var(--swib-neutral); width: 100%; margin-right: 5px; display: block; padding: 10px; border-radius: 2px; box-sizing: border-box; height: 40px; position: relative; }
textarea, .fl_mailform textarea { height: 250px; }
input.checkbox, input[type=checkbox] { border: 0; width: auto; display: inline; background: transparent; -webkit-appearance: checkbox; height: auto; }
input:hover, textarea:hover, select:hover { background-color: var(--swib-neutral); }
input:focus, textarea:focus, select:focus { background-color: var(--swib-neutral); color: var(--swib-text); }
label span.reqd { position: absolute; margin-left: 10px; }
input#address1 { margin-bottom: 2px; }

label .helpwrap { position: absolute; margin-left: 10px; cursor: pointer; z-index: 10; }
label:has(span.reqd) .helpwrap { margin-left: 20px; }
label .helpwrap .helpshow { opacity: 0; pointer-events: none; transition: opacity 0.25s; background: #fff; padding: 10px; border: 1px solid var(--swib-pink); font-weight: 400; width: 150px; top: 20px; left: -75px; box-sizing: border-box; position: absolute; }
label .helpwrap:hover { z-index: 11; }
label .helpwrap:hover .helpshow { opacity: 1; pointer-events: auto; cursor: default; }
.helpbutton { display: inline-block; background: var(--swib-pink); color: #fff; padding: 0 6px; position: relative; top: -2px; margin:}

a.button { text-decoration: none; text-align: center; display: inline-block; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; max-width: 100%; box-sizing: border-box; vertical-align: top; }
input.emailsub, input.commentsub, input.formsub, .button, button { display: block; width: auto; font: 500 18px/30px "Museo Sans", sans-serif; height: 40px; margin: 0; padding: 5px 25px; color: #fff!important; border: 0; background: var(--swib-pink); border-radius: 20px; cursor: pointer; text-decoration: none; box-sizing: border-box; }
input.emailsub:hover, input.commentsub:hover, input.formsub:hover, .button:hover, button:hover { transform: scale3d(1.05,1.05,1); opacity: 1; }
input.emailsub, input.commentsub, input.formsub { margin-top: 10px; }
.pf-contact input.emailsub { margin-top: 25px; }
#fl_blogentries .fl_newspreview, .fl_pagelinks { margin-top: 25px; padding-top: 25px; border-top: 1px solid var(--swib-dkneutral); }
#fl_blogentries .fl_newsfirst { margin-top: 0; padding-top: 0; border-top: 0; }
#fl_blogentries .fl_newspreview h2 { margin-top: 0; }
a.button.buttonpurple { background: var(--swib-purple); }
a.button.buttonblue { background: var(--swib-blue); }
a.button.buttongreen { background: var(--swib-green); }

.cardlabel { border-top: 1px solid var(--swib-dkneutral); border-bottom: 1px solid var(--swib-dkneutral); padding: 6px 5px 5px; margin: 0 0 -1px!important; }
.cardlabel:first-of-type { margin-top: 10px!important; }
span.cardgraphic { display: inline-block; background: url('../gfx/cards@2x.png') no-repeat left top; width: 37px; height: 22px; vertical-align: middle; position: relative; top: -2px; background-size: 37px auto; }
span.cardgraphic.applepay { background-position: left bottom; }
span.cardgraphic.amex { background-position: left -66px; }
span.cardgraphic.mastercard { background-position: left -44px; }
span.cardgraphic.visa { background-position: left -22px; }
.cardlabel.expired .details { text-decoration: line-through; }
#card-element { background: var(--swib-neutral); height: 30px; padding: 5px; border-radius: 2px; }
input#paybutton { margin-bottom: 20px; }
#stripe-form { margin-bottom: 20px; border-bottom: 1px solid #eee; }
#stripe-form h3 { margin-top: 20px; }

.reqd, .err, .loginfail { font-weight: 600; color: #c00; }
.reqd { margin: 0 5px; }

a, button, input[type=submit], #searchclose, #fl_popupclose, .eventwrap a .eventimage img, .eventwrap a .eventtitle, .catwrap a:hover .prodname { transition: all 0.25s; }

@media (max-width: 1149px) {
	html, body { min-width: 320px; -webkit-text-size-adjust: none; }
	.page-front .eventwrap { padding-left: 25px; }
	.page-front .eventwrap .scrollend { display: inline-block; flex-shrink: 0; vertical-align: top; height: 20px; width: 25px; }
	.page-front .eventwrap a { width: calc(30vw - 25px); }
	.page-front .eventscrollcont { max-width: none; padding: 0; }
}
@media (max-width: 979px) {
	.cms_imgleft, .cms_imgright { max-width: 250px; }
	.pf-members .subpages { grid-template-columns: repeat(2, 1fr); }
	.partners { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 879px) {
	header { position: sticky; top: 0; left: 0; right: 0; background: #fff; z-index: 11; border-bottom: 1px solid var(--swib-neutral); }
	#menu { position: fixed; top: 0; bottom: 0; left: 0; right: 0; background: #fff; z-index: 40; display: flex; opacity: 0; transform: translate3d(0, -100%, 0); transition: all 0.5s ease-out; }
	.menushown #menu { opacity: 1; transform: translate3d(0,0,0); }
	.fl_menu { align-self: center; text-align: center; width: 100%; }
	.fl_menu li { display: block!important; }
	.fl_menu a { line-height: 50px; margin: 0; }
	.fl_menu ul, .fl_menu>li:after { display: none!important; }
	#menu_i_ a { text-indent: -9999px; background: url('../gfx/swib.svg') no-repeat top / contain; width: 150px; height: 80px; margin-bottom: 20px; }
	#menubutton { display: block; position: fixed; top: 68px; left: 20px; width: 40px; height: 40px; background: transparent; border-radius: 0; z-index: 41; pointer-events: auto; padding: 0; }
	#menubutton .rowbar { position: absolute; top: 19px; left: 11px; width: 18px; height: 3px; background: var(--swib-pink); border-radius: 2px; transition: all 0.5s; }
	#menubutton .rowbar:first-child { top: 13px; }
	#menubutton .rowbar:last-child { top: 25px; }

	.menushown #menubutton .rowbar:first-child, .menushown #menubutton .rowbar:last-child { opacity: 0; }
	.menushown #menubutton .rowbar:nth-child(2) { transform: rotate(-45deg); }
	.menushown #menubutton .rowbar:nth-child(3) { transform: rotate(45deg); }
	
	.subpages, .accountoptions { grid-template-columns: repeat(2, 1fr); }
	.sectionwrap { width: 200px; top: 196px; }
	.contentwrap { width: calc(100% - 200px); }
	.eventright { width: 250px; top: 191px; }
	.eventright .hidesm { display: none; }

	#imgfade:after { background: linear-gradient(to right, rgba(62,59,70,0.9) 55%, rgba(62,59,70,0) 70%); }
	.pagetitle .breadcrumbs, .pagetitle h1, .pagetitle p { max-width: 70%; }
	
	table#guestlist, table#guestlist tbody, table#guestlist tr, table#guestlist td { display: block; }
	table#guestlist thead { display: none; }
	table#guestlist td:before { font: 600 14px/20px Inter, sans-serif; display: block; margin: 10px 0 5px;  }
	table#guestlist tr:before { font: 500 18px/24px "Museo Sans", sans-serif; color: var(--swib-purple); display: block; margin: 25px 0 10px; }
	table#guestlist tr:nth-child(1):before { content: 'Attendee #1'; }
	table#guestlist tr:nth-child(2):before { content: 'Attendee #2'; }
	table#guestlist tr:nth-child(3):before { content: 'Attendee #3'; }
	table#guestlist tr:nth-child(4):before { content: 'Attendee #4'; }
	table#guestlist tr:nth-child(5):before { content: 'Attendee #5'; }
	table#guestlist tr:nth-child(6):before { content: 'Attendee #6'; }
	table#guestlist tr:nth-child(7):before { content: 'Attendee #7'; }
	table#guestlist tr:nth-child(8):before { content: 'Attendee #8'; }
	table#guestlist tr:nth-child(9):before { content: 'Attendee #9'; }
	table#guestlist tr:nth-child(10):before { content: 'Attendee #10'; }
	table#guestlist tr:nth-child(11):before { content: 'Attendee #11'; }
	table#guestlist tr:nth-child(12):before { content: 'Attendee #12'; }
	table#guestlist tr:nth-child(13):before { content: 'Attendee #13'; }
	table#guestlist tr:nth-child(14):before { content: 'Attendee #14'; }
	table#guestlist tr:nth-child(15):before { content: 'Attendee #15'; }
	table#guestlist tr:nth-child(16):before { content: 'Attendee #16'; }
	table#guestlist tr:nth-child(17):before { content: 'Attendee #17'; }
	table#guestlist tr:nth-child(18):before { content: 'Attendee #18'; }
	table#guestlist tr:nth-child(19):before { content: 'Attendee #19'; }
	table#guestlist tr:nth-child(20):before { content: 'Attendee #20'; }
	table#guestlist tr:nth-child(21):before { content: 'Attendee #21'; }
	table#guestlist tr:nth-child(22):before { content: 'Attendee #22'; }
	table#guestlist tr:nth-child(23):before { content: 'Attendee #23'; }
	table#guestlist tr:nth-child(24):before { content: 'Attendee #24'; }
	table#guestlist tr:nth-child(25):before { content: 'Attendee #25'; }
	table#guestlist tr:nth-child(26):before { content: 'Attendee #26'; }
	table#guestlist tr:nth-child(27):before { content: 'Attendee #27'; }
	table#guestlist tr:nth-child(28):before { content: 'Attendee #28'; }
	table#guestlist tr:nth-child(29):before { content: 'Attendee #29'; }
	table#guestlist tr:nth-child(30):before { content: 'Attendee #30'; }
	table#guestlist tr:nth-child(31):before { content: 'Attendee #31'; }
	table#guestlist tr:nth-child(32):before { content: 'Attendee #32'; }
	table#guestlist tr:nth-child(33):before { content: 'Attendee #33'; }
	table#guestlist tr:nth-child(34):before { content: 'Attendee #34'; }
	table#guestlist tr:nth-child(35):before { content: 'Attendee #35'; }
	table#guestlist tr:nth-child(36):before { content: 'Attendee #36'; }
	table#guestlist tr:nth-child(37):before { content: 'Attendee #37'; }
	table#guestlist tr:nth-child(38):before { content: 'Attendee #38'; }
	table#guestlist tr:nth-child(39):before { content: 'Attendee #39'; }
	table#guestlist tr:nth-child(40):before { content: 'Attendee #40'; }
	table#guestlist tr:nth-child(41):before { content: 'Attendee #41'; }
	table#guestlist tr:nth-child(42):before { content: 'Attendee #42'; }
	table#guestlist tr:nth-child(43):before { content: 'Attendee #43'; }
	table#guestlist tr:nth-child(44):before { content: 'Attendee #44'; }
	table#guestlist tr:nth-child(45):before { content: 'Attendee #45'; }
	table#guestlist tr:nth-child(46):before { content: 'Attendee #46'; }
	table#guestlist tr:nth-child(47):before { content: 'Attendee #47'; }
	table#guestlist tr:nth-child(48):before { content: 'Attendee #48'; }
	table#guestlist tr:nth-child(49):before { content: 'Attendee #49'; }
	table#guestlist tr:nth-child(50):before { content: 'Attendee #50'; }

	table#guestlist td:nth-child(1):before { content: 'Name *'; font: 500 14px/20px Inter, sans-serif; display: block; margin: 10px 0 5px;  }
	table#guestlist td:nth-child(2):before { content: 'Description *'; font: 500 14px/20px Inter, sans-serif; display: block; margin: 10px 0 5px;  }
	table#guestlist td:nth-child(3):before { content: 'Email address'; font: 500 14px/20px Inter, sans-serif; display: block; margin: 10px 0 5px;  }
	table#guestlist td:nth-child(4):before { content: 'Menu choice *'; font: 500 14px/20px Inter, sans-serif; display: block; margin: 10px 0 5px;  }
	table#guestlist td:nth-child(5):before { content: 'Allergies'; font: 500 14px/20px Inter, sans-serif; display: block; margin: 10px 0 5px;  }
	table#guestlist td:nth-child(6):before { content: 'Special requirement'; font: 500 14px/20px Inter, sans-serif; display: block; margin: 10px 0 5px;  }
	
}
@media (max-width: 839px) {
	.contactwrap { display: block; }
	.frontabout { padding-right: calc(50% + 25px); }
	.frontabout .aboutimage { width: 50%; }
	.frontabout:after { width: 50%; background: #fff; }
}
@media (max-width: 767px) {
	main>.wrapper { flex-direction: column; }
	.contentwrap { width: 100%; flex-shrink: 0; }
	.sectionwrap { width: 100%; flex-shrink: 0; border-top: 1px solid var(--swib-neutral); margin-top: 25px; position: static; padding: 50px 0 0; }
	.sectionwrap:empty { display: none; }

	.subpages, .accountoptions, .sectionwrap ul { grid-template-columns: repeat(3, 1fr); }
	.eventwrap, .pf-shop .catwrap { grid-template-columns: repeat(2, 1fr); }
	.sectionwrap ul { display: grid; gap: 25px; grid-auto-rows: 1fr; margin: 0; }
	.sectionwrap a { display: block; align-content: center; padding: 20px; text-align: center; color: #fff; background: var(--swib-pink); text-decoration: none; font: 500 18px/22px "Museo Sans", sans-serif; border-radius: 5px; }
	.sectionwrap li { display: inline-grid; margin: 0; }
	.sectionwrap a:hover { transform: scale3d(1.02,1.02,1); opacity: 1; }

	#imgfade:after { background: linear-gradient(to right, rgba(62,59,70,0.9) 75%, rgba(62,59,70,0) 90%); }
	.pagetitle .breadcrumbs, .pagetitle h1, .pagetitle p { max-width: 90%; }

	.frontabout { padding-right: 25px; }
	.frontabout .aboutimage { position: relative; float: right; margin: -25px -25px 25px 25px; top: auto; right: auto; bottom: auto; width: 200px; padding-bottom: 200px; }
	.frontabout:after { display: none; }

	.partners { grid-template-columns: repeat(3, 1fr); }

}
@media (max-width: 649px) {
	html, body { font-size: 14px; line-height: 20px; }
	h1 { font-size: 28px; line-height: 32px; }
	h2 { font-size: 24px; line-height: 28px; }
	h3 { font-size: 20px; line-height: 24px; }
	h4, .memwrap a .membercompany, .pagetitle p { font-size: 18px; line-height: 22px; }
	h5, .subpages a, .accountoptions a, .sectionwrap a, summary, .eventwrap a .eventtitle, .catwrap a .prodname { font-size: 16px; line-height: 20px; }
	.pagetitle .breadcrumbs a { font-size: 14px; }
	.contentwrap ul li:before { margin-top: -2px; }
	.fl_postinfo { margin-top: -5px; }

	.fl_gallinc, .subpages, .accountoptions, .sectionwrap ul { font-size: 16px; line-height: 20px; gap: 15px; }
	.wrapper, .pagetitle { padding: 0 15px; }
	.page-front .eventwrap { margin-bottom: 25px; }
	h1, h2, h3, h4, h5, p, blockquote, ul, ol { margin-top: 15px; margin-bottom: 15px; }
	
	header { padding: 15px 0; }
	#menubutton { top: 20px; left: 10px;}

	.logo { width: 102px; height: 50px; }
	.topright { position: static; }
	.topright a.button, .topright br { display: none; }
	.topright a.buttonmobile { display: block; position: absolute; top: 5px; width: 40px; height: 40px; right: 10px; padding: 0; border-radius: 0; text-indent: -9999px; background: url('../gfx/icon-user.svg') no-repeat center / auto 25px; }
	
	main { margin-bottom: 25px; }
	#imgfade { margin-bottom: 10px; }
	.sectionwrap { padding-top: 25px; margin-top: 10px; }
	
	.pf-members .profileinfo { float: none; display: block; margin: 0 auto 15px; }
	
	footer { padding: 15px 0 0; font-size: 12px; line-height: 18px; }
	footer p.footerlinks { position: static; text-align: left; }
	footer p.madeby { margin-top: 30px; }
	
	.cms_imgleft, .cms_imgright { max-width: 100%; display: block; margin: 15px auto; float: none; }
	
	input, textarea, .fl_mailform textarea, select { font-size: 16px; }

	#imgfade:after { display: none; }
	.pagetitle { align-self: end; padding-bottom: 25px; background: rgba(62,59,70,0.9); position: relative; }
	.pagetitle:before { position: absolute; top: -40px; left: 0; right: 0; height: 40px; background: linear-gradient(to top, rgba(62,59,70,0.9), rgba(62,59,70,0)); content: '';  }
	.pagetitle .breadcrumbs, .pagetitle h1, .pagetitle p { max-width: 100%; }

	.frontabout { padding: 15px; }
	.frontabout .aboutimage { margin: -15px -15px 15px 15px; }

	.page-front .eventwrap { padding-left: 15px; }
	.page-front .eventwrap .scrollend { width: 15px; }
	form#mc-embedded-subscribe-form { padding-top: 10px; margin-top: 25px; }
	.mc-fields-group { grid-template-columns: 1fr; }
	.partners { grid-template-columns: repeat(2, 1fr); }
	
	@keyframes slide-in {
	  0% {
		opacity: 0;
		transform: translate3d(0,15px,0);
	  }
	  100% {
		opacity: 1;
		transform: translate3d(0,0,0);
	  }
	}
	.hasjs .blockready { transform: translate3d(0,25px,0); }
}
@media (max-width: 599px) {
	.eventpage { flex-direction: column-reverse; }
	.eventright { width: 100%; position: static; margin: 25px 0 0; }
	.eventright .hidesm { display: inline; }
	.eventleft .booktop { display: block; }
}
@media (max-width: 549px) {
	.subpages, .accountoptions, .sectionwrap ul { grid-template-columns: repeat(2, 1fr); }
	.frontabout .aboutimage { width: 150px; padding-bottom: 150px; }
	.page-front .eventwrap { gap: 15px; }
	.page-front .eventwrap a { width: calc(45vw - 20px); }
	.page-front .eventwrap a .datevenue .divider { display: block; height: 0; overflow: hidden; }
	.partners { gap: 15px; }
}
@media (max-width: 479px) {
	.pf-members .subpages { grid-template-columns: 1fr; }
	.memberformbox { display: block; width: auto; padding: 0!important; }
	.memberformbox label { margin-top: 10px; }
	.basket td:nth-child(2) { width: 0; padding: 0; text-indent: -9999px; }
	.basket .hidesm { display: none; }
}
@media (max-width: 399px) {
	.pagetitle h1 { max-width: 100%; }
	.page-content .eventwrap, .pf-shop .catwrap { grid-template-columns: 1fr; }
	.page-content .eventwrap a .eventimage { width: 200px; padding-bottom: 200px; }
	.frontabout .aboutimage { width: 100px; padding-bottom: 100px; }
}
@media (max-width: 374px) {
	footer p.socmed { position: static; margin: 15px 0 10px; }
}
@media (max-width: 359px) {
	#recaptcha { transform: scale(0.9); transform-origin: top left; }
	.frontaboutimage { width: 100px; padding-bottom: 100px; }
	.pagetitle { padding-bottom: 15px; }
	.pagetitle p { font-size: 16px; line-height: 20px; }
	.pagetitle h1 { font-size: 24px; line-height: 28px; }
}
@media (max-height: 429px) {
	#menu_i_ a { width: 112px; height: 60px; margin-bottom: 10px; }
	.fl_menu a { line-height: 40px; }
}

.lastupdateboxes { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.searchcats { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; }
.searchcats input { display: inline-block; width: 30px; height: 20px; vertical-align: bottom; }
.searchcats label span { line-height: 40px; }
hr { margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--rm-neutral); }

.result { margin-top: 20px; padding-left: 90px; position: relative; }
.result a.resulttitle { font-size: 1.4em; line-height: 1.4em; font-weight: 600; display: inline-block; margin-bottom: 5px; }
.result img { position: absolute; top: 3px; left: 0; width: 80px; height: 80px!important; object-fit: contain; object-position: center; object-repeat: no-repeat; outline: 1px solid var(--swib-dkneutral); transition: outline 0.5s; }
.result a:hover img { outline-color: var(--swib-pink); }
.resultlu, .resultcat, .resultscore, .resulturl { text-align: right; font-size: 0.8em; line-height: 1.4em; color: #666; }
.resultlu:before { content: 'Last update: '; opacity: 0.8; }
.resultcat:before { content: 'Category: '; opacity: 0.8; }
.resultscore:before { content: 'Score: '; opacity: 0.8; }
.resulturl:before { content: 'URL:\00a0'; opacity: 0.8; }
.resulturl { display: none; }
.pages { margin: 20px 0; line-height: 40px; }
.pages:before { content: 'Pages: '; }
.pages span, .pages a { display: inline-block; height: 40px; box-sizing: border-box; line-height: 38px; border: 1px solid var(--swib-dkneutral); width: 40px; text-align: center; font-size: 0.8em; margin-left: 5px; font-weight: 600; text-decoration: none; }
.pages span { font-style: italic; cursor: default; }
.pages a:hover { background: var(--swib-pink); color: #fff; opacity: 1; }
#resultswrap { position: relative; }
#results { position: absolute; top: -150px; height: 150px; width: 10px; pointer-events: none;}

form#searchform { position: relative; }
button#advancedtoggle { position: absolute; bottom: 0; right: 0; cursor: pointer; background: none; top: auto!important; color: var(--swib-text)!important; font: 500 14px/18px Inter, sans-serif; padding: 0; height: 20px; }
button#advancedtoggle:before { content: 'Show advanced options'; }
#search_advanced { display: none; }
.advancedshow #search_advanced { display: block; }
.advancedshow button#advancedtoggle:before { content: 'Hide advanced options'; }

@media (max-width: 599px) {
	.searchcats { grid-template-columns: 1fr; }
}
@media (max-width: 399px) {
	.result { padding-left: 70px; }
	.result img { width: 60px; height: 60px!important; }
	.lastupdateboxes { grid-template-columns: 1fr; }
}