@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=DM+Serif+Display:ital@0;1&family=Oswald:wght@500;600;700&display=swap');
:root{--ink:#101a1e;--paper:#f3efdf;--orange:#f04b20;--blue:#91d1e6;--yellow:#f5bc18;--line:#a9afa8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.masthead{height:96px;display:flex;align-items:center;padding:0 3vw;border-bottom:2px solid var(--ink);gap:24px;background:var(--paper);position:relative;z-index:5}.mini-logo img{width:66px;height:66px;object-fit:contain}.mast-title{border-left:1px solid var(--line);padding-left:20px;display:flex;flex-direction:column;line-height:1}.mast-title span{text-transform:uppercase;font-size:8px;letter-spacing:.2em;margin-bottom:5px}.mast-title b{font:600 23px 'Oswald';letter-spacing:.05em}.masthead nav{display:flex;gap:28px;margin-left:auto;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.masthead nav a:hover{color:var(--orange)}.issue{background:var(--orange);color:#fff;padding:15px 18px;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.alt-hero{height:780px;display:grid;grid-template-columns:55% 45%;position:relative;border-bottom:2px solid var(--ink);overflow:hidden}.hero-map{position:relative;border-right:2px solid var(--ink);overflow:hidden}.hero-map img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.04)}.hero-map:after{content:'';position:absolute;inset:0;box-shadow:inset -80px 0 100px rgba(0,0,0,.12);pointer-events:none}.map-label{position:absolute;bottom:32px;left:35px;background:var(--paper);border:2px solid var(--ink);padding:15px 22px;font:600 15px 'Oswald';text-transform:uppercase;transform:rotate(-2deg)}.hero-panel{background:var(--blue);padding:55px 5vw;display:flex;flex-direction:column;justify-content:center}.kicker,.chapter{text-transform:uppercase;letter-spacing:.18em;font-size:10px;font-weight:700}.hero-panel h1{font:700 clamp(68px,7vw,112px)/.82 'Oswald';letter-spacing:-.045em;margin:30px 0}.hero-panel h1 em{font-family:'DM Serif Display';font-weight:400;color:var(--orange);font-size:.86em}.deck{max-width:540px;font-size:17px;line-height:1.6;border-top:1px solid var(--ink);padding-top:20px}.hero-buttons{display:flex;gap:12px;margin-top:22px}.hero-buttons a{border:1px solid var(--ink);padding:14px 16px;text-transform:uppercase;font-size:9px;letter-spacing:.1em;font-weight:700}.hero-buttons a:first-child{background:var(--ink);color:white}.side-note{position:absolute;right:0;top:0;height:100%;writing-mode:vertical-rl;padding:20px 10px;background:var(--yellow);font:600 9px 'Oswald';letter-spacing:.2em}.side-note b{color:var(--orange);padding:8px 0}.quick-strip{display:grid;grid-template-columns:1.5fr repeat(6,1fr);border-bottom:2px solid var(--ink);background:var(--paper)}.quick-strip>*{padding:19px 18px;border-right:1px solid var(--ink);font-size:10px;text-transform:uppercase;font-weight:700}.quick-strip span{background:var(--yellow)}.quick-strip a:hover{background:var(--orange);color:white}.editorial-intro{padding:105px 7vw 80px;display:grid;grid-template-columns:1fr 3fr;gap:50px}.editorial-intro>div{display:grid;grid-template-columns:1.4fr .7fr;gap:60px;align-items:end}.editorial-intro h2,.guide-feature h2,.shop-section h2{font:400 clamp(52px,6vw,90px)/.95 'DM Serif Display';margin:0}.editorial-intro h2 i,.guide-feature h2 i,.shop-section h2 i{color:var(--orange);font-weight:400}.editorial-intro>div>p{line-height:1.7;color:#566268;margin:0}.directory{display:grid;grid-template-columns:260px 1fr;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.directory aside{padding:32px 28px;border-right:2px solid var(--ink);position:sticky;top:0;align-self:start}.directory aside>p{text-transform:uppercase;font-size:9px;letter-spacing:.2em;color:var(--orange);font-weight:700}.directory aside>a{display:block;border-bottom:1px solid var(--line);padding:9px 0;font:500 11px 'Oswald';text-transform:uppercase}.directory aside>a:hover{padding-left:6px;color:var(--orange)}.count{margin-top:55px;display:flex;align-items:end;gap:10px}.count b{font:400 65px 'DM Serif Display';color:var(--orange)}.count span{font-size:9px;text-transform:uppercase;width:70px;padding-bottom:12px}.place-list article{min-height:180px;border-bottom:1px solid var(--ink);display:grid;grid-template-columns:60px 1.4fr .7fr;gap:24px;padding:28px 35px;align-items:center;position:relative}.place-list article:last-child{border:0}.place-list article.featured:before{content:'★';position:absolute;right:12px;top:10px;color:var(--orange)}.place-list article:hover{background:#fffaf0}.place-index{font:600 11px 'Oswald';color:var(--orange);align-self:start}.place-cat{font-size:9px;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:#637076}.place-main h3{font:400 clamp(28px,3vw,44px) 'DM Serif Display';margin:8px 0}.place-main p{font-size:12px;margin:0;color:#637076}.place-meta{font-size:11px;line-height:1.6}.place-meta a{display:inline-block;margin-top:20px;text-transform:uppercase;font-size:9px;letter-spacing:.1em;font-weight:700;border-bottom:1px solid}.guide-feature{background:var(--orange);color:white;min-height:620px;padding:90px 7vw;display:grid;grid-template-columns:.7fr 1.3fr .7fr;gap:60px;align-items:center;overflow:hidden}.guide-number{font:700 180px 'Oswald';color:var(--yellow);transform:rotate(-90deg);white-space:nowrap}.chapter.light{color:var(--yellow)}.guide-feature h2 i{color:var(--yellow)}.guide-feature p:not(.chapter){max-width:600px;line-height:1.7}.guide-feature a{display:inline-flex;background:var(--ink);padding:16px 18px;margin-top:18px;text-transform:uppercase;font-size:10px;letter-spacing:.12em;font-weight:700;gap:50px}.guide-feature img{width:300px;filter:drop-shadow(0 20px 22px rgba(0,0,0,.25));transform:rotate(8deg)}.shop-section{padding:110px 7vw;display:grid;grid-template-columns:1.1fr .9fr;gap:9vw;align-items:center}.shop-photo{position:relative}.shop-photo img{width:100%;height:620px;object-fit:cover}.shop-photo span{position:absolute;bottom:0;right:0;background:var(--yellow);padding:16px;text-transform:uppercase;font-size:9px;letter-spacing:.15em;font-weight:700}.shop-section>div:last-child>p:not(.chapter){line-height:1.7;color:#59666b}.shop-section dl{border-top:1px solid var(--line);margin:35px 0}.shop-section dt{font-size:9px;text-transform:uppercase;color:var(--orange);font-weight:700;letter-spacing:.12em;padding-top:16px}.shop-section dd{margin:7px 0 16px;line-height:1.6}.black-button{display:inline-block;background:var(--ink);color:white;padding:16px 19px;text-transform:uppercase;font-size:9px;letter-spacing:.12em;font-weight:700}.ad-banner{background:var(--yellow);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:28px 5vw;display:flex;justify-content:space-between;font:600 18px 'Oswald';text-transform:uppercase}.ad-banner a{color:var(--orange)}footer{background:var(--ink);color:white;padding:60px 6vw 25px;display:grid;grid-template-columns:100px 1fr 1fr;align-items:center;gap:30px}footer img{width:90px}footer>div{display:flex;flex-direction:column}footer>div b{font:600 25px 'Oswald';letter-spacing:.06em}footer>div span{font-size:10px;text-transform:uppercase;color:#9da8ab;letter-spacing:.12em}.footer-links{display:flex!important;flex-direction:row!important;gap:24px;justify-content:flex-end;font-size:10px;text-transform:uppercase}.footer-links a:hover{color:var(--yellow)}footer>p{grid-column:1/-1;border-top:1px solid #425159;padding-top:20px;font-size:9px;color:#7d8b90}
@media(max-width:950px){.masthead nav{display:none}.alt-hero{grid-template-columns:1fr;height:auto}.hero-map{height:520px;border-right:0;border-bottom:2px solid var(--ink)}.hero-panel{min-height:620px}.quick-strip{grid-template-columns:repeat(3,1fr)}.quick-strip span{grid-column:1/-1}.editorial-intro{grid-template-columns:1fr}.editorial-intro>div{grid-template-columns:1fr}.guide-feature{grid-template-columns:1fr 1fr}.guide-number{display:none}.shop-section{grid-template-columns:1fr}.shop-photo img{height:480px}}
@media(max-width:650px){.masthead{height:76px;padding:0 15px}.mini-logo img{width:52px;height:52px}.mast-title span{display:none}.mast-title b{font-size:17px}.issue{font-size:8px;margin-left:auto}.alt-hero{display:flex;flex-direction:column}.hero-map{height:360px}.hero-panel{min-height:600px;padding:45px 25px}.hero-panel h1{font-size:63px}.hero-buttons{flex-direction:column}.side-note{display:none}.quick-strip{grid-template-columns:1fr 1fr}.editorial-intro{padding:75px 22px 55px}.directory{grid-template-columns:1fr}.directory aside{position:relative;border-right:0;border-bottom:2px solid var(--ink);display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.directory aside>p,.count{grid-column:1/-1}.place-list article{grid-template-columns:35px 1fr;padding:25px 18px}.place-meta{grid-column:2}.guide-feature{grid-template-columns:1fr;padding:75px 25px}.guide-feature img{width:190px;margin:20px auto 0}.shop-section{padding:75px 22px}.shop-photo img{height:350px}.ad-banner{flex-direction:column;gap:15px;font-size:15px}footer{grid-template-columns:70px 1fr}.footer-links{grid-column:1/-1;justify-content:flex-start!important;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.masthead.sitewide{position:sticky;top:0}.masthead.sitewide nav{align-items:center}.masthead details{position:relative}.masthead summary{list-style:none;cursor:pointer}.masthead summary::-webkit-details-marker{display:none}.masthead summary:after{content:" +";color:var(--orange)}.mega-menu{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));position:absolute;top:34px;left:-190px;background:var(--paper);border:2px solid var(--ink);padding:16px;width:550px;box-shadow:8px 8px 0 var(--orange)}.mega-menu a{padding:9px;border-bottom:1px solid var(--line);font:500 11px 'DM Sans';text-transform:none;letter-spacing:0}.mega-menu a span{display:inline-block;width:27px;color:var(--orange);font:600 9px 'Oswald'}.mega-menu .menu-all{grid-column:1/-1;background:var(--ink);color:white;text-transform:uppercase;letter-spacing:.1em;font-size:9px}.page-hero{min-height:480px;display:grid;grid-template-columns:1.2fr .8fr;border-bottom:2px solid var(--ink);overflow:hidden}.page-hero>div{padding:90px 7vw;display:flex;flex-direction:column;justify-content:center}.page-hero.blue>div{background:var(--blue)}.page-hero.yellow>div{background:var(--yellow)}.page-hero.orange>div{background:var(--orange);color:white}.page-hero h1,.category-hero h1{font:700 clamp(64px,8vw,120px)/.88 'Oswald';letter-spacing:-.04em;margin:20px 0;text-transform:uppercase}.page-hero>div>p:last-child{max-width:650px;font-size:17px;line-height:1.6}.page-hero>img{width:100%;height:100%;object-fit:cover}.category-index{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--ink);margin:80px 5vw 110px}.category-index>a{min-height:260px;padding:25px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);border-top:1px solid var(--ink);transition:.2s}.category-index>a:nth-child(n+5){border-top:0}.category-index>a:hover{background:var(--orange);color:white}.category-index>a>span{font:600 10px 'Oswald';color:var(--orange)}.category-index>a:hover>span{color:var(--yellow)}.category-index h2{font:400 30px/1.05 'DM Serif Display';margin:35px 0 12px}.category-index p{font-size:11px;color:#657176}.category-index b{display:block;margin-top:34px;font-size:9px;text-transform:uppercase;letter-spacing:.1em}.category-hero{min-height:440px;background:var(--blue);display:grid;grid-template-columns:1fr auto;align-items:end;padding:75px 7vw 55px;border-bottom:2px solid var(--ink)}.category-hero>div>p:last-child{max-width:700px;line-height:1.7}.category-hero>span{font:700 120px 'Oswald';color:var(--orange);display:flex;flex-direction:column;line-height:.7;text-align:right}.category-hero>span small{font:700 9px 'DM Sans';text-transform:uppercase;letter-spacing:.15em;color:var(--ink);margin-top:22px}.category-toolbar{padding:18px 5vw;display:flex;justify-content:space-between;border-bottom:2px solid var(--ink);font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.listing-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:70px 5vw 100px;gap:1px;background:var(--line)}.listing-grid article{background:var(--paper);padding:25px;min-height:290px;display:flex;flex-direction:column;position:relative}.listing-grid article.featured{background:#fff4cd}.listing-num{font:600 10px 'Oswald';color:var(--orange)}.feature-star{position:absolute;right:20px;top:20px;font-size:8px;text-transform:uppercase;color:var(--orange);letter-spacing:.1em}.listing-grid h2{font:400 30px/1.05 'DM Serif Display';margin:40px 0 12px}.listing-grid p{font-size:11px;line-height:1.6;color:#657176}.listing-grid article>a{font-size:11px;margin-top:8px}.listing-site{margin-top:auto!important;text-transform:uppercase;font-size:9px!important;letter-spacing:.1em;font-weight:700;border-top:1px solid var(--line);padding-top:14px}.next-category{padding:30px 5vw;background:var(--yellow);text-align:right;font:600 20px 'Oswald';text-transform:uppercase}.split-story,.events-intro,.ad-overview,.contact-layout{padding:100px 7vw;display:grid;grid-template-columns:1fr 1fr;gap:9vw}.split-story h2,.events-intro h2,.ad-overview h2,.contact-layout h2{font:400 clamp(48px,6vw,80px)/.95 'DM Serif Display';margin:25px 0}.split-story h2 i,.events-intro h2 i,.ad-overview h2 i,.contact-layout h2 i{color:var(--orange)}.split-story>div:last-child p,.events-intro>p{line-height:1.8;color:#59666b}.values-grid,.ad-options{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.values-grid article,.ad-options article{padding:55px 4vw;border-right:1px solid var(--ink)}.values-grid article:last-child,.ad-options article:last-child{border:0}.values-grid b,.ad-options span{font:600 11px 'Oswald';color:var(--orange)}.values-grid h3,.ad-options h3{font:400 36px 'DM Serif Display';margin:35px 0 12px}.values-grid p,.ad-options p{font-size:12px;line-height:1.7;color:#647176}.venue-list{display:grid;grid-template-columns:repeat(2,1fr);margin:0 7vw 100px;border-top:1px solid var(--ink)}.venue-list a{padding:32px 10px;border-bottom:1px solid var(--ink);display:grid;grid-template-columns:50px 1fr auto;align-items:center}.venue-list h3{font:400 31px 'DM Serif Display';margin:0}.venue-list span,.venue-list b{font-size:9px;text-transform:uppercase;letter-spacing:.1em}.venue-list span{color:var(--orange)}.big-stats{display:grid;grid-template-columns:1fr;border-left:1px solid var(--line)}.big-stats span{padding:20px 35px;border-bottom:1px solid var(--line);text-transform:uppercase;font-size:9px;letter-spacing:.12em}.big-stats b{display:block;font:700 65px 'Oswald';color:var(--orange)}.contact-band{background:var(--yellow);padding:50px 7vw;display:flex;align-items:center;justify-content:space-between}.contact-band h2{font:400 38px 'DM Serif Display';margin:0}.contact-band a{background:var(--ink);color:white;padding:17px;text-transform:uppercase;font-size:9px;letter-spacing:.1em;font-weight:700}.contact-layout address{font-style:normal;line-height:1.8;margin:35px 0}.contact-layout form{display:grid;gap:18px}.contact-layout label{display:flex;flex-direction:column;gap:8px;text-transform:uppercase;font-size:9px;letter-spacing:.12em;font-weight:700}.contact-layout input,.contact-layout select,.contact-layout textarea{font:400 15px 'DM Sans';padding:14px;border:1px solid var(--ink);background:#fffdf5;border-radius:0}.contact-layout button{background:var(--orange);color:white;border:0;padding:17px;font:700 10px 'DM Sans';text-transform:uppercase;letter-spacing:.12em;cursor:pointer}
@media(max-width:1100px){.masthead.sitewide nav>a:nth-of-type(1),.masthead.sitewide nav>a:nth-of-type(2){display:none}.category-index{grid-template-columns:repeat(3,1fr)}.category-index>a:nth-child(n){border-top:1px solid var(--ink)}}
@media(max-width:760px){.masthead.sitewide nav{display:flex}.masthead.sitewide nav>a{display:none!important}.masthead.sitewide details summary{font-size:0}.masthead.sitewide details summary:before{content:"Explore";font-size:10px}.mega-menu{position:fixed;left:12px;right:12px;top:70px;width:auto;grid-template-columns:1fr 1fr;max-height:75vh;overflow:auto}.page-hero{grid-template-columns:1fr}.page-hero>div{padding:65px 24px}.page-hero>img{height:300px}.category-index{grid-template-columns:1fr 1fr;margin:55px 18px}.category-index>a{min-height:220px}.category-index h2{font-size:24px}.category-hero{grid-template-columns:1fr;padding:60px 22px 40px}.category-hero>span{font-size:75px;margin-top:35px;text-align:left}.listing-grid{grid-template-columns:1fr;padding:40px 18px 70px}.listing-grid article{min-height:240px}.split-story,.events-intro,.ad-overview,.contact-layout{grid-template-columns:1fr;padding:70px 22px}.values-grid,.ad-options{grid-template-columns:1fr}.values-grid article,.ad-options article{border-right:0;border-bottom:1px solid var(--ink)}.venue-list{grid-template-columns:1fr;margin:0 22px 70px}.venue-list a{grid-template-columns:35px 1fr}.venue-list b{grid-column:2;margin-top:12px}.contact-band{align-items:flex-start;flex-direction:column;gap:25px}}

.site-header-wrap{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:2px solid var(--ink)}.mast-top{height:76px;display:flex;align-items:center;padding:0 4vw;gap:20px}.mast-top .mini-logo img{width:58px;height:58px}.mast-top>p{margin-left:auto;text-transform:uppercase;font:600 9px 'Oswald';letter-spacing:.18em;color:#69757a}.primary-nav{height:48px;display:flex;align-items:stretch;padding:0 4vw;border-top:1px solid var(--line);background:#fffaf0}.primary-nav>a,.primary-nav>details>summary{display:flex;align-items:center;padding:0 24px;border-right:1px solid var(--line);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;white-space:nowrap}.primary-nav>a:first-child{border-left:1px solid var(--line)}.primary-nav>a:hover,.primary-nav>details:hover>summary,.primary-nav>details[open]>summary{background:var(--orange);color:white}.primary-nav details{position:relative}.primary-nav summary{list-style:none;cursor:pointer}.primary-nav summary::-webkit-details-marker{display:none}.primary-nav summary span{color:var(--orange);font-size:15px;margin-left:10px}.primary-nav details[open] summary span,.primary-nav details:hover summary span{color:var(--yellow)}.primary-nav .mega-menu{top:48px;left:0;width:min(720px,92vw);grid-template-columns:repeat(2,minmax(250px,1fr));box-shadow:8px 8px 0 var(--orange)}.primary-nav details:hover .mega-menu{display:grid}.primary-nav .mega-menu a:hover{background:#fff;color:var(--orange);padding-left:14px}
@media(max-width:1000px){.mast-top>p{display:none}.primary-nav{overflow:visible}.primary-nav>a,.primary-nav>details>summary{padding:0 14px;font-size:9px}.primary-nav>a:first-child{display:none}.primary-nav .mega-menu{left:-120px}}
@media(max-width:720px){.mast-top{height:70px;padding:0 14px}.mast-top .mast-title span{display:none}.mast-top .mast-title b{font-size:17px}.mast-top .issue{font-size:8px;margin-left:auto;padding:12px}.primary-nav{height:46px;padding:0}.primary-nav>a{display:none}.primary-nav>details{width:100%}.primary-nav>details>summary{height:46px;justify-content:center;border:0;font-size:10px}.primary-nav>details>summary:before{content:"Browse "}.primary-nav .mega-menu{position:fixed;top:116px;left:10px;right:10px;width:auto;grid-template-columns:1fr 1fr;max-height:calc(100vh - 135px);overflow:auto}.primary-nav .mega-menu a{font-size:10px;padding:11px 8px}}

/* Yellow Pages directory: one company per full-width row. */
.place-list article{min-height:0;grid-template-columns:minmax(240px,1.5fr) minmax(220px,1.2fr) minmax(150px,.7fr) minmax(220px,1fr);gap:24px;padding:22px 30px;align-items:start;background:#fff8cf}
.place-list article:nth-child(even){background:#fffdf0}
.place-list article:hover{background:#ffe889}
.place-list article.featured:before{display:none}
.yp-field>span,.yellow-pages article>div>span{display:block;margin-bottom:7px;color:#725e00;font:700 8px 'DM Sans';letter-spacing:.14em;text-transform:uppercase}
.yp-field h3{font:700 22px/1.15 'Oswald';margin:0;text-transform:uppercase;letter-spacing:.01em}
.yp-field p,.yp-field a{font-size:12px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.yp-field a{text-decoration:underline;text-underline-offset:3px}
.listing-grid.yellow-pages{display:block;padding:35px 5vw 80px;background:#dfcf7d}
.yellow-pages article{min-height:0;display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(220px,1.2fr) minmax(150px,.7fr) minmax(220px,1fr);gap:24px;padding:22px 26px;border-bottom:1px solid #8d7c2d;background:#fff8cf}
.yellow-pages article:nth-child(even){background:#fffdf0}
.yellow-pages article:hover{background:#ffe889}
.yellow-pages article.featured{background:#fff2ad}
.yellow-pages h2{font:700 22px/1.15 'Oswald';margin:0;text-transform:uppercase;letter-spacing:.01em}
.yellow-pages p,.yellow-pages article>div>a{font-size:12px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.yellow-pages .listing-site{margin:0!important;padding:0;border:0;text-transform:none;font-size:12px!important;letter-spacing:0;font-weight:400;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.place-list article,.yellow-pages article{grid-template-columns:1fr 1fr}.listing-grid.yellow-pages{padding:25px 18px 60px}}
@media(max-width:560px){.place-list article,.yellow-pages article{grid-template-columns:1fr;gap:16px;padding:21px 18px}.yp-field h3,.yellow-pages h2{font-size:20px}}

/* Four-line directory listings without field labels. */
.place-list article,.yellow-pages article{display:flex;flex-direction:column;gap:5px;padding:20px 28px}
.place-list article h3,.yellow-pages article h2{font:700 22px/1.2 'Oswald';margin:0 0 3px;text-transform:uppercase;letter-spacing:.01em}
.place-list article p,.place-list article>a,.yellow-pages article p,.yellow-pages article>a{display:block;font-size:12px;line-height:1.45;margin:0;overflow-wrap:anywhere}
.place-list article>a,.yellow-pages article>a{text-decoration:underline;text-underline-offset:3px}
.yellow-pages .listing-site{margin:0!important}
@media(max-width:560px){.place-list article,.yellow-pages article{gap:5px;padding:18px}.place-list article h3,.yellow-pages article h2{font-size:20px}}

/* Single-row masthead with an enlarged, circular-cropped logo. */
.mast-top{height:138px;padding:0 3vw;gap:22px}
.mast-top .mini-logo{width:116px;height:116px;flex:0 0 116px;border-radius:50%;overflow:hidden}
.mast-top .mini-logo img{width:116px;height:116px;max-width:none;object-fit:cover;border-radius:50%;transform:scale(1.015)}
.mast-top .mast-title{flex:0 0 178px;padding-left:16px}
.mast-top .mast-title span{font-size:8px}
.mast-top .mast-title b{font-size:22px}
.mast-top .primary-nav{height:52px;flex:1;padding:0;border:1px solid var(--line);margin-left:8px;background:#fffaf0}
.mast-top .primary-nav>a,.mast-top .primary-nav>details>summary{padding:0 clamp(10px,1.2vw,20px)}
.mast-top .primary-nav .mega-menu{top:51px}
@media(max-width:1120px){.mast-top{gap:12px}.mast-top .mini-logo{width:96px;height:96px;flex-basis:96px}.mast-top .mini-logo img{width:96px;height:96px}.mast-top .mast-title{flex-basis:145px}.mast-top .mast-title b{font-size:18px}.mast-top .primary-nav>a,.mast-top .primary-nav>details>summary{padding:0 9px;font-size:8px}}
@media(max-width:720px){.mast-top{height:116px;padding:0 12px;gap:12px}.mast-top .mini-logo{width:92px;height:92px;flex-basis:92px}.mast-top .mini-logo img{width:92px;height:92px}.mast-top .mast-title{flex:1;padding-left:10px}.mast-top .mast-title span{display:block;font-size:7px}.mast-top .mast-title b{font-size:18px}.mast-top .primary-nav{flex:0 0 94px;height:46px;margin-left:0;border:1px solid var(--line)}.mast-top .primary-nav>details>summary{height:44px}.mast-top .primary-nav .mega-menu{top:116px}}

/* Two-row Things To Do navigation with active-page highlighting. */
.category-subnav{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));background:#fffaf0;border-top:1px solid var(--ink)}
.category-subnav a{min-height:43px;display:flex;align-items:center;gap:7px;padding:8px 10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:9px;line-height:1.15;font-weight:700;text-transform:uppercase}
.category-subnav a:nth-child(8n){border-right:0}
.category-subnav a span{color:var(--orange);font:700 8px 'Oswald'}
.category-subnav a:hover{background:var(--yellow)}
.category-subnav a[aria-current="page"]{background:var(--orange);color:white;box-shadow:inset 0 -4px 0 var(--yellow)}
.category-subnav a[aria-current="page"] span{color:var(--yellow)}
@media(max-width:900px){.category-subnav{grid-template-columns:repeat(4,minmax(0,1fr));max-height:88px;overflow:auto}.category-subnav a{font-size:8px;padding:7px}.category-subnav a:nth-child(8n){border-right:1px solid var(--line)}.category-subnav a:nth-child(4n){border-right:0}}
@media(max-width:560px){.category-subnav{grid-template-columns:repeat(2,minmax(0,1fr));max-height:88px}.category-subnav a:nth-child(4n){border-right:1px solid var(--line)}.category-subnav a:nth-child(2n){border-right:0}}

/* Compact submenu: always exactly two rows of eight. */
.category-subnav{grid-template-columns:repeat(8,minmax(105px,1fr));grid-template-rows:repeat(2,27px);max-height:54px;overflow-x:auto;overflow-y:hidden}
.category-subnav a{min-height:27px;height:27px;gap:4px;padding:3px 4px 3px 6px;font-size:9px;white-space:nowrap}
.category-subnav a:nth-child(4n),.category-subnav a:nth-child(2n){border-right:1px solid var(--line)}
.category-subnav a:nth-child(8n){border-right:0}
@media(max-width:900px){.category-subnav{grid-template-columns:repeat(8,minmax(105px,1fr));grid-template-rows:repeat(2,27px);max-height:54px}.category-subnav a{font-size:9px;padding:3px 4px 3px 6px}}

/* Never scroll the submenu horizontally; use a third row when needed. */
.category-subnav{grid-template-columns:repeat(8,minmax(0,1fr));overflow:visible}
.category-subnav a{white-space:normal}
@media(max-width:1050px){.category-subnav{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(3,minmax(27px,auto));max-height:none}.category-subnav a:nth-child(8n){border-right:1px solid var(--line)}.category-subnav a:nth-child(6n){border-right:0}}
@media(max-width:560px){.category-subnav{grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(3,minmax(34px,auto));max-height:none}.category-subnav a{height:auto;min-height:34px;font-size:8px;padding:3px}.category-subnav a:nth-child(2n),.category-subnav a:nth-child(4n){border-right:1px solid var(--line)}.category-subnav a:nth-child(6n){border-right:0}.category-subnav a span{display:none}}

/* Eight narrower buttons per row keep all categories within two rows. */
.category-subnav{grid-template-columns:repeat(8,minmax(0,1fr))}
@media(max-width:1050px){.category-subnav{grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(2,minmax(27px,auto));max-height:none}.category-subnav a:nth-child(6n){border-right:1px solid var(--line)}.category-subnav a:nth-child(8n){border-right:0}}
@media(max-width:560px){.category-subnav{grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(2,minmax(42px,auto));max-height:none}.category-subnav a{min-height:42px;height:auto;font-size:8px;padding:3px 2px;word-break:normal}.category-subnav a:nth-child(6n){border-right:1px solid var(--line)}.category-subnav a:nth-child(8n){border-right:0}}

/* Keep the dropdown control level with the primary navigation links. */
.mast-top .primary-nav{align-items:stretch}
.mast-top .primary-nav>details{display:flex;align-items:stretch;height:100%;margin:0;padding:0}
.mast-top .primary-nav>details>summary{height:100%;margin:0;align-items:center;line-height:1}
.mast-top .primary-nav>a{height:100%;align-items:center;line-height:1}

/* Larger main-menu text and active-page state. */
.mast-top .primary-nav>a,.mast-top .primary-nav>details>summary{font-size:12px;letter-spacing:.075em}
.mast-top .primary-nav>a[aria-current="page"],.mast-top .primary-nav>details.active>summary{background:var(--orange);color:white;box-shadow:inset 0 -5px 0 var(--yellow)}
.mast-top .primary-nav>details.active>summary span{color:var(--yellow)}
@media(max-width:1120px){.mast-top .primary-nav>a,.mast-top .primary-nav>details>summary{font-size:10px}}

/* Compact category heading with no empty blue lead-in. */
.category-hero{min-height:0;align-items:center;padding:26px 5vw 24px}
.category-hero h1{font-size:clamp(46px,6vw,82px);margin:10px 0}
.category-hero>div>p:last-child{margin:8px 0 0}
.category-hero>span{font-size:76px;line-height:.75}
@media(max-width:760px){.category-hero{padding:22px 20px}.category-hero>span{font-size:56px;margin-top:18px}}

/* End the blue category header directly beneath the listing count. */
.category-hero{padding-bottom:0}
.category-hero>span{align-self:end;margin-bottom:0}
@media(max-width:760px){.category-hero{padding-bottom:0}}

/* Equal-width primary navigation buttons with centered wrapping labels. */
.mast-top .primary-nav>a,.mast-top .primary-nav>details{flex:1 1 0;min-width:0}
.mast-top .primary-nav>a,.mast-top .primary-nav>details>summary{justify-content:center;text-align:center;white-space:normal;padding-left:8px;padding-right:8px}
.mast-top .primary-nav>details>summary{width:100%}

/* Keep the Home tab visible in every responsive navigation layout. */
.mast-top .primary-nav>a:first-child{display:flex!important}
@media(max-width:720px){.mast-top .primary-nav{flex-basis:150px}.mast-top .primary-nav>a:first-child,.mast-top .primary-nav>details{display:flex!important;flex:1 1 50%}.mast-top .primary-nav>a:first-child{font-size:9px}.mast-top .primary-nav>details>summary{font-size:9px;padding:0 4px}}

/* General Oklahoma City information and statistics on Home. */
.okc-overview{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(32px,6vw,90px);padding:clamp(64px,9vw,120px) 6vw;background:var(--yellow);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.okc-intro h2{font:700 clamp(48px,6vw,88px)/.9 'Oswald';letter-spacing:-.035em;text-transform:uppercase;margin:18px 0 28px}
.okc-intro h2 i{font-family:Georgia,serif;font-weight:400;text-transform:none}
.okc-intro>p:not(.chapter){max-width:620px;font-size:15px;line-height:1.75;margin:0 0 14px}
.okc-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;border-top:1px solid var(--ink);border-left:1px solid var(--ink);background:#fffaf0}
.okc-stat{min-height:155px;padding:26px;display:flex;flex-direction:column;justify-content:flex-end;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.okc-stat strong{font:700 clamp(34px,4vw,58px)/1 'Oswald';color:var(--orange);letter-spacing:-.025em}
.okc-stat span{margin-top:10px;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.okc-sources{grid-column:1/-1;margin:0;padding:16px 20px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);font-size:10px;line-height:1.55;color:#4a4a43}
.okc-sources a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:820px){.okc-overview{grid-template-columns:1fr}.okc-stat{min-height:125px}.okc-intro h2{font-size:clamp(46px,12vw,72px)}}
@media(max-width:440px){.okc-stats{grid-template-columns:1fr}.okc-sources{grid-column:auto}.okc-stat{min-height:110px}.okc-overview{padding-left:20px;padding-right:20px}}

/* Keep every interior page banner aligned to the Things To Do hero. */
.page-hero,.category-hero{height:480px;min-height:480px}
.category-hero{align-items:center;padding:90px 7vw}
.category-hero h1{font-size:clamp(64px,8vw,120px);margin:20px 0}
.category-hero>div>p:last-child{margin:0;max-width:650px;font-size:17px;line-height:1.6}
.category-hero>span{align-self:center;font-size:120px;line-height:.7;margin:0}
@media(max-width:760px){.page-hero,.category-hero{height:auto;min-height:480px}.category-hero{grid-template-columns:1fr auto;padding:65px 24px}.category-hero h1{font-size:clamp(54px,14vw,82px)}.category-hero>span{font-size:75px;margin:0 0 0 20px;text-align:right}}
@media(max-width:540px){.category-hero{grid-template-columns:1fr}.category-hero>span{margin:28px 0 0;text-align:left}}

/* Compact every page hero to the requested 200px height. */
.alt-hero,.page-hero,.category-hero{height:200px;min-height:200px}
.hero-panel{padding:12px 4vw;justify-content:center}
.hero-panel .kicker{font-size:8px;margin:0}
.hero-panel h1{font-size:clamp(30px,3.4vw,50px);line-height:.78;margin:8px 0}
.hero-panel .deck{font-size:10px;line-height:1.25;margin:0;padding-top:6px}
.hero-buttons{gap:6px;margin-top:7px}
.hero-buttons a{padding:6px 8px;font-size:7px}
.map-label{bottom:12px;left:15px;padding:7px 10px;font-size:10px}
.side-note{padding:8px 5px;font-size:7px}
.page-hero>div,.category-hero{padding:22px 5vw}
.page-hero h1,.category-hero h1{font-size:clamp(42px,5.5vw,76px);margin:8px 0}
.page-hero>div>p:last-child,.category-hero>div>p:last-child{font-size:12px;line-height:1.35;margin:0}
.category-hero>span{font-size:70px}
@media(max-width:760px){.alt-hero,.page-hero,.category-hero{height:200px;min-height:200px}.alt-hero{display:grid;grid-template-columns:45% 55%}.hero-map{height:200px;border-right:2px solid var(--ink);border-bottom:0}.hero-panel{min-height:0;padding:10px 18px}.hero-panel h1{font-size:30px}.hero-panel .deck{display:none}.hero-buttons a{font-size:6px;padding:5px}.page-hero{grid-template-columns:1.2fr .8fr}.page-hero>div{padding:18px 22px}.page-hero>img{height:200px}.page-hero h1,.category-hero h1{font-size:clamp(36px,8vw,58px)}.category-hero{grid-template-columns:1fr auto;padding:18px 22px}.category-hero>span{font-size:56px;margin:0 0 0 14px}}

/* Month-by-month upcoming events sourced from directory venues. */
.events-calendar{border-top:2px solid var(--ink)}
.event-month{display:grid;grid-template-columns:230px 1fr;border-bottom:2px solid var(--ink)}
.event-month>header{padding:34px 28px;background:var(--yellow);border-right:2px solid var(--ink);align-self:stretch}
.event-month>header span,.event-month>header b{display:block;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.event-month>header h2{font:400 43px/1 'DM Serif Display';margin:12px 0 26px}
.event-month>header b{color:var(--orange)}
.event-list article{min-height:96px;display:grid;grid-template-columns:92px minmax(0,1fr) 120px 76px;gap:20px;align-items:center;padding:18px 28px;border-bottom:1px solid var(--line);background:#fffaf0}
.event-list article:last-child{border-bottom:0}
.event-list article:hover{background:white}
.event-list time{font:700 14px 'Oswald';color:var(--orange);text-transform:uppercase}
.event-list h3{font:400 23px/1.15 'DM Serif Display';margin:0 0 6px}
.event-list p,.event-list>article>span{font-size:10px;line-height:1.45;margin:0;color:#59666b}
.event-list>article>a{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}
@media(max-width:820px){.event-month{grid-template-columns:1fr}.event-month>header{border-right:0;border-bottom:1px solid var(--ink);padding:22px}.event-month>header h2{display:inline-block;font-size:36px;margin:8px 18px 8px 0}.event-month>header b{display:inline-block}.event-list article{grid-template-columns:75px minmax(0,1fr) 65px;padding:16px 18px;gap:12px}.event-list>article>span{display:none}.event-list>article>a{text-align:right}}
@media(max-width:500px){.event-list article{grid-template-columns:1fr auto}.event-list time{grid-column:1/-1}.event-list h3{font-size:21px}.event-list>article>a{grid-column:2;grid-row:2}}

/* Keep long month names comfortably inside the yellow event column. */
.event-month>header h2{font-family:'Oswald',sans-serif;font-size:34px;font-weight:600;letter-spacing:-.035em;text-transform:uppercase;white-space:nowrap}
@media(max-width:820px){.event-month>header h2{font-size:32px}}

/* Place each month in a full-width heading above its events. */
.event-month{display:block}
.event-month>header{display:flex;align-items:baseline;gap:18px;padding:18px 5vw;border-right:0;border-bottom:2px solid var(--ink)}
.event-month>header h2{margin:0;font-size:38px}
.event-month>header b{margin-left:auto}
.event-list article{grid-template-columns:92px minmax(0,1fr) 120px 122px}
@media(max-width:560px){.event-month>header{gap:10px;padding:15px 18px;flex-wrap:wrap}.event-month>header h2{font-size:30px}.event-month>header b{margin-left:0;width:100%}}

/* Give the year more visual weight in each month bar. */
.event-month>header>span{font-size:18px;letter-spacing:.1em}
@media(max-width:560px){.event-month>header>span{font-size:16px}}

/* Keep event titles compact and on a single line. */
.event-list h3{font-size:17px;line-height:1.15;white-space:nowrap;letter-spacing:-.01em}
@media(max-width:760px){.event-list h3{font-size:clamp(11px,2.2vw,15px)}}

/* Two-line event rows with a non-wrapping date column. */
.event-list article{grid-template-columns:225px minmax(0,1fr);gap:26px}
.event-list time{white-space:nowrap}
.event-list article>div{min-width:0}
.event-list article>div>p{white-space:normal}
.event-list article>div>p b{color:var(--orange);padding:0 5px}
.event-list article>div>p a{font-weight:700;text-decoration:underline;text-underline-offset:2px;text-transform:uppercase;letter-spacing:.06em}
@media(max-width:760px){.event-list article{grid-template-columns:190px minmax(0,1fr);gap:14px}}
@media(max-width:560px){.event-list article{grid-template-columns:1fr}.event-list time{grid-column:auto}.event-list article>div{grid-column:auto}.event-list article>div>p{font-size:9px}}

/* Explicitly separate the event name from its location-detail line. */
.event-list article>div{display:grid;grid-template-rows:auto auto;align-content:center;row-gap:8px;overflow:hidden}
.event-list article>div>h3{display:block;width:100%;max-width:100%;margin:0;overflow:hidden;text-overflow:ellipsis}
.event-list article>div>p{display:block;position:static;clear:both;width:100%;margin:0;line-height:1.5}

/* Four-line event information: name, location, address, and website. */
.event-list article{min-height:122px}
.event-list article>div{grid-template-rows:repeat(4,auto);row-gap:4px}
.event-list .event-location,.event-list .event-address{font-size:10px;line-height:1.35;color:#59666b}
.event-list .event-website{display:block;width:max-content;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:underline;text-underline-offset:2px}

/* Align each date with the first line: the event name. */
.event-list article{align-items:start}
.event-list time{align-self:start;line-height:1.15;padding-top:1px}
.event-list time>span{display:block}
.event-list time .date-to{text-transform:lowercase}

/* Reserve submenu space so every page banner starts at the same height. */
.category-subnav-spacer{height:54px;background:#fffaf0;border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
@media(max-width:560px){.category-subnav-spacer{height:84px}}

/* Compact Things To Do dropdown at half its former width. */
.mast-top .primary-nav .mega-menu{grid-template-columns:1fr;width:275px;left:50%;right:auto;transform:translateX(-50%);padding:10px}
.mast-top .primary-nav .mega-menu .menu-all{grid-column:auto}
@media(max-width:760px){.mast-top .primary-nav .mega-menu{left:50%;right:auto;width:min(275px,calc(100vw - 24px));grid-template-columns:1fr;transform:translateX(-50%)}}

/* Reduce the compact Things To Do dropdown by a further 25%. */
.mast-top .primary-nav .mega-menu{width:206px}
@media(max-width:760px){.mast-top .primary-nav .mega-menu{width:min(206px,calc(100vw - 24px))}}

/* Keep the masthead location together and start the main navigation farther right. */
@media(min-width:721px){
 .mast-top .mast-title{flex-basis:210px}
 .mast-top .mast-title b{display:block;white-space:nowrap}
 .mast-top .primary-nav{margin-left:18px}
}
@media(min-width:721px) and (max-width:1120px){
 .mast-top .mast-title{flex-basis:180px}
 .mast-top .primary-nav{margin-left:10px}
}

/* Bring event information close to the date while preserving date alignment. */
.event-list article{grid-template-columns:190px minmax(0,1fr);column-gap:6px}
@media(max-width:760px){.event-list article{grid-template-columns:180px minmax(0,1fr);column-gap:5px}}
@media(max-width:560px){.event-list article{grid-template-columns:1fr;row-gap:7px}}

/* Size every desktop navigation item to match the Upcoming Events button. */
@media(min-width:721px){
 .mast-top .primary-nav{flex:0 0 auto}
 .mast-top .primary-nav>a,.mast-top .primary-nav>details{flex:0 0 clamp(105px,11vw,150px);width:clamp(105px,11vw,150px)}
}

/* Enforce identical outer widths for all six main navigation buttons. */
@media(min-width:721px){
 .mast-top .primary-nav{display:grid;grid-template-columns:repeat(6,clamp(105px,11vw,150px))}
 .mast-top .primary-nav>a,.mast-top .primary-nav>details{width:100%;min-width:0;max-width:none}
 .mast-top .primary-nav>details>summary{width:100%;height:100%}
}

/* Position the Upcoming Events banner copy at the top of the red panel. */
.upcoming-events-page .page-hero>div{justify-content:flex-start;padding-top:20px}
@media(max-width:760px){.upcoming-events-page .page-hero>div{padding-top:16px}}

/* Top-align the banner copy consistently across the remaining main pages. */
.page-hero>div{justify-content:flex-start;padding-top:20px}
.alt-hero .hero-panel{justify-content:flex-start;padding-top:12px}
@media(max-width:760px){.page-hero>div{padding-top:16px}.alt-hero .hero-panel{padding-top:10px}}

/* Use a 225px banner everywhere and keep all banner copy fully visible. */
.alt-hero,.page-hero,.category-hero{height:225px;min-height:225px}
.page-hero h1,.category-hero h1{font-size:clamp(38px,4.5vw,64px);line-height:.9}
.alt-hero .hero-panel h1{font-size:clamp(28px,3vw,44px);margin:6px 0;line-height:.78}
.alt-hero .hero-panel .deck{font-size:9px;line-height:1.2;padding-top:5px}
.alt-hero .hero-buttons{margin-top:5px}
@media(max-width:760px){
 .alt-hero,.page-hero,.category-hero{height:225px;min-height:225px}
 .alt-hero .hero-map{height:225px}
 .page-hero>img{height:225px}
 .page-hero h1,.category-hero h1{font-size:clamp(34px,7vw,52px)}
}

/* Align the Home banner image itself to the banner's top edge. */
.alt-hero .hero-map{align-self:start;top:0;margin-top:0}
.alt-hero .hero-map img{object-position:center top}
.home-page-hero>img{object-position:center top}

/* Start the Upcoming Events month headings in line with other page content. */
.upcoming-events-page .events-calendar{margin-top:100px}

/* Keep the first month header's upper rule equal to its lower rule. */
.upcoming-events-page .events-calendar{border-top:0}
.upcoming-events-page .event-month:first-child>header{border-top:2px solid var(--ink)}
@media(min-width:761px){.upcoming-events-page .events-calendar{padding-right:150px}}
@media(max-width:760px){.upcoming-events-page .events-calendar{padding-right:24px}}

/* Balance the Contact page content 300px from both viewport edges. */
@media(min-width:1001px){
 .contact-layout{padding-left:300px;padding-right:300px}
}
@media(max-width:1000px){
 .contact-layout{padding-left:24px;padding-right:24px}
}

/* Start the copy in every banner 150px from the left edge. */
@media(min-width:761px){.page-hero>div,.category-hero{padding-left:150px}}
@media(max-width:760px){.page-hero>div,.category-hero{padding-left:24px}}

/* Position the main Sampling Oklahoma logo 150px from the left edge. */
@media(min-width:761px){.mast-top{padding-left:150px}}
@media(max-width:760px){.mast-top{padding-left:24px}}

/* Start body content 150px from the left edge without moving any banner. */
@media(min-width:761px){main>section:not(.page-hero):not(.category-hero){padding-left:150px}}
@media(max-width:760px){main>section:not(.page-hero):not(.category-hero){padding-left:24px}}

/* Inset the Things To Do category submenu equally from both page edges. */
@media(min-width:761px){.category-subnav{padding-left:150px;padding-right:150px}}
@media(max-width:760px){.category-subnav{padding-left:24px;padding-right:24px}}

/* Limit every desktop main-navigation button to 125px and allow wrapping. */
@media(min-width:721px){
 .mast-top .primary-nav{grid-template-columns:repeat(6,125px)}
 .mast-top .primary-nav>a,.mast-top .primary-nav>details{width:125px;max-width:125px;flex-basis:125px}
 .mast-top .primary-nav>a,.mast-top .primary-nav>details>summary{white-space:normal;overflow-wrap:anywhere}
}

/* Use 100px, single-line Things To Do submenu buttons without horizontal scrolling. */
.category-subnav a{width:100%;max-width:100px;white-space:nowrap;overflow-wrap:normal}
@media(min-width:1100px){
 .category-subnav{grid-template-columns:repeat(8,100px);justify-content:space-between}
}
@media(min-width:561px) and (max-width:1099px){
 .category-subnav{grid-template-columns:repeat(4,100px);grid-template-rows:repeat(4,27px);justify-content:space-between;max-height:108px;overflow-x:hidden}
}
@media(max-width:560px){
 .category-subnav{grid-template-columns:repeat(2,100px);grid-template-rows:repeat(8,27px);justify-content:space-between;max-height:216px;overflow-x:hidden}
}

/* Keep main-page banner images 150px from the right viewport edge. */
@media(min-width:761px){.page-hero{padding-right:150px}}
@media(max-width:760px){.page-hero{padding-right:24px}}

/* Continue each banner color beneath the full-width image inset area. */
.page-hero.blue{background:var(--blue)}
.page-hero.yellow{background:var(--yellow)}
.page-hero.orange{background:var(--orange)}

/* Right-align the fixed-size main navigation and align its base with the logo. */
@media(min-width:1121px){
 .mast-top{padding-right:150px}
 .mast-top .primary-nav{margin-left:auto;align-self:flex-end;margin-bottom:11px}
 .mast-top .mast-title{align-self:flex-end;margin-bottom:11px}
}
@media(min-width:721px) and (max-width:1120px){
 .mast-top{padding-right:150px}
 .mast-top .primary-nav{margin-left:auto;align-self:flex-end;margin-bottom:21px}
 .mast-top .mast-title{align-self:flex-end;margin-bottom:21px}
}
@media(max-width:720px){
 .mast-top{padding-right:24px}
 .mast-top .primary-nav{margin-left:auto;align-self:flex-end;margin-bottom:12px}
 .mast-top .mast-title{align-self:flex-end;margin-bottom:12px}
}

/* Double the two-line masthead title type while preserving surrounding element sizes. */
@media(min-width:1121px){
 .mast-top .mast-title span{font-size:16px}
 .mast-top .mast-title b{font-size:44px}
}
@media(min-width:721px) and (max-width:1120px){
 .mast-top .mast-title span{font-size:16px}
 .mast-top .mast-title b{font-size:36px}
}
@media(max-width:720px){
 .mast-top .mast-title span{font-size:14px}
 .mast-top .mast-title b{font-size:36px}
}
