html:has(.jdre-p-header) { font-size: 100%; }
.jdre-p-wrap { width: min(100% - 3rem, 90rem); margin-inline: auto; }
.jdre-p-wrap > *, .jdre-p-section-head, .jdre-p-listing-grid, .jdre-p-tool-grid, .jdre-p-search, .jdre-p-search__bar, .jdre-p-quick { width: 100%; }
.jdre-p-header { position: sticky; z-index: 30; top: 0; border-bottom: 1px solid #e4e7e3; background: #fff; }
.admin-bar .jdre-p-header { top: 32px; }
.jdre-p-header__inner { display: grid; min-height: 5.5rem; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 2rem; }
.jdre-p-brand { display: flex; align-items: center; justify-self: start; gap: .9rem; color: #102b1a; text-decoration: none; }
.jdre-p-brand img { width: 4.25rem; height: auto; }
.jdre-p-brand span, .jdre-p-brand strong, .jdre-p-brand small { display: block; }
.jdre-p-brand strong { font-family: var(--jdre-font-serif); font-size: 1.5rem; font-weight: 600; line-height: 1; }
.jdre-p-brand small { margin-top: .38rem; color: #73786f; font-size: .62rem; font-weight: 750; letter-spacing: .07em; text-transform: uppercase; }
.jdre-p-nav { display: flex; gap: 2.5rem; }
.jdre-p-nav a { color: #232821; font-size: .92rem; font-weight: 750; text-decoration: none; }
.jdre-p-nav a:hover { color: #267148; }
.jdre-p-header__actions { display: flex; align-items: center; justify-self: end; gap: 1.2rem; }
.jdre-p-header__inner > .jdre-p-button { justify-self: end; }
.jdre-site-nav { display: flex; align-items: center; justify-content: center; gap: 1.8rem; }
.jdre-site-nav > a, .jdre-site-nav summary { color: #232821; font-size: .92rem; font-weight: 750; text-decoration: none; cursor: pointer; }
.jdre-site-nav__dropdown { position: static; }
.jdre-site-nav__dropdown > summary { display: flex; gap: .35rem; align-items: center; list-style: none; }
.jdre-site-nav__dropdown > summary::-webkit-details-marker { display: none; }
.jdre-site-nav__dropdown > summary span { color: #758078; font-size: .75rem; transition: transform 160ms ease; }
.jdre-site-nav__dropdown[open] > summary span { transform: rotate(180deg); }
.jdre-site-nav__panel { position: fixed; z-index: 50; top: 5.5rem; right: 0; left: 0; border-top: 1px solid #e4e7e3; border-bottom: 1px solid #dfe4df; background: #fff; box-shadow: 0 22px 48px rgb(22 39 28 / 13%); }
.admin-bar .jdre-site-nav__panel { top: calc(5.5rem + 32px); }
.jdre-site-nav__panel-inner { display: grid; width: min(100% - 3rem, 90rem); margin-inline: auto; padding-block: 2rem 2.25rem; grid-template-columns: minmax(15rem, .65fr) 2fr; gap: clamp(2rem, 5vw, 5rem); }
.jdre-site-nav__panel-intro { padding-right: clamp(1rem, 3vw, 3rem); border-right: 1px solid #e1e6e1; }
.jdre-site-nav__panel-intro h2 { max-width: 15ch; margin: 0; color: #183323; font-family: var(--jdre-font-serif); font-size: clamp(1.7rem, 2.4vw, 2.5rem); font-weight: 500; line-height: 1.05; }
.jdre-site-nav__panel-intro > p:not(.jdre-site-nav__mega-label) { max-width: 34ch; margin: .7rem 0 0; color: #6b756d; font-size: .76rem; line-height: 1.5; }
.jdre-site-nav__panel-intro > a { display: inline-block; margin-top: 1.1rem; color: #174c31; font-size: .78rem; font-weight: 850; text-decoration: none; }
.jdre-site-nav__panel-intro > a + a { margin-left: 1rem; }
.jdre-site-nav__panel-intro-actions { display: flex; align-items: flex-start; margin-top: 1.1rem; flex-direction: column; gap: .45rem; }
.jdre-site-nav__panel-intro-actions a { color: #174c31; font-size: .76rem; font-weight: 850; text-decoration: none; }
.jdre-site-nav__panel-destinations { min-width: 0; }
.jdre-site-nav__panel-links { display: grid; align-content: start; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .5rem 1rem; }
.jdre-site-nav__panel-links > a { position: relative; display: grid; min-width: 0; min-height: 5rem; padding: .9rem 2.5rem .9rem 1rem; border-radius: .4rem; color: #1c2920; align-content: center; text-decoration: none; }
.jdre-site-nav__panel-links > a:hover, .jdre-site-nav__panel-links > a:focus-visible { background: #f2f5f1; }
.jdre-site-nav__panel-links strong { font-size: .92rem; }
.jdre-site-nav__panel-links small { margin-top: .25rem; color: #737c74; font-size: .73rem; font-weight: 500; line-height: 1.4; }
.jdre-site-nav__panel-links > a > span { position: absolute; top: 50%; right: 1rem; color: #267148; transform: translateY(-50%); }
.jdre-site-nav__mega-label { margin: 0 0 .8rem; color: #267148; font-size: .66rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.jdre-site-nav__explore-groups { display: grid; grid-template-columns: 1.3fr .7fr; gap: 1.5rem; }
.jdre-site-nav__group-heading { min-height: 1.5rem; }
.jdre-site-nav__mega-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .25rem .7rem; }
.jdre-site-nav__mega-links--single { grid-template-columns: 1fr; }
.jdre-site-nav__mega-links a { position: relative; display: grid; min-width: 0; padding: .72rem 2rem .72rem .75rem; border-radius: .4rem; color: #1c2920; text-decoration: none; }
.jdre-site-nav__mega-links a:hover, .jdre-site-nav__mega-links a:focus-visible { background: #f2f5f1; }
.jdre-site-nav__mega-links strong { overflow: hidden; font-size: .9rem; text-overflow: ellipsis; white-space: nowrap; }
.jdre-site-nav__mega-links small { overflow: hidden; margin-top: .2rem; color: #737c74; font-size: .72rem; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.jdre-site-nav__mega-links a > span { position: absolute; top: 50%; right: .75rem; color: #267148; transform: translateY(-50%); }
.jdre-site-mobile { display: none; justify-self: end; }
.jdre-site-mobile > summary { min-width: 5.3rem; padding: .7rem .9rem; border: 1px solid #dce1dc; border-radius: .45rem; list-style: none; color: #1c2920; font-size: .85rem; font-weight: 800; cursor: pointer; }
.jdre-site-mobile > summary::-webkit-details-marker { display: none; }.jdre-site-mobile > summary span { float: right; }
.jdre-p-header__actions > a { color: #334038; font-size: .88rem; font-weight: 700; text-decoration: none; }
.jdre-p-button { display: inline-flex; min-height: 3.4rem; align-items: center; justify-content: center; padding: .85rem 1.35rem; border: 0; border-radius: .45rem; font-size: .88rem; font-weight: 800; text-decoration: none; }
.jdre-p-button.jdre-p-button--dark { color: #fff !important; background: #174c31; }
.jdre-p-button.jdre-p-button--dark:hover { color: #fff !important; background: #0d3521; }

.jdre-p-hero { padding-block: clamp(2.5rem, 4.5vw, 4.5rem); background: #f4f7f4; }
.jdre-p-hero__inner { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(24rem, .85fr); align-items: stretch; gap: clamp(2rem, 5vw, 5rem); }
.jdre-p-hero__copy { min-width: 0; justify-content: center; padding-block: 2rem; }
.jdre-p-eyebrow { margin: 0 0 1rem; color: #267148; font-size: .72rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.jdre-p-hero h1 { max-width: 12ch; margin: 0; font-family: var(--jdre-font-sans); font-size: clamp(3.6rem, 5.9vw, 6.5rem); font-weight: 800; line-height: .95; letter-spacing: -.055em; }
.jdre-p-hero__copy > p:not(.jdre-p-eyebrow) { max-width: 57ch; margin: 1.5rem 0 0; color: #566057; font-size: 1.13rem; line-height: 1.6; }
.jdre-p-search { min-width: 0; max-width: 100%; overflow: hidden; margin-top: 2rem; border: 1px solid #d9ded8; border-radius: 1rem; background: #fff; box-shadow: 0 16px 40px rgb(17 49 29 / 10%); }
.jdre-p-search__tabs { display: flex; width: 100%; min-width: 0; max-width: 100%; align-self: stretch; gap: 1.75rem; padding: 0 1.25rem; border-bottom: 1px solid #e4e7e3; }
.jdre-p-search__tabs a { position: relative; flex: 0 0 auto; padding-block: 1rem; color: #697168; font-size: .88rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.jdre-p-search__tabs a:hover, .jdre-p-search__tabs a:focus-visible, .jdre-p-search__tabs a.is-active { color: #174c31; }
.jdre-p-search__tabs a.is-active::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: #267148; content: ''; }
.jdre-p-search__bar { display: grid; grid-template-columns: 1.7fr .9fr .75fr auto; gap: .5rem; padding: .6rem; }
.jdre-p-search__bar label { display: grid; min-width: 0; min-height: 4.4rem; align-content: center; gap: .3rem; padding: .65rem .9rem; border: 1px solid #e3e8e2; border-radius: .55rem; background: #f7f9f6; transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease; }
.jdre-p-search__bar label:focus-within { border-color: #267148; background: #fff; box-shadow: 0 0 0 3px rgb(38 113 72 / 12%); }
.jdre-p-search__bar small { display: block; color: #667069; font-size: .6rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.jdre-p-search__bar input, .jdre-p-search__bar select { width: 100%; min-width: 0; min-height: 1.65rem; overflow: hidden; margin: 0; padding: 0; border: 0; outline: 0; color: #1f2922; background: transparent; font: inherit; font-size: .88rem; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.jdre-p-search__bar input::placeholder { color: #5f675f; opacity: 1; }
.jdre-p-search__submit { display: inline-flex; min-width: 7.75rem; min-height: 4.4rem; align-items: center; justify-content: center; padding: .75rem 1rem; border: 0; border-radius: .55rem; color: #fff; background: #267148; box-shadow: 0 8px 18px rgb(23 76 49 / 16%); font-size: .9rem; font-weight: 850; line-height: 1.2; text-decoration: none; cursor: pointer; transition: background-color .15s ease, transform .15s ease, box-shadow .15s ease; }
.jdre-p-search__submit:hover { background: #174c31; box-shadow: 0 10px 22px rgb(23 76 49 / 22%); transform: translateY(-1px); }
.jdre-p-search__submit:focus-visible { outline: 3px solid var(--jdre-gold-500); outline-offset: 2px; }
.jdre-p-quick { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1rem; }
.jdre-p-quick a { padding: .55rem .8rem; border: 1px solid #d7dcd6; border-radius: 999px; color: #334038; background: #fff; font-size: .78rem; font-weight: 750; text-decoration: none; }
.jdre-p-hero__visual { min-height: 40rem; justify-content: end; padding: clamp(2rem, 4vw, 3.5rem); border-radius: .8rem; color: #fff; background: linear-gradient(0deg, rgb(7 28 16 / 82%), transparent 65%), url('../images/hero-north-central-florida-with-jamie.jpg') 68% center / cover no-repeat; }
.jdre-p-hero__visual > p:first-child { margin: 0 0 auto; font-size: .7rem; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.jdre-p-hero__visual h2 { max-width: 14ch; margin: 0; color: #fff; font-size: clamp(2.3rem, 3.5vw, 4rem); font-weight: 500; }
.jdre-p-hero__visual > p:last-of-type { max-width: 37ch; margin: 1rem 0; color: rgb(255 255 255 / 78%); }
.jdre-p-hero__visual a { color: #fff; font-size: .86rem; font-weight: 850; text-decoration: none; }

.jdre-p-section { padding-block: clamp(4rem, 6vw, 6rem); }
.jdre-p-section-head { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 2rem; }
.jdre-p-section-head h2 { margin: 0; font-family: var(--jdre-font-sans); font-size: clamp(2.3rem, 4vw, 4rem); font-weight: 780; line-height: 1; letter-spacing: -.045em; }
.jdre-p-section-head p { margin: .8rem 0 0; color: #687168; font-size: 1rem; }
.jdre-p-section-head > a { color: #174c31; font-size: .88rem; font-weight: 800; text-decoration: none; }
.jdre-p-listing-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.35rem; }
.jdre-p-listing { overflow: hidden; border: 1px solid #dfe3de; border-radius: .65rem; background: #fff; transition: transform 160ms ease, box-shadow 160ms ease; }
.jdre-p-listing:hover { box-shadow: 0 16px 36px rgb(21 56 34 / 12%); transform: translateY(-3px); }
.jdre-p-listing__image { width: 100%; min-height: 14rem; background-position: center; background-size: cover; }
.jdre-p-listing__body { padding: 1.1rem; }
.jdre-p-listing__body h3 { margin: 0; font-family: var(--jdre-font-sans); font-size: 1.45rem; font-weight: 800; }
.jdre-p-listing__body a { margin-top: .55rem; color: #1f2922; font-size: .94rem; font-weight: 800; text-decoration: none; }
.jdre-p-listing__body p { margin: .18rem 0 0; color: #687168; font-size: .82rem; }
.jdre-p-listing__body p:last-child { margin-top: .8rem; padding-top: .7rem; border-top: 1px solid #e6e9e5; color: #364039; font-weight: 700; }

.jdre-p-tools { background: #f4f7f4; }
.jdre-p-tool-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.jdre-p-tool { min-height: 14rem; padding: 2rem; border: 1px solid #dfe3de; border-radius: .65rem; background: #fff; }
.jdre-p-tool h3 { margin: 0; font-family: var(--jdre-font-sans); font-size: 1.65rem; font-weight: 780; }
.jdre-p-tool p { margin: .8rem 0 1.2rem; color: #687168; }
.jdre-p-tool a { color: #174c31; font-size: .86rem; font-weight: 850; text-decoration: none; }

.jdre-p-areas__inner { display: grid; grid-template-columns: 1.15fr .85fr; overflow: hidden; border-radius: .8rem; background: #0f3823; }
.jdre-p-map { position: relative; height: 100%; min-height: 38rem; align-self: stretch; overflow: hidden; padding: 2.5rem; background: #dfe7df; }
.jdre-p-map::after { position: absolute; z-index: 1; inset: 0; background: linear-gradient(180deg, rgb(10 40 24 / 72%) 0%, rgb(10 40 24 / 8%) 42%, transparent 70%); content: ''; pointer-events: none; }
.jdre-p-map__embed, .jdre-p-map__embed iframe { position: absolute; inset: 0; width: 100%; height: 100% !important; border: 0; }
.jdre-p-map__embed iframe { aspect-ratio: auto !important; filter: saturate(.72) contrast(.96); }
.jdre-p-map h2 { position: relative; z-index: 2; max-width: 12ch; margin: 0; color: #fff; font-family: var(--jdre-font-sans); font-size: clamp(2.4rem, 4vw, 4rem); font-weight: 780; line-height: 1; }
.jdre-p-area-list { justify-content: center; padding: clamp(2.5rem, 5vw, 5rem); color: #fff; }
.jdre-p-area-list h2 { margin: 0; color: #fff; font-size: clamp(2.6rem, 4vw, 4.4rem); font-weight: 500; line-height: .98; }
.jdre-p-area-list > p:not(.jdre-p-eyebrow) { margin: 1.25rem 0 2rem; color: rgb(255 255 255 / 70%); }
.jdre-p-area-list a { padding-block: 1rem; border-top: 1px solid rgb(255 255 255 / 16%); color: #fff; font-size: .9rem; font-weight: 750; text-decoration: none; }

.jdre-p-jamie { background: #fff; }
.jdre-p-jamie__inner { display: grid; grid-template-columns: .65fr 1.35fr; align-items: stretch; gap: clamp(3rem, 8vw, 8rem); }
.jdre-p-jamie__mark { position: relative; min-height: 31rem; overflow: hidden; border-radius: .65rem; background: #dfe8df; }
.jdre-p-jamie__mark::after { position: absolute; z-index: 2; inset: 0; background: linear-gradient(180deg, rgb(10 42 25 / 4%) 35%, rgb(10 42 25 / 42%) 100%), linear-gradient(90deg, rgb(22 76 49 / 12%), transparent 55%); content: ''; pointer-events: none; }
.jdre-p-jamie__photo, .jdre-p-jamie__photo img { width: 100%; height: 100%; }
.jdre-p-jamie__photo { overflow: hidden; }
.jdre-p-jamie__photo img { display: block; object-fit: cover; object-position: center; transform: scale(1.62); transform-origin: 51% 32%; }
.jdre-p-jamie__inner > div:last-child { justify-content: center; }
.jdre-p-jamie h2 { max-width: 15ch; margin: 0; font-family: var(--jdre-font-sans); font-size: clamp(2.8rem, 5vw, 5rem); font-weight: 780; line-height: .98; letter-spacing: -.05em; }
.jdre-p-jamie__inner > div:last-child > p:not(.jdre-p-eyebrow) { max-width: 62ch; margin: 1.5rem 0 0; color: #5e675f; font-size: 1.05rem; }
.jdre-p-jamie__inner > div:last-child > p:nth-last-of-type(1) { color: #174c31; font-size: 1rem; font-weight: 850; }
.jdre-p-actions { display: flex; align-items: center; gap: 1.4rem; margin-top: 2rem; }
.jdre-p-actions > a { color: #174c31; font-size: .88rem; font-weight: 850; text-decoration: none; }

.jdre-p-footer { padding-block: 3.5rem 2rem; color: rgb(255 255 255 / 70%); background: #0b2415; }
.jdre-p-footer__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.jdre-p-footer img { width: 7rem; margin-right: 1rem; vertical-align: middle; }
.jdre-p-footer strong, .jdre-p-footer span { display: block; }
.jdre-p-footer strong { margin-top: 1rem; color: #fff; font-family: var(--jdre-font-serif); font-size: 1.4rem; }
.jdre-p-footer span { font-size: .75rem; }
.jdre-p-footer__inner > div:nth-child(2) { justify-self: end; text-align: right; }
.jdre-p-footer a { color: rgb(255 255 255 / 78%); text-decoration: none; }
.jdre-p-footer p { grid-column: 1 / -1; margin: 1rem 0 0; padding-top: 1.3rem; border-top: 1px solid rgb(255 255 255 / 13%); font-size: .7rem; }
.jdre-site-footer__grid { display: grid; grid-template-columns: 1.25fr repeat(3, 1fr); gap: 3rem; padding-block: 4rem 2rem; }
.jdre-site-footer__grid > div { display: flex; flex-direction: column; align-items: flex-start; gap: .55rem; }
.jdre-site-footer__brand img { width: 4.5rem; height: auto; }.jdre-site-footer__brand strong { margin-top: .8rem; color: #fff; font-family: var(--jdre-font-serif); font-size: 1.5rem; }.jdre-site-footer__brand span, .jdre-site-footer address { color: rgb(255 255 255 / 62%); font-size: .78rem; font-style: normal; line-height: 1.7; }
.jdre-site-footer__label { margin: 0 0 .55rem !important; padding: 0 !important; border: 0 !important; color: #8fb69c !important; font-size: .67rem !important; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.jdre-site-footer a { color: rgb(255 255 255 / 82%); font-size: .8rem; text-decoration: none; }.jdre-site-footer a:hover { color: #fff; }
.jdre-site-footer__legal { grid-column: 1 / -1; display: grid !important; grid-template-columns: 1fr auto 1fr; align-items: center !important; gap: 1rem !important; margin-top: 1.5rem; padding-top: 1.5rem; border-top: 1px solid rgb(255 255 255 / 13%); color: rgb(255 255 255 / 48%); font-size: .66rem; }.jdre-site-footer__legal nav { display: flex; gap: 1rem; }.jdre-site-footer__legal > span:last-child { text-align: right; }

.jdre-cities-hero { padding-block: clamp(4.5rem, 8vw, 8rem); background: #f2f5f1; }
.jdre-cities-hero h1 { max-width: 12ch; margin: 0; font-family: var(--jdre-font-sans); font-size: clamp(3.2rem, 6vw, 6.25rem); font-weight: 800; line-height: .94; letter-spacing: -.055em; }
.jdre-cities-hero p:last-child { max-width: 58ch; margin: 1.35rem 0 0; color: #5f695f; font-size: 1.08rem; line-height: 1.65; }
.jdre-cities-directory { padding-block: clamp(4rem, 7vw, 7rem); }
.jdre-cities-directory__heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 2rem; }
.jdre-cities-directory__heading h2 { margin: 0; font-family: var(--jdre-font-sans); font-size: clamp(2.2rem, 4vw, 3.8rem); font-weight: 780; line-height: 1; letter-spacing: -.045em; }
.jdre-cities-directory__heading label { width: min(100%, 21rem); }
.jdre-cities-directory__heading input { width: 100%; min-height: 3.25rem; padding: .8rem 1rem; border: 1px solid #d6ddd6; border-radius: .45rem; color: #1c2920; background: #fff; font: inherit; }
.jdre-cities-directory__heading input:focus { border-color: #267148; outline: 3px solid rgb(38 113 72 / 14%); }
.jdre-cities-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.jdre-city-card { overflow: hidden; border: 1px solid #dfe4df; border-radius: .65rem; color: #1c2920; background: #fff; text-decoration: none; transition: transform 160ms ease, box-shadow 160ms ease; }
.jdre-city-card:hover { box-shadow: 0 16px 38px rgb(20 55 33 / 12%); transform: translateY(-3px); }
.jdre-city-card__image { display: block; height: 13rem; overflow: hidden; background: #e8ede8; }
.jdre-city-card__image img { width: 100%; height: 100%; object-fit: cover; }
.jdre-city-card__body { display: flex; min-height: 13.5rem; padding: 1.35rem; flex-direction: column; }
.jdre-city-card__body strong { font-family: var(--jdre-font-serif); font-size: 1.7rem; font-weight: 600; }
.jdre-city-card__body > span { margin-top: .55rem; color: #687168; font-size: .85rem; line-height: 1.55; }
.jdre-city-card__body small { margin-top: auto; padding-top: 1rem; color: #6c756d; font-size: .72rem; }
.jdre-city-card__body b { margin-top: .65rem; color: #174c31; font-size: .8rem; }
.jdre-cities-empty { padding: 2rem; border-radius: .5rem; color: #59635b; background: #f2f5f1; text-align: center; }

@media (max-width: 1080px) {
  .jdre-p-nav { display: none; }
  .jdre-p-header__inner { grid-template-columns: 1fr 1fr; }
  .jdre-p-hero__inner { grid-template-columns: 1fr; }
  .jdre-p-hero__visual { min-height: 28rem; }
  .jdre-p-listing-grid { grid-template-columns: repeat(2, 1fr); }
  .jdre-p-areas__inner { grid-template-columns: 1fr; }
}
@media (max-width: 900px) { .jdre-site-header .jdre-site-nav, .jdre-site-header .jdre-p-header__actions { display: none; }.jdre-site-header .jdre-p-header__inner { grid-template-columns: 1fr auto; }.jdre-site-mobile { display: block; }.jdre-site-mobile[open] > nav { position: absolute; z-index: 60; top: 100%; right: 0; left: 0; display: grid; width: 100%; max-height: calc(100dvh - 5.5rem); overflow-y: auto; padding: .7rem max(1rem, calc((100vw - 90rem) / 2)); border: 0; border-top: 1px solid #e1e5e0; border-bottom: 1px solid #d7ddd7; border-radius: 0; background: #fff; box-shadow: 0 18px 40px rgb(22 39 28 / 14%); }.jdre-site-mobile nav > a, .jdre-site-mobile nav summary { display: flex; min-height: 3.25rem; align-items: center; justify-content: space-between; padding: .85rem 1rem; border-radius: .35rem; color: #1c2920; font-weight: 750; text-decoration: none; }.jdre-site-mobile nav > a + *, .jdre-site-mobile nav > details + * { border-top: 1px solid #edf0ed; }.jdre-site-mobile .jdre-site-nav__panel { position: static; width: 100%; padding: 0; border: 0; box-shadow: none; }.jdre-site-mobile .jdre-site-nav__panel-inner { width: 100%; padding: 0 1rem 1rem; grid-template-columns: 1fr; gap: 1rem; }.jdre-site-mobile .jdre-site-nav__panel-intro { padding: .75rem 0 1rem; border-right: 0; border-bottom: 1px solid #e1e6e1; }.jdre-site-mobile .jdre-site-nav__panel-intro h2 { font-size: 1.55rem; }.jdre-site-mobile .jdre-site-nav__panel-intro > a + a { margin-left: .75rem; }.jdre-site-mobile .jdre-site-nav__panel-links { grid-template-columns: 1fr; }.jdre-site-mobile .jdre-site-nav__panel-links > a { min-height: 0; padding: .85rem 2.25rem .85rem 1rem; }.jdre-site-mobile .jdre-site-nav__panel-links > a > span { top: 50%; bottom: auto; transform: translateY(-50%); }.jdre-site-mobile .jdre-site-nav__explore-groups { grid-template-columns: 1fr; gap: 1.25rem; }.jdre-site-mobile .jdre-site-nav__mega-links { grid-template-columns: 1fr; }.jdre-cities-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) { .jdre-site-footer__grid { grid-template-columns: repeat(2, 1fr); }.jdre-site-footer__legal { grid-template-columns: 1fr; }.jdre-site-footer__legal > span:last-child { text-align: left; } }
@media (max-width: 560px) { .jdre-site-footer__grid { grid-template-columns: 1fr; gap: 2rem; }.jdre-site-footer__legal nav { flex-wrap: wrap; } }
@media (max-width: 782px) { .admin-bar .jdre-p-header { top: 46px; } }
@media (max-width: 650px) {
  .jdre-p-wrap { width: min(100% - 2rem, 88rem); }
  .jdre-p-header__inner { min-height: 4.75rem; gap: .5rem; }
  .jdre-p-brand { gap: .5rem; }
  .jdre-p-brand img { width: 2.8rem; }
  .jdre-p-brand strong { font-size: 1.1rem; }
  .jdre-p-brand small, .jdre-p-header__actions > a:not(.jdre-p-button) { display: none; }
  .jdre-p-button { min-height: 3rem; padding: .7rem .9rem; }
  .jdre-p-hero { padding-block: 2.5rem; }
  .jdre-p-hero__copy { padding: 0; }
  .jdre-p-hero h1 { font-size: clamp(3.2rem, 15vw, 4.5rem); }
  .jdre-p-search__tabs { gap: 1.25rem; overflow-x: auto; scrollbar-width: none; }
  .jdre-p-search__tabs::-webkit-scrollbar { display: none; }
  .jdre-p-search__bar { grid-template-columns: minmax(0, 1fr) auto; gap: .45rem; padding: .5rem; }
  .jdre-p-search__bar > *:nth-child(2), .jdre-p-search__bar > *:nth-child(3) { display: none; }
  .jdre-p-search__bar label, .jdre-p-search__submit { min-height: 4.1rem; }
  .jdre-p-search__submit { min-width: 6.8rem; }
  .jdre-p-hero__visual { min-height: 25rem; }
  .jdre-p-section-head { display: block; }
  .jdre-p-section-head > a { display: inline-block; margin-top: 1rem; }
  .jdre-p-listing-grid, .jdre-p-tool-grid { grid-template-columns: 1fr; }
  .jdre-p-listing__image { min-height: 16rem; }
  .jdre-p-tool { min-height: 14rem; }
  .jdre-p-map { min-height: 29rem; }
  .jdre-p-jamie__inner { grid-template-columns: 1fr; }
  .jdre-p-jamie__mark { min-height: 24rem; }
  .jdre-p-actions { align-items: stretch; flex-direction: column; }
  .jdre-p-actions .jdre-p-button { width: 100%; }
  .jdre-p-footer__inner { grid-template-columns: 1fr; }
  .jdre-p-footer__inner > div:nth-child(2) { justify-self: start; text-align: left; }
  .jdre-cities-directory__heading { display: block; }
  .jdre-cities-directory__heading label { display: block; margin-top: 1.5rem; }
  .jdre-cities-grid { grid-template-columns: 1fr; }
}
