/* PhpOG Page Manager presentation, loaded after the portable Pages module. */
.cms-page-shell{width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);margin:0 auto;padding:0;color:var(--classic-ink-soft)}
.cms-page-hero{position:relative;display:grid;min-height:0;align-content:start;width:100%;margin:0 0 var(--cms-section-gap);padding:10px 0 30px;overflow:visible;border:0;border-bottom:1px solid var(--classic-line);border-radius:0;background:transparent;color:var(--classic-ink);text-align:left}.cms-page-hero>span{color:var(--classic-accent);font-size:9.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.cms-page-hero :is(h1,h2){max-width:22ch;margin:7px 0 11px;color:var(--classic-ink);font-size:clamp(29px,3.4vw,39px);font-weight:650;line-height:1.15}.cms-page-hero p{max-width:65ch;margin:0;color:var(--classic-ink-soft);font-size:14px;line-height:1.7}.cms-page-button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;margin-top:18px;padding:8px 14px;border:1px solid var(--classic-accent);border-radius:7px;background:var(--classic-accent);color:#0b1220;font-weight:700;letter-spacing:0;text-decoration:none}.cms-page-button:hover{border-color:var(--classic-accent-dark);background:var(--classic-accent-dark);color:#0b1220}
.cms-page-rich-text,.cms-page-callout,.cms-page-image,.cms-page-quote,.cms-page-features,.cms-page-columns,.cms-page-media,.cms-widget,.cms-page-empty,.cms-page-image-text{width:min(100%,var(--cms-reading-max));max-width:var(--cms-reading-max);min-height:0;margin:0 auto var(--cms-section-gap);padding:0;border:0;border-radius:0;background:transparent;color:var(--classic-ink-soft);box-shadow:none;line-height:1.78}.cms-page-shell>:last-child{margin-bottom:0}.cms-page-rich-text:only-child{min-height:min(52vh,500px)}.cms-page-rich-text h1,.cms-page-image-text h1,.cms-page-empty h1{margin:0 0 18px;color:var(--classic-ink);font-size:clamp(29px,3.2vw,38px);line-height:1.16}.cms-page-rich-text h2,.cms-page-image-text h2,.cms-page-callout h2,.cms-page-features h2,.cms-page-columns h2,.cms-widget>h2{margin:28px 0 9px;color:var(--classic-ink);font-size:21px;line-height:1.25}.cms-page-rich-text h3{margin:24px 0 8px;color:var(--classic-ink);font-size:17px}.cms-page-rich-text p,.cms-page-image-text p{margin:0 0 17px}.cms-page-rich-text a,.cms-page-image-text a{color:#93c5fd;text-decoration:underline;text-decoration-thickness:1px}.cms-page-rich-text a:hover,.cms-page-image-text a:hover{color:#bfdbfe}.cms-page-heading{width:min(100%,var(--cms-reading-max));margin:0 auto 18px;color:var(--classic-ink);font-size:26px;text-align:left}.cms-page-image-text figure,.cms-page-image-text.image-right figure{width:min(42%,320px);margin:3px 24px 14px 0;float:left}.cms-page-image-text.image-right figure{margin:3px 0 14px 24px;float:right}.cms-page-image-text img{border:1px solid var(--classic-line);border-radius:7px;box-shadow:none}.cms-page-features ul,.cms-widget-content{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.cms-widget-card{padding:16px;border:1px solid var(--classic-line);border-radius:8px;background:var(--classic-white)}.cms-widget-card>span{color:var(--classic-accent)}.cms-widget-card h3 a{color:var(--classic-ink)}.cms-widget-card p,.cms-widget-intro{color:var(--classic-steel)}.cms-page-contact{width:min(100%,var(--cms-reading-max));margin:20px auto 0}.cms-page-contact h2{margin:0 0 7px;color:var(--classic-ink);font-size:21px}.cms-page-contact .form-intro{margin:0 0 18px;color:var(--classic-steel)}.cms-page-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cms-page-callout,.cms-page-quote{padding:16px 18px;border-left:3px solid var(--classic-accent);background:#111a2b}.cms-page-divider{width:min(100%,var(--cms-reading-max));margin:var(--cms-section-gap) auto}
@media(max-width:680px){.cms-page-image-text figure,.cms-page-image-text.image-right figure{width:100%;margin:0 0 18px;float:none}.cms-page-columns{grid-template-columns:1fr}.cms-page-rich-text:only-child{min-height:0}}

/* PHPOG Page Manager homepage: editorial notebook layout.
   Scoped to a Page Manager canvas whose first block is a Hero so ordinary
   About/Contact pages retain their existing presentation. */
.cms-page-shell{
  --home-charcoal:#17191d;
  --home-charcoal-2:#202126;
  --home-warm:#241d17;
  --home-warm-2:#302319;
  --home-paper:#f2eee6;
  --home-paper-2:#e8e0d4;
  --home-paper-ink:#20242a;
  --home-paper-soft:#565c64;
  --home-rule:#3c4656;
  counter-reset:phpog-home-section;
}
.cms-page-shell > .cms-page-hero:first-child{
  position:relative;isolation:isolate;width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);
  min-height:0;margin:0 auto clamp(44px,6vw,74px);padding:clamp(34px,5vw,58px) clamp(26px,5vw,62px);
  overflow:hidden;border:1px solid #443b32;border-left:4px solid var(--classic-accent);border-radius:4px 18px 4px 18px;
  background:
    radial-gradient(circle at 88% 18%,rgba(251,191,36,.18),transparent 24%),
    radial-gradient(circle at 73% 78%,rgba(180,83,9,.14),transparent 29%),
    linear-gradient(132deg,#1c1b1a 0%,#14171b 58%,#211912 100%);
  box-shadow:0 18px 60px rgba(0,0,0,.16);
}
.cms-page-shell > .cms-page-hero:first-child::before{
  content:"";position:absolute;z-index:-1;inset:0 0 0 58%;opacity:.22;pointer-events:none;
  background-image:linear-gradient(rgba(251,191,36,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(251,191,36,.1) 1px,transparent 1px);
  background-size:30px 30px;mask-image:linear-gradient(90deg,transparent,#000 28%,#000);
}
.cms-page-shell > .cms-page-hero:first-child > .cms-page-eyebrow{order:1;color:#f6c453;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;font-weight:800;letter-spacing:.16em}
.cms-page-shell > .cms-page-hero:first-child > :is(h1,h2){order:2;max-width:28ch;margin:10px 0 14px;color:#f3f4f6;font-size:clamp(34px,3.1vw,38px);font-weight:720;line-height:1.1;letter-spacing:-.025em;text-wrap:balance}
.cms-page-shell > .cms-page-hero:first-child > p{order:3;max-width:63ch;margin:0;color:#d0d4da;font-size:15px;line-height:1.78}
.cms-page-shell > .cms-page-hero:first-child > .cms-page-button{order:4;justify-self:start;margin-top:24px;border-color:#f6b91f;background:#f6b91f;color:#17130b;box-shadow:0 7px 20px rgba(245,158,11,.14)}
.cms-page-shell > .cms-page-hero:first-child > .cms-page-button:hover{border-color:#ffd267;background:#ffd267;color:#17130b;transform:translateY(-1px)}

.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-heading{
  counter-increment:phpog-home-section;display:flex;align-items:baseline;gap:12px;width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);
  margin:0 auto 20px;padding-top:clamp(38px,5vw,62px);border-top:1px solid var(--home-rule);color:var(--classic-ink);
  font-size:clamp(25px,3vw,34px);font-weight:700;letter-spacing:-.022em;
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-heading::before{
  content:"0" counter(phpog-home-section);color:#dca51a;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;font-weight:850;letter-spacing:.1em;
}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading{padding-top:0;border-top:0}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-divider{width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);margin:clamp(38px,5vw,60px) auto;border-color:var(--home-rule)}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-divider + .cms-page-heading{padding-top:0;border-top:0}

/* Other two-column blocks use warmer graphite instead of another navy panel. */
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns{
  width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);gap:1px;margin:0 auto 8px;padding:1px;border:0;border-radius:10px;background:#484039;overflow:hidden;
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns > div{min-width:0;padding:24px 26px;background:var(--home-charcoal)}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns > div:nth-child(even){background:var(--home-warm)}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns h3{margin:0 0 11px;color:#f1f3f5;font-size:15px}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns p{margin:0 0 13px;color:#b8bec8;font-size:12.5px;line-height:1.67}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns p:last-child{margin-bottom:0}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns a{color:#f5bd2b;font-weight:780;text-decoration:none}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns a:hover{color:#ffe08a;text-decoration:underline;text-decoration-thickness:1px}

/* Writing by topic: a warm paper break from the dark shell. */
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns{
  width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0 auto 8px;padding:0;
  overflow:hidden;border:1px solid #cfc4b4;border-radius:12px;background:var(--home-paper);box-shadow:0 14px 36px rgba(0,0,0,.12);
}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns > div{min-width:0;padding:24px 26px;background:var(--home-paper);color:var(--home-paper-soft)}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns > div + div{border-left:1px solid #d7cec1;background:var(--home-paper-2)}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns h3{margin:0 0 13px;color:var(--home-paper-ink);font-size:15px}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns p{position:relative;margin:0 0 16px;padding:0 0 0 14px;color:var(--home-paper-soft);font-size:12.5px;line-height:1.6}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns p::before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;border-radius:50%;background:#b87500}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns p:last-child{margin-bottom:0}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns a{display:inline-block;margin-bottom:2px;color:#8b5300;font-weight:850;text-decoration:none}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns a:hover{color:#4f2f00;text-decoration:underline;text-decoration-thickness:1px}


.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-rich-text{width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);margin:0 auto 10px;padding:0;color:var(--classic-ink-soft)}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-rich-text p{max-width:78ch}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-rich-text ul,
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-rich-text ol{display:grid;gap:12px;margin:18px 0 0;padding-left:22px}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-rich-text li{padding-left:4px;color:var(--classic-ink-soft);line-height:1.62}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-rich-text li a{color:var(--classic-ink);font-weight:760;text-decoration:none}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-page-rich-text li a:hover{color:var(--classic-accent)}

/* "A few articles..." reads like an editorial contents page, not body copy. */
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns + .cms-page-divider + .cms-page-heading + .cms-page-rich-text > ol{
  grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0;list-style:none;counter-reset:phpog-entry;
}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns + .cms-page-divider + .cms-page-heading + .cms-page-rich-text > ol > li{
  counter-increment:phpog-entry;position:relative;min-height:150px;padding:42px 20px 20px;border:1px solid #3b3a37;border-top:3px solid #c99313;border-radius:8px;background:#191a1c;color:#bfc4cc;
}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns + .cms-page-divider + .cms-page-heading + .cms-page-rich-text > ol > li::before{
  content:"0" counter(phpog-entry);position:absolute;top:15px;left:20px;color:#d4a21f;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;font-weight:850;letter-spacing:.1em;
}
.cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns + .cms-page-divider + .cms-page-heading + .cms-page-rich-text > ol > li a{display:block;margin-bottom:7px;color:#f0f1f3;font-size:14px;line-height:1.35}

/* Blog widget: image-led editorial cards. On the PHPOG homepage,
   featured images sit with the article copy instead of becoming detached banners. */
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent{
  width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);margin:0 auto clamp(42px,6vw,72px);padding:0;
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent > h2{display:flex;align-items:center;gap:12px;margin:0 0 22px;padding-top:clamp(38px,5vw,62px);border-top:1px solid var(--home-rule);font-size:clamp(27px,3.2vw,36px);letter-spacing:-.025em}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent > h2::before{content:"LATEST";color:#dca51a;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9px;font-weight:850;letter-spacing:.12em}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-content{
  counter-reset:phpog-home-post;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:0;background:transparent;border-radius:0;overflow:visible;
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card{
  counter-increment:phpog-home-post;position:relative;display:flex;flex-direction:column;min-height:250px;padding:22px;border:1px solid #383a3d;border-radius:10px;background:var(--home-charcoal);overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.11);
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:nth-child(3n){background:var(--home-warm)}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card::after{
  content:counter(phpog-home-post,decimal-leading-zero);position:absolute;z-index:3;top:17px;right:18px;color:rgba(246,190,48,.36);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:19px;font-weight:850;
}
/* Every article that has artwork keeps the image beside its copy on desktop. */
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image{
  display:grid;grid-template-columns:minmax(170px,40%) minmax(0,60%);grid-template-areas:"image label" "image title" "image excerpt" "image action";grid-template-rows:auto auto 1fr auto;column-gap:22px;min-height:250px;padding:0 22px 0 0;
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child{grid-column:1/-1;min-height:340px;background:#17191d}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child.has-image{
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);column-gap:30px;min-height:340px;padding-right:30px;
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card-image{
  grid-area:image;display:block;width:100%;height:100%;min-height:250px;margin:0;overflow:hidden;border:0;border-right:1px solid #3b3b3a;background:#0d1015;
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child.has-image .cms-widget-card-image{min-height:340px}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card-image:hover img{transform:scale(1.018);filter:saturate(1.05) contrast(1.02)}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image > span{grid-area:label;align-self:end;margin-top:24px;padding-right:28px}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image > h3{grid-area:title;padding-right:22px}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image > p{grid-area:excerpt;padding-right:16px}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image > a:last-child{grid-area:action;margin:0 0 22px}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card > span{color:#f0b72a;font-size:9.5px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card h3{max-width:32ch;margin:10px 0 10px;font-size:clamp(19px,2vw,26px);line-height:1.13}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child h3{font-size:clamp(27px,3.2vw,38px)}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card h3 a{color:#f0f2f5;text-decoration:none}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card h3 a:hover{color:#ffd36a}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card p{max-width:66ch;margin:0 0 18px;color:#aeb6c1;font-size:12.5px;line-height:1.66}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card > a:last-child{margin-top:auto;color:#f5bd2b;font-size:11.5px;font-weight:850;text-decoration:none}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card > a:last-child:hover{color:#ffe08a}

/* Freehold origin story gets a warm, human break from the editorial grid. */
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent + .cms-page-divider + .cms-page-heading + .cms-page-rich-text{
  padding:clamp(24px,4vw,38px);border:1px solid #55422d;border-left:4px solid #d69e1f;border-radius:4px 14px 4px 14px;
  background:radial-gradient(circle at 90% 12%,rgba(245,158,11,.1),transparent 27%),linear-gradient(135deg,#211a14,#17191d 72%);box-shadow:0 14px 36px rgba(0,0,0,.12);
}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent + .cms-page-divider + .cms-page-heading + .cms-page-rich-text p{max-width:78ch}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent + .cms-page-divider + .cms-page-heading + .cms-page-rich-text a{color:#f6c24b;text-decoration-color:rgba(246,194,75,.55)}

.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-store-recent,
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-store-featured{width:min(100%,var(--cms-content-max));max-width:var(--cms-content-max);margin:0 auto 18px;padding:0}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-store-recent > h2,
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-store-featured > h2{margin:0 0 18px;font-size:20px}
.cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent + .cms-page-divider{margin-top:0}

@media(max-width:980px){
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-content{grid-template-columns:1fr}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child{grid-column:auto}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image{grid-template-columns:minmax(210px,38%) minmax(0,62%)}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child.has-image{grid-template-columns:minmax(260px,46%) minmax(0,54%)}
}
@media(max-width:760px){
  .cms-page-shell > .cms-page-hero:first-child{padding:30px 24px}
  .cms-page-shell > .cms-page-hero:first-child::before{inset:0 0 0 42%}
  .cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns{grid-template-columns:1fr}
  .cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns > div + div{border-top:1px solid #d7cec1;border-left:0}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns{grid-template-columns:1fr}
  .cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns + .cms-page-divider + .cms-page-heading + .cms-page-rich-text > ol{grid-template-columns:1fr}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-content{grid-template-columns:1fr}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child{grid-column:auto}
}
@media(max-width:640px){
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image,
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child.has-image{
    grid-template-columns:1fr;grid-template-areas:"image" "label" "title" "excerpt" "action";padding:0 20px 20px;
  }
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image .cms-widget-card-image,
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card:first-child.has-image .cms-widget-card-image{
    width:auto;height:auto;min-height:0;margin:0 -20px 18px;border-right:0;border-bottom:1px solid #3b3b3a;aspect-ratio:16/9;
  }
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image > span{margin-top:0;padding-right:28px}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image > h3,
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image > p{padding-right:0}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image > a:last-child{margin-bottom:0}
}
@media(max-width:560px){
  .cms-page-shell > .cms-page-hero:first-child{margin-bottom:42px;padding:26px 20px}
  .cms-page-shell > .cms-page-hero:first-child > :is(h1,h2){font-size:clamp(31px,9.5vw,40px)}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-page-heading{gap:8px}
  .cms-page-shell > .cms-page-hero:first-child + .cms-page-heading + .cms-page-columns > div,
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-page-columns > div{padding:19px}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card{min-height:0;padding:19px}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card.has-image{padding-top:0}
  .cms-page-shell > .cms-page-hero:first-child ~ .cms-widget-blog-recent .cms-widget-card-image{margin:-1px -20px 18px}
}

/* PHPOG v18: personal homepage hero with Jeffery portrait. */
.cms-page-shell > .cms-page-hero:first-child{
  grid-template-columns:minmax(0,1fr) clamp(240px,28vw,340px);
  grid-template-rows:auto auto auto auto;
  column-gap:clamp(30px,5vw,64px);
  align-items:center;
}
.cms-page-shell > .cms-page-hero:first-child > .cms-page-eyebrow{grid-column:1;grid-row:1}
.cms-page-shell > .cms-page-hero:first-child > :is(h1,h2){grid-column:1;grid-row:2;max-width:16ch}
.cms-page-shell > .cms-page-hero:first-child > p{grid-column:1;grid-row:3;max-width:59ch}
.cms-page-shell > .cms-page-hero:first-child > .cms-page-button{grid-column:1;grid-row:4}
.cms-page-shell > .cms-page-hero:first-child::after{
  content:"";
  grid-column:2;
  grid-row:1 / 5;
  align-self:stretch;
  width:100%;
  min-height:390px;
  border:1px solid rgba(246,185,31,.72);
  border-radius:18px 5px 18px 5px;
  background:#15191f url('/assets/uploads/home/jeffery-l-paris-home.webp') center 24% / cover no-repeat;
  box-shadow:12px 12px 0 rgba(246,185,31,.11),0 20px 42px rgba(0,0,0,.28);
}
@media(max-width:820px){
  .cms-page-shell > .cms-page-hero:first-child{
    grid-template-columns:1fr;
    grid-template-rows:auto auto auto auto auto;
  }
  .cms-page-shell > .cms-page-hero:first-child > .cms-page-eyebrow{grid-column:1;grid-row:1}
  .cms-page-shell > .cms-page-hero:first-child > :is(h1,h2){grid-column:1;grid-row:2;max-width:28ch;font-size:clamp(30px,4.7vw,34px)}
  .cms-page-shell > .cms-page-hero:first-child > p{grid-column:1;grid-row:3}
  .cms-page-shell > .cms-page-hero:first-child > .cms-page-button{grid-column:1;grid-row:4}
  .cms-page-shell > .cms-page-hero:first-child::after{
    grid-column:1;
    grid-row:5;
    justify-self:start;
    width:min(100%,360px);
    min-height:0;
    aspect-ratio:4 / 5;
    margin-top:30px;
    background-position:center 22%;
  }
}
@media(max-width:560px){
  .cms-page-shell > .cms-page-hero:first-child > :is(h1,h2){font-size:clamp(27px,8vw,30px);line-height:1.12}
  .cms-page-shell > .cms-page-hero:first-child::after{width:min(100%,320px);margin-top:24px}
}

/* PHPOG v5: Freehold public-download announcement + portrait CTA. */
.cms-page-shell > .home-freehold-heading{
  margin-top:0;
  scroll-margin-top:96px;
}
.cms-page-shell > .home-freehold-announcement{
  position:relative;
  width:min(100%,var(--cms-content-max));
  max-width:var(--cms-content-max);
  margin:0 auto 18px;
  padding:clamp(24px,3.4vw,36px);
  max-height:140rem;
  overflow:hidden;
  border:1px solid #59452b;
  border-left:4px solid #f2b526;
  border-radius:5px 16px 5px 16px;
  background:
    radial-gradient(circle at 92% 8%,rgba(242,181,38,.13),transparent 30%),
    linear-gradient(135deg,#211b15 0%,#171a20 68%,#111722 100%);
  box-shadow:0 18px 44px rgba(0,0,0,.16);
  transition:max-height .5s ease;
}
.cms-page-shell > .home-freehold-announcement p{
  max-width:80ch;
  margin:0 0 17px;
  color:#d0d3d8;
  font-size:14px;
  line-height:1.75;
}
.cms-page-shell > .home-freehold-announcement p:last-child{margin-bottom:0}
.cms-page-shell > .home-freehold-announcement strong{color:#f4f1e9}
.cms-page-shell > .home-freehold-announcement ul{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px 26px;
  margin:20px 0;
  padding-left:20px;
}
.cms-page-shell > .home-freehold-announcement li{color:#c5cad1;line-height:1.55}
.cms-page-shell > .home-freehold-announcement a{color:#ffd05d;font-weight:800;text-decoration-thickness:1px;text-underline-offset:3px}
.cms-page-shell > .home-freehold-announcement.is-collapsed{
  max-height:var(--freehold-collapsed-height,22rem);
}
.cms-page-shell > .home-freehold-announcement.is-collapsed::after{
  content:"";
  position:absolute;
  z-index:2;
  right:0;
  bottom:0;
  left:0;
  height:min(46%,11rem);
  pointer-events:none;
  background:linear-gradient(to bottom,rgba(23,26,32,0),rgba(23,26,32,.70) 46%,#171a20 92%);
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
}
.home-freehold-toggle{
  display:flex;
  width:max-content;
  max-width:100%;
  min-height:40px;
  align-items:center;
  justify-content:center;
  margin:0 auto clamp(34px,4vw,50px);
  padding:9px 15px;
  border:1px solid #e8ad22;
  border-radius:7px;
  background:#f2b526;
  color:#17130b;
  font:inherit;
  font-weight:850;
  cursor:pointer;
  box-shadow:0 7px 20px rgba(245,158,11,.12);
}
.home-freehold-toggle:hover{border-color:#ffd365;background:#ffd365;color:#17130b}
.home-freehold-toggle:focus-visible{outline:3px solid rgba(255,211,101,.52);outline-offset:3px}
.cms-page-shell > .cms-page-hero:first-child > .home-portrait-cms-cta{
  position:relative;
  z-index:4;
  grid-column:2;
  grid-row:4;
  align-self:end;
  justify-self:center;
  width:calc(100% - 34px);
  margin:0 0 18px;
  padding:10px 14px;
  border:1px solid rgba(255,210,88,.88);
  border-radius:7px;
  background:rgba(12,17,25,.88);
  color:#ffd05d;
  font-size:12px;
  font-weight:900;
  letter-spacing:.015em;
  text-align:center;
  text-decoration:none;
  box-shadow:0 8px 24px rgba(0,0,0,.32);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
}
.cms-page-shell > .cms-page-hero:first-child > .home-portrait-cms-cta:hover{
  background:#f2b526;
  color:#16120a;
  transform:translateY(-1px);
}
.cms-page-shell > .cms-page-hero:first-child > .home-portrait-cms-cta:focus-visible{outline:3px solid rgba(255,211,101,.58);outline-offset:3px}
@media(max-width:820px){
  .cms-page-shell > .cms-page-hero:first-child > .home-portrait-cms-cta{
    grid-column:1;
    grid-row:5;
    justify-self:start;
    width:min(calc(100% - 34px),326px);
    margin:0 0 18px 17px;
  }
}
@media(max-width:640px){
  .cms-page-shell > .home-freehold-announcement{padding:22px 20px}
  .cms-page-shell > .home-freehold-announcement ul{grid-template-columns:1fr;gap:7px}
}
@media(prefers-reduced-motion:reduce){
  .cms-page-shell > .home-freehold-announcement{transition:none}
  .cms-page-shell > .cms-page-hero:first-child > .home-portrait-cms-cta{transition:none}
}
