/* Owner life (JOB M): park page section and /<park>/owning-here/. Phone first. */
.cgl-ol { padding: var(--space-l) 0; }
.cgl-ol h2 { font-size: var(--step-3); margin: 0 0 1rem; }
.cgl-ol__grid { display: grid; grid-template-columns: 1fr; gap: var(--space-s); }
.cgl-ol__card { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem 1.15rem; min-width: 0; }
.cgl-ol__card h3 { font-size: var(--step-1); margin: 0 0 .5rem; display: flex; flex-wrap: wrap; gap: .3rem .6rem; align-items: center; }
.cgl-ol__season { margin: 0 0 .6rem; font-weight: 600; }
.cgl-ol__season--big { font-family: var(--serif); font-size: var(--step-2); }
.cgl-ol__months { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 3px; max-width: 34rem; }
.cgl-ol__months li { margin: 0; text-align: center; font-size: .8rem; font-weight: 600; padding: .35rem 0; border-radius: 4px; }
.cgl-ol__months abbr { text-decoration: none; border: 0; cursor: default; }
.cgl-ol__months .is-open { background: var(--sea); color: var(--on-dark); }
.cgl-ol__months .is-closed { background: var(--mist-2); color: var(--muted); }
.cgl-ol__ticks { list-style: none; margin: 0; padding: 0; }
.cgl-ol__ticks li { position: relative; padding-left: 1.5rem; margin: 0 0 .4rem; line-height: 1.4; }
.cgl-ol__ticks li::before { content: ""; position: absolute; left: .15rem; top: .3em; width: .45rem; height: .8rem; border: solid var(--marsh); border-width: 0 2px 2px 0; transform: rotate(45deg); }
.cgl-ol__events { list-style: none; margin: 0; padding: 0; }
.cgl-ol__events li { margin: 0 0 .45rem; display: flex; gap: .6rem; flex-wrap: wrap; }
.cgl-ol__events time { font-weight: 600; color: var(--marsh); white-space: nowrap; }
.cgl-ol__go { margin: 1.25rem 0 0; }
.cgl-ol__go .btn { white-space: normal; text-align: center; }
@media (min-width: 800px) { .cgl-ol__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Full page */
.cgl-olp { display: grid; grid-template-columns: 1fr; gap: var(--space-l); padding-bottom: var(--space-l); }
.cgl-olp__sec h2 { font-size: var(--step-3); margin: 0 0 .75rem; display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .75rem; }
.cgl-olp__month { font-size: var(--step-1); margin: 1.2rem 0 .6rem; color: var(--muted); }
.cgl-olp__events { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.cgl-olp__events li { margin: 0; display: grid; grid-template-columns: 3.6rem 1fr; gap: .9rem; align-items: start; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: .75rem .9rem; }
.cgl-olp__date { display: grid; place-items: center; background: var(--sea); color: var(--on-dark); border-radius: var(--radius); padding: .35rem 0; line-height: 1.1; }
.cgl-olp__date span { font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; }
.cgl-olp__date strong { font-size: 1.4rem; }
.cgl-olp__etitle { margin: 0; font-weight: 600; }
.cgl-olp__enote { margin: .15rem 0 0; color: var(--muted); }
.cgl-ol__ticks--grid { display: grid; grid-template-columns: 1fr; gap: .2rem 2rem; }
.cgl-olp__offers { font-weight: 600; color: var(--marsh); display: inline-flex; align-items: center; min-height: 44px; }
.cgl-olp__cta { padding: var(--space-m) 0 var(--space-l); }
.cgl-olp__btns { display: flex; flex-wrap: wrap; gap: .75rem; margin: 0; }
.cgl-olp__btns .btn { white-space: normal; text-align: center; }
@media (max-width: 599px) { .cgl-olp__btns .btn { width: 100%; } }
@media (min-width: 700px) { .cgl-ol__ticks--grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1200px) {
	.cgl-olp { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: var(--space-l); }
	.cgl-olp__sec h2 { max-width: none; }
}
@media (min-width: 2200px) {
	.cgl-olp { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
