/*
Theme Name: PerkJolt
Theme URI: https://perkjolt.com/
Author: PerkJolt
Description: An independent travel editorial theme built and maintained by PerkJolt.
Version: 1.0.9
Requires at least: 6.2
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: perkjolt
*/
:root{--pj-ink:#172a36;--pj-muted:#53656f;--pj-teal:#146b68;--pj-deep:#0d4f50;--pj-coral:#ef754f;--pj-coral-text:#ac432b;--pj-gold:#f2b84b;--pj-paper:#faf8f2;--pj-card:#fffefa;--pj-line:#deded4;--pj-serif:Georgia,'Times New Roman',serif;--pj-sans:Inter,'Avenir Next',Avenir,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--pj-paper);color:var(--pj-ink);font-family:var(--pj-sans);font-size:16px;line-height:1.65}img{max-width:100%;height:auto}a{color:var(--pj-teal)}a:hover{color:var(--pj-coral-text)}:focus-visible{outline:3px solid var(--pj-ink);outline-offset:3px;box-shadow:0 0 0 3px #fff}.pj-wrap{width:min(1240px,calc(100% - 48px));margin-inline:auto}.pj-skip{position:absolute;z-index:20;top:-100px;left:16px;padding:10px 15px;background:#fff;color:#111}.pj-skip:focus{top:10px}.pj-topbar{background:var(--pj-deep);color:#e8f0eb;font-size:11px;letter-spacing:.09em;text-transform:uppercase}.pj-topbar .pj-wrap{display:flex;justify-content:space-between;padding:8px 0}.pj-header{border-bottom:1px solid var(--pj-line);background:var(--pj-paper)}.pj-header-inner{min-height:94px;display:flex;align-items:center;gap:25px}.pj-brand{display:inline-flex;align-items:center;gap:10px;color:var(--pj-ink);font:800 30px/.95 var(--pj-serif);letter-spacing:-1.3px;text-decoration:none}.pj-brand img{width:44px;height:44px;object-fit:contain}.pj-brand span span{color:var(--pj-teal)}.pj-tagline{margin:0;color:var(--pj-muted);font-size:10px;font-weight:750;letter-spacing:.15em;text-transform:uppercase}.pj-menu{margin-left:auto}.pj-menu>summary{display:none;list-style:none}.pj-menu>summary::-webkit-details-marker{display:none}.pj-nav{display:block}.pj-menu-list,.pj-menu ul{display:flex;align-items:center;gap:25px;margin:0;padding:0;list-style:none}.pj-menu-list a{color:var(--pj-ink);font-size:12px;font-weight:750;text-decoration:none}.pj-menu-list a:hover{color:var(--pj-teal)}.pj-main{min-height:55vh}.pj-home{padding-bottom:78px}.pj-welcome{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:45px 0 24px}.pj-kicker{margin:0;color:var(--pj-teal);font-size:10px;font-weight:850;letter-spacing:.17em;text-transform:uppercase}.pj-welcome h1{margin:8px 0 0;font:700 clamp(42px,6vw,72px)/.96 var(--pj-serif);letter-spacing:-3px}.pj-welcome h1 em{color:var(--pj-teal);font-weight:500}.pj-welcome>p{max-width:350px;margin:0 0 5px;color:var(--pj-muted);font-size:14px;line-height:1.8}.pj-lead{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr);min-height:410px;overflow:hidden;border-radius:9px;background:var(--pj-deep);color:white;box-shadow:0 16px 36px #172a3617}.pj-lead-image{position:relative;display:block;min-height:410px;overflow:hidden;background:var(--pj-paper)}.pj-lead-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.pj-lead-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:40px}.pj-lead-copy .pj-kicker{color:#ffd286}.pj-lead-copy h2{margin:12px 0;font:700 clamp(30px,3.6vw,48px)/1.04 var(--pj-serif);letter-spacing:-1.1px}.pj-lead-copy h2 a{color:white;text-decoration:none}.pj-lead-copy>p:not(.pj-kicker){color:#d9e6e0;font-size:14px}.pj-link{display:inline-block;margin-top:12px;color:var(--pj-teal);font-size:10px;font-weight:850;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.pj-lead-copy .pj-link{color:#ffd286}.pj-link:hover{color:var(--pj-coral-text)}.pj-section{padding-top:48px}.pj-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:18px;border-bottom:1px solid var(--pj-line)}.pj-section-heading h2{margin:6px 0 12px;font:700 30px/1.1 var(--pj-serif);letter-spacing:-.6px}.pj-section-heading>.pj-link{white-space:nowrap}.pj-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.pj-card{min-width:0;overflow:hidden;border:1px solid var(--pj-line);border-radius:7px;background:var(--pj-card);transition:transform .2s ease,box-shadow .2s ease}.pj-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #172a3617}.pj-card-media{position:relative;display:block;height:200px;overflow:hidden;background:var(--pj-paper)}.pj-card-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.pj-card:hover .pj-card-media img{transform:scale(1.04)}.pj-card-body{padding:17px 19px 19px}.pj-card-body :is(h2,h3){margin:7px 0 8px;font:700 22px/1.15 var(--pj-serif);letter-spacing:-.3px}.pj-card-body :is(h2,h3) a{color:var(--pj-ink);text-decoration:none}.pj-card-body :is(h2,h3) a:hover{color:var(--pj-teal)}.pj-card-body .pj-kicker{font-size:9px}.pj-excerpt{margin:0;color:var(--pj-muted);font-size:12px;line-height:1.7}.pj-meta{margin:12px 0 0;color:var(--pj-muted);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pj-dest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.pj-destination{position:relative;display:flex;min-height:160px;align-items:end;overflow:hidden;border-radius:7px;background:#244c56;color:#fff;text-decoration:none}.pj-destination img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.pj-destination:has(img):after{position:absolute;inset:0;background:linear-gradient(0deg,#0b262adc,transparent 85%);content:''}.pj-destination span{position:relative;z-index:1;padding:20px;font:700 22px/1.15 var(--pj-serif)}.pj-destination small{display:block;margin-top:6px;color:#edf4ef;font:700 9px/1.4 var(--pj-sans);letter-spacing:.1em;text-transform:uppercase}.pj-destination:hover{color:white}.pj-newsletter{display:grid;grid-template-columns:1fr minmax(270px,.8fr);align-items:center;gap:30px;margin-top:52px;padding:31px 35px;border:1px solid #e4ddc9;border-radius:8px;background:linear-gradient(115deg,#f1eddf,#ebe7d8)}.pj-newsletter h2{margin:7px 0;font:700 30px/1.08 var(--pj-serif)}.pj-newsletter>div>p:not(.pj-kicker){max-width:600px;margin:0;color:var(--pj-muted);font-size:13px}.pj-newsletter-form input[type=email],.pj-search input[type=search]{min-height:44px;padding:10px 12px;border:1px solid #aab5ae;border-radius:3px;background:#fff;font:inherit}.pj-newsletter-form button,.pj-newsletter-form input[type=submit],.pj-search button{min-height:44px;padding:10px 15px;border:0;border-radius:3px;background:var(--pj-coral);color:#202f34;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.pj-newsletter-note{color:var(--pj-muted);font-size:13px}.pj-content{max-width:1080px;padding-top:48px;padding-bottom:75px}.pj-page-heading{margin-bottom:27px}.pj-page-heading h1,.pj-article-head h1,.pj-not-found h1{max-width:900px;margin:8px 0 10px;font:700 clamp(38px,5vw,64px)/1.02 var(--pj-serif);letter-spacing:-2px}.pj-description{max-width:720px;color:var(--pj-muted)}.pj-page-heading .pj-search{margin-top:18px}.pj-search{display:flex;gap:8px;max-width:520px}.pj-search input[type=search]{flex:1;min-width:0}.pj-content .pj-grid{margin-top:15px}.pj-content .navigation.pagination{margin-top:35px}.nav-links{display:flex;gap:8px}.page-numbers{display:inline-flex;min-width:38px;min-height:38px;align-items:center;justify-content:center;border:1px solid var(--pj-line);border-radius:3px;text-decoration:none}.page-numbers.current{background:var(--pj-deep);color:#fff}.pj-article{max-width:780px;margin:0 auto}.pj-article-head h1{margin-bottom:15px}.pj-article-head .pj-meta{font-size:10px}.pj-article-image{margin:27px 0 0}.pj-article-image img{display:block;width:100%;max-height:590px;object-fit:cover;border-radius:7px}.pj-article-image figcaption{margin-top:8px;color:var(--pj-muted);font-size:11px}.pj-prose{font-size:17px;line-height:1.85}.pj-prose h2,.pj-prose h3{margin-top:1.8em;font-family:var(--pj-serif);line-height:1.2}.pj-prose h2{font-size:32px}.pj-prose h3{font-size:24px}.pj-prose p,.pj-prose li{color:#30414a}.pj-prose a{text-decoration-thickness:1px;text-underline-offset:3px}.pj-prose blockquote{margin:1.5em 0;padding:8px 24px;border-left:3px solid var(--pj-coral);color:var(--pj-muted);font:italic 22px/1.5 var(--pj-serif)}.pj-prose table{width:100%;border-collapse:collapse}.pj-prose th,.pj-prose td{padding:9px;border:1px solid var(--pj-line);text-align:left}.pj-prose iframe{max-width:100%}.pj-article-foot{margin-top:35px;border-top:1px solid var(--pj-line)}.pj-tags{font-size:12px}.pj-not-found{min-height:45vh;padding-top:70px}.pj-button{display:inline-block;margin-top:15px;padding:12px 16px;border-radius:3px;background:var(--pj-coral);color:#202f34;font-size:10px;font-weight:850;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.pj-empty{grid-column:1/-1;padding:24px;border:1px dashed var(--pj-line);border-radius:6px;color:var(--pj-muted)}.pj-footer{padding:38px 0 16px;border-top:1px solid var(--pj-line);background:#f2f0e8}.pj-footer-main{display:flex;align-items:center;gap:24px}.pj-footer-main .pj-brand{font-size:25px}.pj-footer-main .pj-brand img{width:36px;height:36px}.pj-footer-main>p{margin:0;color:var(--pj-muted);font-size:12px}.pj-footer-nav{margin-left:auto}.pj-footer-nav ul{display:flex;gap:17px;margin:0;padding:0;list-style:none}.pj-footer-nav a{color:var(--pj-ink);font-size:11px;text-decoration:none}.pj-footer-bottom{display:flex;justify-content:space-between;margin-top:27px;padding-top:13px;border-top:1px solid var(--pj-line);color:var(--pj-muted);font-size:10px;letter-spacing:.06em}@media(max-width:850px){.pj-header-inner{gap:14px}.pj-tagline{display:none}.pj-menu-list{gap:16px}.pj-grid{gap:13px}.pj-card-media{height:165px}.pj-lead{grid-template-columns:1.2fr .9fr}.pj-lead-copy{padding:27px}.pj-dest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.pj-wrap{width:min(100% - 32px,1240px)}.pj-topbar{font-size:8px;letter-spacing:.04em}.pj-header-inner{min-height:76px}.pj-brand{font-size:27px}.pj-brand img{width:38px;height:38px}.pj-menu>summary{display:flex;width:42px;height:42px;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;border:1px solid var(--pj-line);border-radius:4px}.pj-menu>summary span{width:18px;height:2px;background:var(--pj-ink)}.pj-nav{position:absolute;z-index:10;top:115px;right:16px;left:16px;padding:14px;border:1px solid var(--pj-line);border-radius:5px;background:var(--pj-card);box-shadow:0 12px 30px #172a3624}.pj-menu-list,.pj-menu ul{align-items:stretch;flex-direction:column;gap:0}.pj-menu-list li+li{border-top:1px solid var(--pj-line)}.pj-menu-list a{display:block;padding:11px 8px}.pj-welcome{align-items:flex-start;flex-direction:column;gap:13px;padding:30px 0 18px}.pj-welcome h1{font-size:clamp(42px,12vw,60px);letter-spacing:-2px}.pj-welcome>p{font-size:13px}.pj-lead{grid-template-columns:1fr}.pj-lead-image{min-height:270px}.pj-lead-copy{padding:25px}.pj-lead-copy h2{font-size:35px}.pj-section{padding-top:37px}.pj-section-heading h2{font-size:25px}.pj-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pj-card-media{height:130px}.pj-card-body{padding:12px}.pj-card-body :is(h2,h3){font-size:18px}.pj-excerpt{font-size:11px}.pj-newsletter{grid-template-columns:1fr;gap:15px;margin-top:38px;padding:23px}.pj-dest-grid{gap:9px}.pj-destination{min-height:135px}.pj-destination span{padding:14px;font-size:19px}.pj-content{padding-top:33px}.pj-content .pj-grid{margin-top:15px}.pj-page-heading h1,.pj-article-head h1,.pj-not-found h1{font-size:42px;letter-spacing:-1.4px}.pj-prose{font-size:16px}.pj-prose h2{font-size:27px}.pj-footer-main{align-items:flex-start;flex-direction:column;gap:12px}.pj-footer-nav{margin:0}.pj-footer-nav ul{flex-wrap:wrap;gap:8px 16px}.pj-footer-bottom{font-size:9px}}@media(max-width:380px){.pj-grid{grid-template-columns:1fr}.pj-card-media{height:190px}.pj-section-heading>.pj-link{font-size:8px}.pj-topbar .pj-wrap span:last-child{display:none}}

/* Structured itinerary pages */
.pj-hub-deck{max-width:780px;color:var(--pj-muted);font:400 clamp(19px,2.2vw,25px)/1.5 var(--pj-serif)}
.pjhub-route{margin:28px 0 42px;padding:24px;border:1px solid var(--pj-line);border-radius:10px;background:#fff}
.pjhub-route h2{margin-top:0;font-size:28px}
.pjhub-route>p{font-size:14px;color:var(--pj-muted)}
.pjhub-route-map{display:block;width:100%;max-width:800px;height:auto;margin:20px auto;border-radius:18px}
.pjhub-route-list{display:grid;gap:11px;margin:25px 0;padding-left:28px}
.pjhub-route-list li{padding:0 0 12px 4px;border-bottom:1px solid var(--pj-line)}
.pjhub-route-list li span{font-size:14px;color:var(--pj-muted)}
.pjhub-route-list li p{margin:5px 0 0;font-size:14px}
.pjhub-map-credit{font-size:12px!important}
.pjhub-sources{margin-top:45px;padding-top:20px;border-top:1px solid var(--pj-line)}
.pjhub-sources li{font-size:14px}
@media(max-width:620px){.pjhub-route{padding:16px}.pjhub-route-list{padding-left:22px}}

/* Explicitly placed secondary images within editorial articles */
.pj-inline-image{width:min(100%,820px);margin:2rem auto 2.25rem}
.pj-inline-image__img{display:block;width:100%;height:auto;border-radius:8px;object-fit:cover}

/* Linked food, lodging, and practical subguides on destination stories. */
.pj-related-guides{margin:42px 0 18px;padding:25px;border:1px solid var(--pj-line);border-radius:9px;background:var(--pj-card)}
.pj-related-guides h2{margin:0 0 16px;font:700 26px/1.15 var(--pj-serif)}
.pj-related-guides ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:0;padding:0;list-style:none}
.pj-related-guides li{padding:14px;border:1px solid var(--pj-line);border-radius:6px;background:#fff}
.pj-related-guides li a{font-weight:750;text-decoration:none}
.pj-related-guides li p{margin:5px 0 0;color:var(--pj-muted);font-size:13px;line-height:1.5}
@media(max-width:620px){.pj-related-guides{padding:16px}.pj-related-guides ul{grid-template-columns:1fr}}

/* Header search: prominent on desktop and a full-width row on small screens. */
.pj-header{position:relative}.pj-header-inner{flex-wrap:wrap;padding-block:12px}.pj-header .pj-tagline{display:none}.pj-site-search{flex:1 1 280px;max-width:420px;margin-left:auto}.pj-site-search input[type=search]{width:100%;min-width:0}.pj-site-search button{flex:0 0 auto}.pj-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.pj-tagline{display:none}.pj-header-inner{gap:16px}.pj-site-search{flex-basis:240px}}
@media(max-width:620px){.pj-header-inner{min-height:0;flex-wrap:wrap;column-gap:12px;row-gap:12px;padding-block:12px}.pj-brand{order:1}.pj-menu{order:2}.pj-site-search{order:3;flex:0 0 100%;width:100%;max-width:none;margin:0}.pj-site-search input[type=search]{flex:1;width:auto}.pj-nav{top:100%;right:16px;left:16px}}

/* Shared homepage modules: load before rendering rather than in body content. */
.pj-money-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}
.pj-money-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pj-money-list a{display:block;padding:16px 18px;border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fff;text-decoration:none;color:inherit;font-weight:600;height:100%;box-sizing:border-box}
.pj-money-list a:hover{border-color:#146b60}
.pj-money-list small{display:block;font-weight:400;opacity:.7;margin-top:4px}
.pj-request{padding:24px;border-radius:14px;background:#146b60;color:#fff}
.pj-request h3{color:#fff;margin:.2em 0 .4em}
.pj-request .pj-kicker{color:#fff}
.pj-request p{color:rgba(255,255,255,.9)}
.pj-request a.pj-btn{display:inline-block;margin-top:8px;background:#f07c50;color:#202f34;padding:.7em 1.2em;border-radius:8px;font-weight:700;text-decoration:none}
.pj-lead-copy .pj-link:hover{color:#ffd286;text-decoration:underline}
.pj-button:hover{color:#202f34;text-decoration:underline}
.pj-destination span{width:100%;background:linear-gradient(0deg,#0b262af2,#0b262ad9)}
.pj-newsletter-form input[type=email],.pj-search input[type=search]{border-color:var(--pj-muted)}
.nav-links{flex-wrap:wrap}
.pj-prose,.pj-hub-deck{overflow-wrap:anywhere}
@media(max-width:800px){.pj-money-grid,.pj-money-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
.pj-lead-image:focus-visible,.pj-destination:focus-visible{outline-offset:-3px;box-shadow:inset 0 0 0 6px #fff}

/* F72: the existing signup hook leads the footer; one editable menu, three groups. */
.pj-footer{padding-top:28px}
.pj-footer-main{display:grid;grid-template-columns:minmax(260px,1.45fr) minmax(140px,.8fr) minmax(140px,.8fr) minmax(220px,1.1fr);align-items:start;gap:32px;padding-top:32px}
.pj-footer-brand{min-width:0}
.pj-footer-main .pj-brand{font-size:40px;gap:12px}
.pj-footer-main .pj-brand img{width:60px;height:60px}
.pj-footer-brand>p{max-width:290px;margin:16px 0 0;color:var(--pj-muted);font-size:17px;line-height:1.65}
.pj-footer-column{min-width:0}
.pj-footer-column h2{margin:4px 0 12px;font:750 16px/1.5 var(--pj-sans);color:var(--pj-ink)}
.pj-footer-links,.pj-footer-links ul{display:block;margin:0;padding:0;list-style:none}
.pj-footer-links ul{padding-left:14px}
.pj-footer-links a{display:flex;align-items:center;min-height:44px;padding:8px 0;color:var(--pj-ink);font-size:16px;line-height:1.6;text-decoration:none;overflow-wrap:anywhere}
.pj-footer-links a:hover{color:var(--pj-teal);text-decoration:underline;text-underline-offset:4px}
.pj-footer-bottom{margin-top:28px;font-size:12px;gap:12px;flex-wrap:wrap}
@media(max-width:1100px){.pj-footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}}
@media(max-width:620px){.pj-footer-main{grid-template-columns:minmax(0,1fr);gap:24px}.pj-footer-brand>p{max-width:340px}.pj-footer-bottom{flex-direction:column;gap:6px}}

/* Keep footer credits separated even when they wrap. */
.pj-footer .pj-footer-bottom{display:flex;justify-content:space-between;column-gap:24px;row-gap:8px}
.pj-footer-bottom>span{display:block}
@media(max-width:620px){.pj-footer .pj-footer-bottom{flex-direction:column;align-items:flex-start}}

.pj-destination:not(:has(img)) span{background:#244c56}

/* Trust links wrap within the standard footer content column. */
.pj-trust-footer.pj-wrap{width:100%;padding:0;margin-top:24px}
.pj-trust-footer ul{display:flex;flex-wrap:wrap;gap:12px 24px;list-style:none;padding:0;margin:0;font-size:14px}

/* F158: local Latin subset; unlisted scripts use the system fallback. */
@font-face{font-family:'PJ Sans';src:url('assets/fonts/pj-sans-latin.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0020-00FF,U+2000-206F,U+20AC,U+2122,U+2190,U+2192-2193}
:root{--pj-sans:'PJ Sans',system-ui,sans-serif}
/* Mobile keeps the existing system fallback and avoids a font transfer on LCP. */
@media(max-width:620px){:root{--pj-sans:system-ui,sans-serif}}
/* Retain space before consent-driven media and form hydration. */
.pj-route-map [data-pj-map-canvas]{height:24rem}
.pj-route-map [data-pj-map-canvas] iframe{display:block;width:100%;height:100%;border:0}
.pj-dest-map,[data-pj-map]{min-height:24rem}
.pj-ad-slot{min-height:var(--pj-slot-height,250px);contain:layout}
.pj-newsletter-placement{min-height:0}
.pj-newsletter-fresh{min-height:220px}
.pj-prose iframe{display:block;max-width:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.pj-card,.pj-card-media img{transition:none}}
