/* Simply Shrimp — static rebuild of the WordPress (Twenty Seventeen) look */
:root{
  --text:#333;--heading:#222;--muted:#767676;--soft:#666;--border:#eee;--red:#cf2e2e;--bg:#fff;
  --font:"Libre Franklin","Helvetica Neue",Helvetica,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.66;font-weight:400}
@media (min-width:30em){body{font-size:18px}}
@media (min-width:48em){body{font-size:16px;line-height:1.5}}
img{max-width:100%;height:auto;display:block}
strong,b{font-weight:700}
a{color:var(--heading);text-decoration:none;box-shadow:inset 0 -1px 0 rgba(15,15,15,1);transition:color .2s,box-shadow .2s,background .2s}
a:hover,a:focus{color:#000;box-shadow:inset 0 0 0 rgba(0,0,0,0),0 3px 0 rgba(0,0,0,1)}
.skip-link{position:absolute;left:-9999px;top:0}
.skip-link:focus{left:8px;top:8px;background:#fff;padding:.5em 1em;z-index:100;box-shadow:none}
.wrap{max-width:1000px;margin:0 auto;padding:0 2em}
@media (min-width:48em){.wrap{padding:0 3em}}

/* Header */
.custom-header{position:relative;background:#333 url(/wp-content/uploads/2019/03/cropped-Shrimp-Header.jpeg) center/cover no-repeat;display:flex;align-items:flex-end}
.custom-header::before{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,0) 0%,rgba(0,0,0,.3) 75%,rgba(0,0,0,.3) 100%)}
.front .custom-header{height:75vh;min-height:360px}
@media (min-width:48em){.front .custom-header{height:calc(100vh - 3.6em);min-height:480px;max-height:1200px}}
.site-branding{position:relative;z-index:1;width:100%;padding:3em 0}
.site-title{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:.08em;line-height:1.25;text-transform:uppercase}
@media (min-width:48em){.site-title{font-size:2.25rem}}
.site-title a,.site-title a:hover,.site-title a:focus{color:#fff;box-shadow:none}
.site-title a:hover{opacity:.85}
.site-description{margin:.25em 0 0;color:#fff;font-size:.8125rem;opacity:.9}
@media (min-width:48em){.site-description{font-size:1rem}}

/* Top menu */
.navigation-top{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:.875rem;font-weight:600;position:relative;z-index:5}
@media (min-width:48em){.navigation-top{position:sticky;top:0}}
.navigation-top .wrap{display:flex;align-items:center}
.menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.menu a{display:block;padding:1.25em;color:var(--heading);box-shadow:none}
.menu li:first-child a{padding-left:0}
.menu a:hover,.menu a:focus,.menu a[aria-current]{color:var(--muted);box-shadow:none}
.menu-scroll-down{margin-left:auto;box-shadow:none;color:var(--heading);font-size:1.2rem;line-height:1;padding:.5em}
.menu-scroll-down:hover,.menu-scroll-down:focus{box-shadow:none;color:var(--muted)}
.menu-toggle{display:none}
@media (max-width:47.99em){
  .navigation-top .wrap{flex-wrap:wrap}
  .menu-toggle{display:flex;gap:.7em;align-items:center;background:none;border:0;font:inherit;font-weight:600;color:var(--heading);padding:1em 0;margin:0 auto;cursor:pointer}
  .menu-toggle .bars{width:16px;height:2px;background:currentColor;position:relative;display:inline-block}
  .menu-toggle .bars::before,.menu-toggle .bars::after{content:"";position:absolute;left:0;width:16px;height:2px;background:currentColor}
  .menu-toggle .bars::before{top:-5px}
  .menu-toggle .bars::after{top:5px}
  .menu{display:none;width:100%;flex-direction:column;border-top:1px solid var(--border)}
  .navigation-top.open .menu{display:flex}
  .menu a,.menu li:first-child a{padding:.9em 0;border-bottom:1px solid var(--border)}
  .menu li:last-child a{border-bottom:0}
  .menu-scroll-down{display:none}
}

/* Panels and pages */
.panel+.panel{border-top:1px solid var(--border)}
.panel-content{padding:3.5em 0}
@media (min-width:48em){.panel-content{padding:6.5em 0}}
.front .panel-content .wrap{max-width:740px}
.inner .panel-content .wrap{max-width:836px}
.entry-header{margin-bottom:2em}
@media (min-width:48em){.entry-header{margin-bottom:3.5em}}
.entry-title{margin:0;color:var(--heading);font-size:.875rem;font-weight:800;letter-spacing:.14em;line-height:1.4;text-transform:uppercase}
.entry-title a{box-shadow:none}
.entry-title a:hover,.entry-title a:focus{box-shadow:none;color:var(--muted)}
.entry-content p{margin:0 0 1.5em}
.entry-content .lead{color:var(--soft);font-size:1.25rem;font-weight:300;line-height:1.4}
@media (min-width:48em){.entry-content .lead{font-size:1.625rem}}
.entry-content .lead-sm{color:var(--text);font-size:1.125rem;font-weight:300;line-height:1.4}
@media (min-width:48em){.entry-content .lead-sm{font-size:1.375rem}}
.entry-content .red{color:var(--red)}
.entry-content figure{margin:0 0 1.5em}
.entry-content figure img{width:100%}
.entry-content figure.portrait img{width:auto;max-width:100%}
.entry-content hr{border:0;border-top:1px solid #bbb;margin:0 0 2.5em}
.entry-content .news-heading{font-size:1.5rem;font-weight:300;line-height:1.4;color:var(--text);margin:0 0 1.75em}
@media (min-width:48em){.entry-content .news-heading{font-size:1.625rem}}
.button-columns{display:grid;grid-template-columns:1fr 1fr;gap:0 2em}
.button-columns>div{display:flex;flex-direction:column;align-items:flex-start}
@media (max-width:29.99em){.button-columns{grid-template-columns:1fr}}
.button{display:inline-block;background:#222;color:#fff;box-shadow:none;border-radius:9999px;padding:.75em 1.5em;font-size:.875rem;font-weight:800;line-height:1.3;margin:0 0 1em}
.button:hover,.button:focus{background:#767676;color:#fff;box-shadow:none}
.faq-q{margin-bottom:.75em!important}

/* Share links */
.share{margin-top:1.5em}
.share-title{font-size:.75rem;font-weight:800;margin:0 0 .6em;color:var(--heading)}
.share-btn{display:inline-block;border:1px solid #ccc;border-radius:3px;padding:.3em .85em;font-size:.75rem;color:#555;box-shadow:none;margin:0 .35em .35em 0}
.share-btn:hover,.share-btn:focus{border-color:#888;color:#222;box-shadow:none}

/* Big photo between panels, and the About page's header photo */
.panel-image{height:60vw;min-height:200px;max-height:60vh;background-position:center;background-size:cover;background-repeat:no-repeat}
@media (min-width:48em){.panel-image{height:100vh;max-height:1200px;min-height:0}}
@media (min-width:48em) and (hover:hover){.panel-image{background-attachment:fixed}}
.featured-image{background:#fafafa;border-bottom:1px solid var(--border)}
.featured-image img{width:100%}

/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}
@media (max-width:47.99em){.gallery{grid-template-columns:repeat(3,1fr)}}
@media (max-width:29.99em){.gallery{grid-template-columns:repeat(2,1fr)}}
.gallery-item{display:block;overflow:hidden;background:#eee;box-shadow:none}
.gallery-item:hover,.gallery-item:focus{box-shadow:none}
.gallery-item img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .35s,opacity .35s}
.gallery-item:hover img,.gallery-item:focus img{transform:scale(1.06);opacity:.9}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:1000}
.lightbox.open{display:flex}
.lightbox img{max-width:92vw;max-height:86vh;width:auto;height:auto}
.lightbox button{position:absolute;background:rgba(0,0,0,.45);border:0;color:#fff;font:300 2.25rem/1 var(--font);padding:.3em .55em;cursor:pointer}
.lightbox button:hover,.lightbox button:focus{background:rgba(255,255,255,.15)}
.lb-close{top:.4em;right:.4em}
.lb-prev{left:.4em;top:50%;transform:translateY(-50%)}
.lb-next{right:.4em;top:50%;transform:translateY(-50%)}
.lb-count{position:absolute;bottom:1em;left:0;right:0;text-align:center;color:#bbb;font-size:.8rem}

/* Footer */
.site-footer{border-top:1px solid var(--border);font-size:.875rem;padding:2.5em 0 2em}
@media (min-width:48em){.site-footer{padding:3em 0 3.5em}}
.widget-area{display:grid;grid-template-columns:1fr;gap:1.5em}
@media (min-width:48em){.widget-area{grid-template-columns:36% 58%;column-gap:6%}}
.widget-title{font-size:.875rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--heading);margin:0 0 1.5em}
.widget p{margin:0 0 1em;line-height:1.6}
.widget a.plain{box-shadow:none}
.widget-map iframe{display:block;width:100%;max-width:100%}
@media (min-width:48em){.widget-map{padding-top:3.2em}}
.social-navigation{margin:2.5em 0 1.25em;display:flex;gap:.5em;flex-wrap:wrap}
.social-navigation a{display:inline-block;background:#767676;color:#fff;border-radius:9999px;padding:.45em 1.05em;font-size:.8125rem;font-weight:600;box-shadow:none}
.social-navigation a:hover,.social-navigation a:focus{background:#333;color:#fff;box-shadow:none}
.site-info{color:var(--muted);font-size:.8125rem}
