:root{
  --forest:#173b32;--forest2:#0d2b25;--cream:#f5f0df;--paper:#eee7d2;
  --orange:#ef6c22;--ink:#183b35;--muted:#64736e;--white:#fffdf6;
  --shadow:0 12px 35px rgba(20,45,39,.12);--radius:16px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--cream);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}
img{max-width:100%;height:auto}
a{color:inherit}
.skip-link{position:absolute;left:-9999px;top:auto}.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.7rem 1rem;z-index:9999}
.site-header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1rem,4vw,4rem);background:rgba(23,59,50,.98);color:#fff;box-shadow:0 3px 18px rgba(0,0,0,.12)}
.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border:2px solid var(--orange);border-radius:50%;font-size:1.35rem}.brand strong{display:block;font-family:Georgia,serif;font-size:1.35rem;line-height:1.1}.brand small{display:block;font-size:.58rem;letter-spacing:.18em;opacity:.8;margin-top:.25rem}
.site-nav{display:flex;gap:1.5rem;align-items:center}.site-nav a{text-decoration:none;font-weight:650;font-size:.92rem;padding:.5rem 0;border-bottom:2px solid transparent}.site-nav a:hover,.site-nav a.active{border-color:var(--orange)}
.menu-toggle{display:none;background:none;border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:8px;padding:.55rem .75rem}
.hero{position:relative;min-height:620px;display:grid;place-items:center;text-align:center;overflow:hidden;background:linear-gradient(125deg,#345847,#a98b5e 55%,#f2c47c)}
.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 35%,rgba(255,220,150,.9),transparent 23%),linear-gradient(160deg,transparent 35%,rgba(13,43,37,.5)),linear-gradient(35deg,rgba(30,70,58,.8),transparent 50%)}
.hero:after{content:"";position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(170deg,transparent,#263f35 65%,#102d27);clip-path:polygon(0 55%,14% 35%,29% 50%,44% 28%,58% 52%,72% 22%,86% 45%,100% 15%,100% 100%,0 100%)}
.hero-content{position:relative;z-index:2;color:#fff;max-width:800px;padding:5rem 1rem}.compass-symbol{font-size:4rem;color:var(--orange);text-shadow:0 2px 5px #173b32}.eyebrow{font-size:.76rem;font-weight:800;letter-spacing:.18em;margin:0 0 .6rem;opacity:.8}.ink{color:var(--orange)}.hero h1{font-family:Georgia,serif;font-size:clamp(3.3rem,8vw,6.5rem);line-height:.95;margin:.2rem 0;text-shadow:0 3px 15px rgba(0,0,0,.3)}.hero-tagline{font-size:1.15rem;text-transform:uppercase;letter-spacing:.25em;font-weight:750}.button{display:inline-flex;gap:.8rem;align-items:center;background:var(--orange);color:#fff;text-decoration:none;border:2px solid var(--orange);border-radius:8px;padding:.85rem 1.3rem;font-weight:800;letter-spacing:.03em;box-shadow:var(--shadow)}.button:hover{filter:brightness(.95);transform:translateY(-1px)}.button-outline{background:transparent;color:#fff}
.section-paper{background:var(--paper);padding:clamp(4rem,8vw,7rem) 0}.container{width:min(1180px,calc(100% - 2rem));margin-inline:auto}.narrow{max-width:800px}.split{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.split h2,.latest h2{font-family:Georgia,serif;font-size:clamp(2.1rem,4vw,3.4rem);line-height:1.05;margin:.2rem 0 1rem}.script-line{font-family:cursive;font-size:1.45rem;font-weight:700;display:inline-block;border-bottom:4px solid var(--orange);padding-bottom:.15rem}
.photo-card{padding:1rem;background:#fffdf7;box-shadow:var(--shadow);transform:rotate(1.5deg)}.photo-card span{display:block;padding:.8rem .3rem .2rem;font-family:cursive;font-weight:700;font-size:1.15rem}.mountains{height:350px;background:linear-gradient(180deg,#9fc7d0 0 38%,#d6bc8b 38% 50%,#466f5a 50%);clip-path:polygon(0 55%,15% 33%,27% 48%,43% 15%,60% 50%,73% 27%,100% 58%,100% 100%,0 100%);position:relative}.mountains:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(135deg,#78965b,#355b49)}
.features{background:#fffdf7;padding:3rem 0}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;text-align:center}.feature-icon{font-size:2.6rem;color:var(--orange)}.feature-grid h3{font-family:cursive;font-size:1.4rem;margin:.4rem 0}.feature-grid p{color:var(--muted);margin:.2rem 0}
.section-dark{background:var(--forest);color:#fff;padding:5rem 0}.latest-grid{display:grid;grid-template-columns:.75fr 2fr;gap:3rem;align-items:center}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.post-card{overflow:hidden;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(255,255,255,.05)}.post-image{height:155px}.cliffs{background:linear-gradient(155deg,#597d62,#b4a16f 50%,#365b57 51%)}.lake{background:linear-gradient(180deg,#8eb9c2 0 45%,#527c68 46% 63%,#c0d0c7 64%);position:relative}.lake:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(160deg,transparent 40%,#315846 41% 60%,transparent 61%)}.map{background:linear-gradient(25deg,#d7c78f,#f0e4bc 48%,#8b9b7d 49%,#d8cfa4 50%);position:relative}.map:after{content:"✦";font-size:4rem;color:#233f37;position:absolute;right:20%;top:25%}.post-body{padding:1rem}.post-body small{font-size:.65rem;letter-spacing:.12em;opacity:.65}.post-body h3{margin:.3rem 0;font-size:1.1rem}.post-body a{color:#ff9a59;font-weight:700;text-decoration:none}
.page-hero{background:var(--forest);color:#fff;padding:6rem 0}.page-hero h1{font-family:Georgia,serif;font-size:clamp(2.8rem,6vw,5rem);line-height:1;margin:.3rem 0}.page-hero p:last-child{font-size:1.15rem;max-width:650px}.card-grid,.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.info-card,.blog-card{background:#fffdf7;padding:1.5rem;border-radius:var(--radius);box-shadow:var(--shadow)}.info-card span{color:var(--orange);font-weight:900}.info-card h2,.blog-card h2{font-family:Georgia,serif}.blog-card{padding:0;overflow:hidden}.blog-card .post-body{padding:1.5rem;color:var(--ink)}.blog-card .post-body a{color:var(--forest)}
.article{background:var(--paper)}.article-header{padding:6rem 1rem 3rem;text-align:center;max-width:900px;margin:auto}.article-header h1{font-family:Georgia,serif;font-size:clamp(2.8rem,6vw,5rem);line-height:1;margin:.4rem 0}.article-meta{color:var(--muted)}.article-hero{height:min(55vw,500px);width:min(1100px,calc(100% - 2rem));margin:0 auto 3rem;border-radius:var(--radius)}.article-body{max-width:760px;margin:auto;padding:0 1rem 6rem}.article-body .lead{font-size:1.25rem;font-weight:650}.article-body h2{font-family:Georgia,serif;margin-top:2.5rem}.article-body blockquote{border-left:5px solid var(--orange);padding:1rem 1.5rem;font-family:cursive;font-size:1.4rem;margin:2rem 0}
.contact-form{display:grid;gap:.6rem}.contact-form label{font-weight:750;margin-top:1rem}.contact-form input,.contact-form textarea{font:inherit;padding:.8rem;border:1px solid #bbc2bb;border-radius:8px;background:#fffdf7;color:var(--ink)}.contact-form input:focus,.contact-form textarea:focus{outline:3px solid rgba(239,108,34,.25);border-color:var(--orange)}.form-note{font-size:.85rem;color:var(--muted)}
.site-footer{background:#0d2420;color:#dce7e2;padding:2rem 0}.footer-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:center}.footer-grid nav{display:flex;gap:1.2rem}.footer-grid nav a{font-size:.85rem;text-decoration:none}.footer-grid p{margin:0;text-align:right;font-size:.78rem;opacity:.7}.footer-brand{color:#fff}.footer-brand .brand-mark{width:38px;height:38px}
@media(max-width:800px){.site-nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;padding:1rem;background:var(--forest);gap:.25rem}.site-nav.open{display:flex}.site-nav a{padding:.8rem 1rem}.menu-toggle{display:block}.split,.latest-grid{grid-template-columns:1fr}.feature-grid{grid-template-columns:repeat(2,1fr)}.post-grid,.card-grid{grid-template-columns:1fr}.hero{min-height:570px}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-grid nav{justify-content:center;flex-wrap:wrap}.footer-grid p{text-align:center}}
@media(max-width:480px){.brand small{display:none}.feature-grid{grid-template-columns:1fr}.hero h1{font-size:3.2rem}.hero-tagline{font-size:.9rem}.photo-card{transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* --- Blog system --- */
.blog-toolbar{display:grid;grid-template-columns:1.5fr 1fr;gap:1rem;align-items:end;margin-bottom:2rem}
.search-box,.filter-select{font:inherit;width:100%;padding:.85rem 1rem;border:1px solid #b9c0b8;border-radius:9px;background:#fffdf7;color:var(--ink)}
.search-box:focus,.filter-select:focus{outline:3px solid rgba(239,108,34,.22);border-color:var(--orange)}
.filter-label{display:block;font-size:.75rem;font-weight:800;letter-spacing:.1em;margin-bottom:.35rem}
.blog-results{color:var(--muted);font-size:.9rem;margin-bottom:1.25rem}
.blog-grid-enhanced{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.blog-card-enhanced{background:#fffdf7;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}
.blog-card-enhanced img{width:100%;height:205px;object-fit:cover;display:block}
.blog-card-enhanced .post-body{padding:1.35rem;display:flex;flex-direction:column;flex:1}
.post-meta{font-size:.72rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.tag-list{display:flex;flex-wrap:wrap;gap:.35rem;margin:.8rem 0}
.tag{font-size:.7rem;padding:.22rem .55rem;border:1px solid #c9cec7;border-radius:999px;color:var(--forest);background:#f5f0df}
.blog-card-enhanced h2{font-family:Georgia,serif;font-size:1.45rem;line-height:1.15;margin:.45rem 0}
.blog-card-enhanced p{color:var(--muted);margin:.2rem 0 1rem}
.read-link{margin-top:auto;color:var(--forest);font-weight:800;text-decoration:none}
.featured-post{display:grid;grid-template-columns:1.15fr 1fr;background:#fffdf7;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);margin-bottom:3rem}
.featured-post img{width:100%;height:100%;min-height:330px;object-fit:cover}
.featured-copy{padding:clamp(1.5rem,4vw,3rem);display:flex;flex-direction:column;justify-content:center}
.featured-copy h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;margin:.4rem 0 1rem}
.featured-badge{display:inline-block;width:max-content;background:var(--orange);color:#fff;padding:.3rem .65rem;border-radius:999px;font-size:.7rem;font-weight:900;letter-spacing:.08em}
.no-results{padding:3rem;text-align:center;background:#fffdf7;border-radius:var(--radius);color:var(--muted)}
.article-featured-image{width:min(1100px,calc(100% - 2rem));height:min(55vw,520px);object-fit:cover;display:block;margin:0 auto 3rem;border-radius:var(--radius)}
.article-tags{justify-content:center}
.article-share{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #c9cec7}
.article-nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;max-width:760px;margin:3rem auto 0;padding:0 1rem}
.article-nav a{padding:1rem;background:#fffdf7;border-radius:10px;text-decoration:none;box-shadow:0 4px 15px rgba(20,45,39,.07)}
.article-nav a:last-child{text-align:right}
.article-nav small{display:block;color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}
@media(max-width:800px){.blog-toolbar,.featured-post,.article-nav{grid-template-columns:1fr}.blog-grid-enhanced{grid-template-columns:1fr}.featured-post img{min-height:220px}.article-nav a:last-child{text-align:left}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.blog-tools{display:flex;gap:.8rem;flex-wrap:wrap;margin-bottom:1.5rem}
.blog-tools input,.blog-tools select{font:inherit;border:1px solid #bbc2bb;background:#fffdf7;color:var(--ink);border-radius:8px;padding:.75rem 1rem}
.search-box{flex:1;min-width:240px}.search-box input{width:100%}
.blog-status{color:var(--muted);font-size:.9rem;margin-bottom:1rem}
.blog-card .post-body{display:flex;flex-direction:column}.post-title-link{text-decoration:none;color:var(--ink)}.post-title-link:hover{text-decoration:underline}
.post-tags,.article-tags{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.7rem}.post-tags span,.article-tags span{font-size:.72rem;background:#e6dfca;border-radius:99px;padding:.25rem .55rem;color:var(--ink)}
.post-date{font-size:.8rem;color:var(--muted);margin-bottom:0}
.article-nav{max-width:760px;margin:auto;padding:0 1rem 5rem;display:flex;justify-content:space-between;gap:1rem}.article-nav a{font-weight:750;color:var(--forest);text-decoration:none}.article-nav a:hover{text-decoration:underline}
\n\n/* --- Mockup-match refinements --- */
.about-strip .split>div:first-child{position:relative}
.about-title{position:relative;display:inline-block;font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;font-weight:700;font-size:clamp(2.35rem,4.5vw,4rem)!important;letter-spacing:-.035em;line-height:1.08!important;margin:.05rem 0 1.65rem!important;transform:rotate(-1deg)}
.about-title::after{content:"";position:absolute;left:3%;right:-3%;bottom:-.48rem;height:.65rem;background:var(--orange);clip-path:polygon(0 42%,12% 30%,28% 44%,47% 25%,65% 40%,82% 27%,100% 37%,98% 63%,81% 55%,64% 70%,45% 56%,26% 72%,9% 58%,1% 67%);transform:rotate(-1.5deg);opacity:.98}
.script-line{font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;border-bottom:0;position:relative;padding:0 .15rem .35rem;font-size:1.55rem;transform:rotate(-1deg)}
.script-line::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--orange);border-radius:70% 35% 65% 40%;transform:rotate(-1deg)}
.features{padding:4rem 0 4.25rem}
.feature-grid{gap:clamp(1.4rem,3vw,3rem)}
.feature-grid article{padding:.25rem .35rem}
.feature-icon{height:78px;display:grid;place-items:center;margin:0 auto .65rem}
.feature-icon img{width:68px;height:68px;display:block;object-fit:contain}
.feature-grid h3{font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-size:1.38rem;font-weight:700;line-height:1.15;margin:.3rem 0 .55rem;transform:rotate(-.5deg)}
.feature-grid p{font-size:.94rem;line-height:1.55;max-width:235px;margin:.2rem auto}
@media(max-width:480px){.about-title{font-size:2.45rem!important}.about-title::after{height:.5rem;bottom:-.35rem}.feature-icon{height:72px}.feature-icon img{width:64px;height:64px}}

/* --- Homepage reference-image rebuild --- */
.site-header{background:#0c342e;background-image:radial-gradient(circle at 15% 120%,transparent 0 24px,rgba(255,255,255,.035) 25px 26px,transparent 27px 45px,rgba(255,255,255,.025) 46px 47px,transparent 48px);padding-top:.7rem;padding-bottom:.7rem}
.brand-logo{width:92px;height:58px;object-fit:contain;flex:none}.brand strong{font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-size:1.55rem;font-weight:700}.brand small{font-size:.58rem;letter-spacing:.22em}
.hero{min-height:455px;background-image:linear-gradient(90deg,rgba(8,35,30,.15),rgba(8,35,30,.03)),url('../images/home-hero.jpg');background-size:cover;background-position:center 47%;}
.hero:before{background:linear-gradient(180deg,rgba(10,37,32,.04),rgba(10,37,32,.08))}.hero:after{display:none}.hero-content{padding:3.6rem 1rem 4rem;color:#0d3b34;text-shadow:none}.hero-emblem{width:135px;height:82px;margin:0 auto -8px;filter:drop-shadow(0 2px 2px rgba(255,255,255,.5))}.hero h1{font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-size:clamp(3.4rem,7vw,6.2rem);font-weight:700;letter-spacing:-.06em;text-shadow:0 2px 0 rgba(255,255,255,.3);margin:0}.hero-tagline{font-size:1.05rem;line-height:1.35;letter-spacing:.24em;margin:1rem 0 1.55rem}.hero .button{box-shadow:0 5px 14px rgba(23,59,50,.22)}
.section-paper{position:relative;background-color:#f4edda;background-image:linear-gradient(30deg,rgba(92,79,52,.035) 12%,transparent 12.5%,transparent 87%,rgba(92,79,52,.035) 87.5%),linear-gradient(150deg,rgba(92,79,52,.025) 12%,transparent 12.5%,transparent 87%,rgba(92,79,52,.025) 87.5%);padding:3.4rem 0}.about-strip:after{content:"N\A  ↑\A W  ✦  E\A  ↓\A S";white-space:pre;position:absolute;right:5%;top:18%;font-family:Georgia,serif;font-size:1.1rem;line-height:1.3;text-align:center;color:rgba(105,82,54,.35);border:3px solid rgba(105,82,54,.22);width:145px;height:145px;border-radius:50%;display:grid;place-items:center;transform:rotate(-5deg)}
.about-strip .container{position:relative;z-index:1}.about-strip .split{grid-template-columns:1.05fr .95fr;gap:5rem}.about-strip p:not(.eyebrow):not(.script-line){max-width:560px}.about-strip .eyebrow{display:none}.photo-card{padding:.8rem;background:#fffaf0;box-shadow:0 12px 24px rgba(55,47,32,.18);transform:rotate(-4deg);max-width:480px}.about-photo{display:block;width:100%;height:280px;object-fit:cover}.photo-card span{font-size:1rem;color:#4b554f}
.features{border-top:1px solid rgba(23,59,50,.08);border-bottom:1px solid rgba(23,59,50,.08)}.feature-grid article+article{border-left:1px solid rgba(23,59,50,.12)}
.section-dark{background:#0c342e;background-image:radial-gradient(circle at 12% 20%,transparent 0 35px,rgba(255,255,255,.025) 36px 37px,transparent 38px 65px,rgba(255,255,255,.018) 66px 67px,transparent 68px);padding:2.4rem 0}.latest-grid{grid-template-columns:.7fr 2.3fr;gap:2rem}.latest h2{font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-size:2.2rem;display:inline-block;position:relative}.latest h2:after{content:"";position:absolute;height:4px;background:var(--orange);left:0;right:0;bottom:-7px;transform:rotate(-2deg)}.post-image{height:130px}.post-card{border-radius:4px}.post-body{padding:.75rem}.post-body h3{font-size:1rem}.site-footer{padding:1rem 0}.footer-logo{width:65px;height:44px}.footer-brand strong{font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive}
@media(max-width:800px){.brand-logo{width:64px;height:44px}.brand strong{font-size:1.15rem}.hero{min-height:500px;background-position:center}.hero-content{padding:4rem 1rem}.hero-emblem{width:105px}.hero h1{font-size:clamp(3rem,13vw,4.8rem)}.about-strip:after{display:none}.about-strip .split{gap:2.5rem}.photo-card{margin:auto}.feature-grid article+article{border-left:0}.latest-grid{grid-template-columns:1fr}.section-dark{padding:3rem 0}}
@media(max-width:480px){.site-header{padding-inline:.8rem}.brand-logo{width:55px}.brand strong{font-size:1.05rem}.hero{min-height:470px}.hero h1{font-size:3.1rem}.hero-tagline{font-size:.78rem;letter-spacing:.16em}.about-photo{height:220px}.photo-card{transform:rotate(-1deg)}.feature-grid article{padding:1rem 0}.feature-grid article+article{border-top:1px solid rgba(23,59,50,.1)}}

/* Uploaded brand logo */
.brand-logo{width:76px;height:76px;object-fit:contain}.hero-emblem{width:135px;height:135px;object-fit:contain;margin-bottom:12px}.footer-logo{width:62px;height:62px}
@media(max-width:800px){.brand-logo{width:56px;height:56px}.hero-emblem{width:110px;height:110px}}

/* Generated editorial hero banners for the main pages. */
.page-hero-photo{min-height:440px;display:flex;align-items:center;padding:80px 0;background-size:cover;background-position:center;position:relative;isolation:isolate}
.page-hero-photo::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,29,23,.72),rgba(7,29,23,.32) 55%,rgba(7,29,23,.05));z-index:-1}
.page-hero-photo h1{font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;font-weight:700;letter-spacing:-.06em;max-width:850px;text-shadow:0 2px 16px rgba(0,0,0,.4)}
.page-hero-photo .eyebrow{color:#f1c986;opacity:1}.page-hero-photo p:last-child{text-shadow:0 1px 8px #102c24}
.page-hero-about{background-image:url('../images/hero-about.png')}.page-hero-adventures{background-image:url('../images/hero-jungle.png')}.page-hero-blog{background-image:url('../images/hero-blog.png')}
@media(max-width:700px){.page-hero-photo{min-height:380px;padding:64px 0;background-position:58% center}.page-hero-photo h1{font-size:clamp(2.2rem,9vw,3.5rem)}.page-hero-photo::before{background:linear-gradient(90deg,rgba(7,29,23,.78),rgba(7,29,23,.4))}}

.post-cover{display:block;width:100%;object-fit:cover}

/* Captions for article photographs */
figure.article-photo {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 2rem 0;
  padding: 0;
  text-align: center;
}
figure.article-photo > img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}
figure.article-photo > figcaption {
  display: block;
  width: 100%;
  margin: .45rem 0 0;
  padding: 0;
  font-size: .75rem;
  line-height: 1.4;
  font-weight: 400;
  color: var(--muted, #68736a);
  font-style: italic;
  text-align: center;
  overflow-wrap: anywhere;
}
figure.article-photo > figcaption p {
  margin: 0;
  font: inherit;
}
figure.article-photo > img.article-featured-image {
  width: min(1100px, calc(100% - 2rem));
  height: min(55vw, 520px);
  object-fit: cover;
  margin: 0 auto;
}
