/*
Theme Name: Life on Mobile Bay
Template: bricks
Version: 1.0
Description: Child theme for Life on Mobile Bay. The design lives in this stylesheet and a handful of Bricks templates.
*/

/* Heading: Gotham Black requested. Montserrat 900 is the free equivalent. Body: Sabon requested. EB Garamond is the closest free Garamond. */
:root{--navy:#0E2A3B;--sky:#BBD9E4;--sky-pale:#E4EFF4;--mag:#D8237F;--amber:#F0B33E;--cream:#F3EEDF;--white:#FFFFFF;--ink:#14232D;--rule:#D6CDB8;
--sans:'Montserrat',system-ui,sans-serif;--serif:'EB Garamond',Georgia,serif}
*{box-sizing:border-box}
body{margin:0;background:var(--sky-pale);color:var(--navy);font-family:var(--serif);font-size:18px;line-height:1.6}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--mag);outline-offset:3px}
img{display:block;max-width:100%}
h1,h2,h3{font-family:var(--sans);font-weight:900;letter-spacing:-.02em;margin:0;color:var(--navy)}
p{margin:0}
.wrap{max-width:1240px;margin:0 auto;padding:0 44px}
@media(max-width:800px){.wrap{padding:0 20px}.top{padding:28px 20px 16px}}
.kick{font-family:var(--sans);font-weight:700;font-size:13px;color:var(--navy)}
.kick.mag{color:var(--mag)}
.btn{display:inline-block;font-family:var(--sans);font-weight:700;font-size:13px;padding:12px 20px;border-radius:999px;background:var(--navy);color:var(--cream);border:0;cursor:pointer}
.btn.mag{background:var(--mag);color:#fff}
/* header */
header{background:var(--navy);color:var(--cream);border-bottom:6px solid var(--amber)}
header .wrap{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;padding-top:14px;padding-bottom:14px}
header .brand{display:flex;align-items:center;gap:22px}
header .brand img{width:140px;height:140px;margin-bottom:-64px;position:relative;z-index:2;filter:drop-shadow(0 4px 10px rgba(14,42,59,.25))}
header .brand .tag{font-style:italic;font-size:28px;line-height:1.15}
header .brand .sub{font-family:var(--sans);font-weight:600;font-size:13px;opacity:.75;margin-top:6px}
header nav{display:flex;gap:28px;align-items:center;font-family:var(--sans);font-weight:700;font-size:15px;padding-top:26px}
header nav a.jubnav{color:var(--amber)}
header nav a:hover{color:var(--amber)}
@media(max-width:900px){header nav{display:none}header .brand img{width:110px;height:110px;margin-bottom:-40px}}
/* body columns */
.top{display:grid;grid-template-columns:1fr 340px;gap:56px;padding:96px 44px 24px;align-items:start}
@media(max-width:1000px){.top{grid-template-columns:1fr}}
.full{padding-top:16px;padding-bottom:64px}
.full .row{grid-template-columns:300px 1fr}
@media(max-width:600px){.full .row{grid-template-columns:1fr}}
.feed h2{font-size:26px;margin-bottom:6px}
.feed .leadpost{margin-bottom:0}
.feed .leadpost img{width:100%;aspect-ratio:1.91/1;object-fit:cover;margin-bottom:16px}
.feed .leadpost h2{font-size:clamp(28px,3vw,40px);line-height:1.02;margin:6px 0 12px}
.feed .leadpost p{font-size:18px}
.feed .leadpost .by{font-family:var(--sans);font-weight:600;font-size:13px;opacity:.8;margin-top:10px}
.feed .sub{color:#4B5A64;margin-bottom:10px}
.feed .row{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:22px 0;border-top:1px solid rgba(14,42,59,.18)}
@media(max-width:600px){.feed .row{grid-template-columns:1fr}}
.feed .row img{width:100%;aspect-ratio:1.91/1;object-fit:cover}
.feed h3{font-size:22px;line-height:1.15;margin:4px 0 8px}
.feed p{font-size:17px;color:var(--navy);opacity:.85}
.feed .kick{display:block}
.feed section + section{margin-top:44px}
.feed .night{background:var(--navy);color:var(--cream);padding:32px 34px;margin-top:44px}
.feed .night h2,.feed .night h3{color:var(--cream)}
.feed .night .row{border-top-color:rgba(243,238,223,.2)}
.feed .night .row:first-of-type{border-top:0;padding-top:8px}
.feed .night p{color:rgba(243,238,223,.85)}
.feed .night .kick{color:var(--amber)}
.feed .night img{border:3px solid var(--white)}
.feed .three{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:700px){.feed .three{grid-template-columns:1fr}}
.feed .three img{width:100%;aspect-ratio:1.91/1;object-fit:cover;margin-bottom:12px}
.feed .three h3{font-size:19px}
/* sidebar */
.side{display:flex;flex-direction:column;gap:24px}
.side .box{background:var(--white);padding:22px 24px}
.side h2{font-size:15px;margin-bottom:10px}
.side .box p{font-size:16px;color:var(--navy);opacity:.85}
.jub{background:var(--white);border:2px solid var(--navy)}
.jub .top{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--rule)}
.jub .crab{width:28px;height:28px;flex:none}
.jub .top h2{margin:0;font-size:15px}
.jub .top span{margin-left:auto;font-family:var(--sans);font-weight:700;font-size:12px;color:var(--mag)}
.jub table{width:100%;border-collapse:collapse;font-family:var(--sans);font-size:13px}
.jub td{padding:9px 18px;border-top:1px solid #E9EEF1}
.jub td:first-child{font-weight:600;color:#4B5A64;width:42%}
.jub td:last-child{font-weight:700;color:var(--navy);text-align:right}
.jub tr:first-child td{border-top:0}
.jub .jfoot{padding:12px 18px;border-top:1px solid var(--rule);font-size:15px}
.jub .foot a{color:var(--mag);font-family:var(--sans);font-weight:700;font-size:13px}
.tides{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;font-family:var(--sans);font-size:13px;margin-top:4px}
.tides b{font-weight:800;color:var(--navy);font-size:18px;display:block}
.side .guide{background:var(--amber);color:var(--navy)}
.side .guide h2{font-size:22px;line-height:1.1;margin-bottom:8px}
.side .guide p{color:var(--navy)}
.side .guide .btn{margin-top:14px}
.side form{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.side input{border:1px solid #CFDCE3;padding:11px 14px;font-family:var(--serif);font-size:16px;background:var(--white)}
.water{height:360px;background:url(assets/bay-water.jpeg) center center/cover no-repeat}
@media(max-width:800px){.water{height:200px}}
footer{background:var(--navy);color:var(--cream);padding:30px 0;font-family:var(--sans);font-size:13px}
footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
footer a{border-bottom:1px solid rgba(243,238,223,.35)}

/* jubilee page */

.jhero{position:relative;padding:110px 0 64px;color:var(--cream);overflow:hidden;isolation:isolate}
.jhero:before{content:"";position:absolute;inset:0;background:url(assets/jubilee-hero.jpeg) center center/cover no-repeat;filter:grayscale(1);z-index:-2}
.jhero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,42,59,.82),rgba(14,42,59,.66));z-index:-1}
.jhero h1{color:var(--cream)}
.jhero .deck{color:rgba(243,238,223,.92)}
.jhero .kick.mag{color:var(--amber)}
.jhero .jub,.jhero .jbox,.jhero .jub .foot,.jhero .tides,.jhero .tides div{color:var(--ink)}
.jhero .grid{display:grid;grid-template-columns:1fr 380px;gap:56px;align-items:start}
@media(max-width:1000px){.jhero .grid{grid-template-columns:1fr}}
.jhero h1{font-size:clamp(38px,5vw,64px);line-height:.98;margin:10px 0 18px;max-width:16ch}
.jhero .deck{font-size:21px;line-height:1.5;max-width:58ch}
.jhero .side{display:flex;flex-direction:column;gap:20px}
.jbox{background:var(--white);padding:22px 24px}
.jbox h2{font-size:15px;margin-bottom:8px}
.sec{padding:56px 0;border-bottom:1px solid rgba(14,42,59,.18)}
.sec h2{font-size:32px;margin-bottom:8px}
.sec .lede{font-size:19px;color:var(--navy);opacity:.85;max-width:60ch;margin-bottom:22px}
.prose{max-width:66ch;font-size:19px;line-height:1.65}
.prose p+p{margin-top:16px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
@media(max-width:900px){.two{grid-template-columns:1fr}}
.signs{list-style:none;margin:0;padding:0;counter-reset:s}
.signs li{counter-increment:s;display:grid;grid-template-columns:52px 1fr;gap:14px;padding:16px 0;border-top:1px solid rgba(14,42,59,.18);font-size:18px;line-height:1.5}
.signs li:before{content:counter(s);font-family:var(--sans);font-weight:900;font-size:24px;color:var(--mag);line-height:1.1}
.signs li b{font-family:var(--sans);font-weight:800;color:var(--navy);display:block;font-size:17px}
.night{background:var(--navy);color:var(--cream);padding:56px 0}
.night h2{color:var(--amber);font-size:32px;margin-bottom:8px}
.night .lede{color:rgba(243,238,223,.85);font-size:19px;max-width:60ch;margin-bottom:22px}
.night .grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:36px}
@media(max-width:900px){.night .grid{grid-template-columns:1fr}}
.night h3{color:var(--cream);font-size:20px;margin-bottom:8px}
.night p{opacity:.9;font-size:17px}
.night a{color:var(--amber);border-bottom:1px solid rgba(240,179,62,.5)}
.log{width:100%;border-collapse:collapse;background:var(--white)}
.log th{font-family:var(--sans);font-weight:800;font-size:13px;text-align:left;padding:12px 16px;background:var(--sky);color:var(--navy)}
.log td{padding:14px 16px;border-top:1px solid #E9EEF1;font-size:17px;vertical-align:top}
.log td:first-child{font-family:var(--sans);font-weight:700;white-space:nowrap}
.log caption{caption-side:bottom;text-align:left;font-family:var(--sans);font-size:13px;padding:10px 0;color:#4B5A64}
.form{background:var(--white);padding:32px 36px;max-width:760px}
@media(max-width:800px){.form{padding:24px 20px}}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:600px){.form .row{grid-template-columns:1fr}}
.form label{display:block;font-family:var(--sans);font-weight:700;font-size:13px;color:var(--navy);margin:16px 0 6px}
.form input,.form select,.form textarea{width:100%;border:1px solid #CFDCE3;padding:11px 14px;font-family:var(--serif);font-size:17px;background:#fff;border-radius:0}
.form textarea{min-height:110px}
.form .checks{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:17px}
.form .checks label{display:inline-flex;align-items:center;gap:8px;margin:0;font-family:var(--serif);font-weight:400;font-size:17px}
.form .checks input{width:auto}
.form .btn{margin-top:22px}
.form .fine{font-size:14px;color:#4B5A64;margin-top:14px}
.faq{max-width:760px}
.faq details{border-top:1px solid rgba(14,42,59,.18);padding:16px 0}
.faq summary{font-family:var(--sans);font-weight:800;font-size:19px;color:var(--navy);cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq p{margin-top:10px;font-size:18px;max-width:66ch}

/* ===== Bricks layer: shared ===== */
img{max-width:100%;height:auto}
#brx-header,#brx-footer{background:none;padding:0}
.navtoggle{display:none;font:700 13px/1 inherit;letter-spacing:.08em;text-transform:uppercase;background:none;border:1px solid currentColor;padding:10px 14px;cursor:pointer;color:inherit}
.single .hero-img,.single a.tag img{width:100%;aspect-ratio:1.91/1;object-fit:cover;margin:22px 0 28px}
.prose{font-size:18px;line-height:1.75;max-width:70ch}
.prose p,.prose ul,.prose ol{margin:0 0 1.25em}
.prose h2{margin:1.6em 0 .5em;font-size:1.6em;line-height:1.15}
.prose h3{margin:1.4em 0 .4em;font-size:1.3em;line-height:1.2}
.prose img{height:auto;margin:1em 0}
.prose a{text-decoration:underline}
.prose figure{margin:1.2em 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
@media(max-width:900px){.cards{grid-template-columns:1fr}}
.card img,.cards a.tag img{width:100%;aspect-ratio:1.91/1;object-fit:cover}
.card h3{font-size:21px;line-height:1.2;margin:12px 0 6px}
.card .dept,.card .date{font-size:13px}
.card .ex{font-size:15px;margin-top:6px}
.pager{margin-top:40px}
.pager ul{display:flex;gap:8px;list-style:none;padding:0;margin:0;flex-wrap:wrap}
.pager a,.pager span{display:inline-block;padding:8px 14px;border:1px solid currentColor;font-size:14px}
.pager .current{opacity:.55}
.notfound{padding:96px 0;text-align:center}
.notfound h1{font-size:clamp(30px,4vw,48px);margin-bottom:14px}
.notfound p{max-width:52ch;margin:0 auto 24px}
.flinks{display:flex;gap:18px;flex-wrap:wrap}
.brxe-form .form-group{margin-top:16px}
.brxe-form label{display:block;font-weight:700;font-size:13px;margin-bottom:6px}
.brxe-form input:not([type=checkbox]):not([type=radio]),.brxe-form select,.brxe-form textarea{width:100%;border:1px solid #CFDCE3;padding:11px 14px;font-size:17px;background:#fff;border-radius:0}
.brxe-form textarea{min-height:110px}
.brxe-form .bricks-button,.brxe-form button[type=submit]{margin-top:22px}

/* ===== Bricks layer: mobile bay ===== */
header img.brand{width:140px;height:140px;margin-bottom:-64px;position:relative;z-index:2;filter:drop-shadow(0 4px 10px rgba(14,42,59,.25))}
@media(max-width:900px){header img.brand{width:110px;height:110px;margin-bottom:-40px}}
header .navtoggle{color:var(--cream);margin-top:26px}
.feed .more{font-family:var(--sans);font-weight:700;font-size:13px;color:var(--mag);display:inline-block;margin:0 0 10px}
.feed .rb .kick{display:block;margin-bottom:2px}
.side .brxe-shortcode>.box,.side .brxe-shortcode>.jub{margin:0}
.jub .src,.box .src{display:block;font-family:var(--sans);font-size:11px;opacity:.6;margin-top:6px}
.jhero .side{display:flex;flex-direction:column;gap:20px}
.jhero .side .box{background:var(--white);padding:22px 24px;color:var(--ink)}
.jhero .side .box h2{font-size:15px;margin-bottom:10px}
.jhero .side .jub{color:var(--ink)}
.prose .more{font-family:var(--sans);font-weight:700;font-size:13px;color:var(--mag)}
.gcol h3{font-size:20px;margin-bottom:8px;color:var(--cream)}
.gcol p{opacity:.9;font-size:17px}
.gcol a{color:var(--amber);border-bottom:1px solid rgba(240,179,62,.5)}
article.single{padding-top:96px;padding-bottom:24px}
article.single h1{font-size:clamp(32px,4vw,52px);line-height:1;margin:8px 0 14px}
article.single .by{font-family:var(--sans);font-weight:600;font-size:13px;opacity:.8}
section.more{padding:40px 44px 64px;border-top:1px solid rgba(14,42,59,.18)}
section.more h2,section.archive h1{font-size:30px;margin-bottom:22px}
section.archive{padding:96px 44px 64px}
section.archive .lede{margin:-10px 0 24px;max-width:60ch;opacity:.85}
section.archive .row{display:grid;grid-template-columns:300px 1fr;gap:24px;padding:22px 0;border-top:1px solid rgba(14,42,59,.18)}
@media(max-width:600px){section.archive .row{grid-template-columns:1fr}}
section.archive .row img{width:100%;aspect-ratio:1.91/1;object-fit:cover}
section.archive .row h3{font-size:22px;line-height:1.15;margin:4px 0 8px}
.pager a{color:var(--navy)}
.jhero,.sec,.night,.wrap.top{position:relative}
.wrap.top{padding-top:96px}
.notfound{padding-top:140px}
.foot{background:var(--navy);color:var(--cream);padding:30px 0;font-family:var(--sans);font-size:13px}
.foot .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
.foot a{border-bottom:1px solid rgba(243,238,223,.35)}
.brxe-form{background:var(--white);padding:32px 36px;max-width:760px}
@media(max-width:800px){.brxe-form{padding:24px 20px}}
.brxe-form label{font-family:var(--sans);color:var(--navy)}
.brxe-form input,.brxe-form select,.brxe-form textarea{font-family:var(--serif)}
.brxe-form .bricks-button{font-family:var(--sans);font-weight:800;font-size:13px;padding:14px 22px;border-radius:999px;background:var(--mag);color:#fff;border:0}
.fine{font-size:14px;color:#4B5A64;margin-top:14px}

/* ===== fixes ===== */
#brx-header{background:var(--navy);border-bottom:6px solid var(--amber);color:var(--cream)}
#brx-header .wrap{display:flex;align-items:flex-start;justify-content:space-between;gap:32px;padding-top:14px;padding-bottom:14px}
#brx-header .brxe-html{display:contents}
.feed section>.more{display:block;margin:0 0 14px}
.feed section>h2{margin-bottom:8px}
.jub .jfoot{padding:12px 18px;border-top:1px solid var(--rule);font-size:15px;background:var(--white);color:var(--ink)}
.jub .jfoot a{color:var(--mag);font-family:var(--sans);font-weight:700;font-size:13px}

/* ===== fixes 2 ===== */
#brx-header{position:relative!important;top:auto!important}
.row>.rb:first-child,.two .row>.rb:first-child{grid-column:1/-1}

/* ===== mobile review 2026-09-05 ===== */
.navtoggle{padding:13px 14px}
.form .options-wrapper,.brxe-form .options-wrapper{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px}
.form .options-wrapper li,.brxe-form .options-wrapper li{display:inline-flex;align-items:center;gap:8px;font-size:17px}
.form .options-wrapper input[type=checkbox],.brxe-form .options-wrapper input[type=checkbox],.brxe-form input[type=checkbox],.brxe-form input[type=radio]{width:auto;flex:none}
.faq summary{position:relative;padding-right:28px}
.faq summary::after{content:"+";position:absolute;right:4px;top:0;font-weight:800;font-size:20px;color:var(--mag)}
.faq details[open] summary::after{content:"\2212"}

.brxe-form legend,.brxe-form .label{font-family:var(--sans);font-weight:700;font-size:13px;letter-spacing:.02em;text-transform:uppercase;color:var(--navy);margin-bottom:6px}

/* ===== mobile adjustments 2026-09-05 (Jamie) ===== */
/* The departments are a plain wrapped menu on phones, not a hamburger. The logo
   stops overhanging so the menu row has somewhere to sit. */
.navtoggle{display:none!important}
@media(max-width:900px){
  #brx-header .wrap{flex-wrap:wrap;align-items:center;gap:0;padding-bottom:0}
  #brx-header .brand img,header .brand img{width:84px;height:84px;margin-bottom:0}
  #brx-header .sitenav{display:flex;flex-direction:row;flex-wrap:wrap;width:100%;gap:8px 16px;
    font-family:var(--sans);font-weight:700;font-size:13px;padding:0 0 14px;margin-top:4px}
}
/* One side padding for every band on phones, and no more 96px of dead space
   above the lead post. These sit after the component rules so the mobile value
   wins on source order. */
@media(max-width:800px){
  .wrap,.full,section.more,section.archive{padding-left:20px;padding-right:20px}
  .wrap.top,.top{padding:24px 20px 8px}
  article.single{padding-top:24px}
  section.archive{padding-top:28px}
  section.more{padding-top:32px;padding-bottom:40px}
  .notfound{padding-top:56px}
}
/* "Everything in X" is a link, not the archive section. It was picking up the
   section padding. On phones it reads better under the posts it belongs to. */
.feed .more,.feed section>.more{padding:0}
@media(max-width:800px){
  .feed section{display:flex;flex-direction:column}
  .feed section>.more{order:99;margin:16px 0 0;padding-top:14px;
    border-top:1px solid rgba(14,42,59,.18);align-self:flex-start}
  .feed .night>.more{border-top-color:rgba(243,238,223,.28)}
}

/* ===== post nav (2026-09-06) ===== */
.pnav{margin-top:44px;padding-top:22px;border-top:1px solid rgba(14,42,59,.18);gap:32px}
.pnav a{width:auto;flex:1 1 0;min-width:0;align-items:flex-start;flex-direction:column;gap:4px}
.pnav .content,.pnav .title{white-space:normal;overflow:visible}
.pnav .next-post{text-align:right;align-items:flex-end;margin-left:auto}
.pnav .hide{display:none}
.pnav .label{font-family:var(--sans);font-weight:700;font-size:13px;text-transform:none;color:var(--mag)}
.pnav .title{font-family:var(--sans);font-weight:800;font-size:19px;line-height:1.15;letter-spacing:-.02em;color:var(--navy)}
.pnav a:hover .title{color:var(--mag)}
/* related posts on singles: the grid was scoped to the home feed only */
section.more .three{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:700px){section.more .three{grid-template-columns:1fr}}
section.more .three img{width:100%;aspect-ratio:1.91/1;object-fit:cover;margin-bottom:12px}
section.more .three h3{font-size:19px;line-height:1.15}

/* ===== single sidebar (2026-09-06) ===== */
.sgrid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start;padding-top:96px;padding-bottom:64px}
@media(max-width:1000px){.sgrid{grid-template-columns:1fr;gap:44px}}
@media(max-width:800px){.sgrid{padding-top:24px;padding-bottom:48px}}
.sgrid article.single,.sgrid article.single{padding:0}
@media(max-width:800px){.sgrid article.single{padding:0}}
.sgrid .side{position:sticky;top:24px}
@media(max-width:1000px){.sgrid .side{position:static}}
.side .box .sitem{padding:11px 0;border-top:1px solid var(--rule)}
.side .box .sitem:first-of-type{border-top:0;padding-top:0}
.side .box .sitem .kick{display:block;font-size:12px;margin-bottom:2px;opacity:.75}
.side .box .sitem h3{font-size:16px;line-height:1.2;margin:0}
.side .box .sitem h3 a:hover{color:var(--mag)}
.side .box ul{list-style:none;margin:0;padding:0}
.side .box li{padding:8px 0;border-top:1px solid var(--rule);font-family:var(--sans);font-weight:700;font-size:14px}
.side .box li:first-child{border-top:0;padding-top:0}
.side .box li a:hover{color:var(--mag)}
