<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">.tabbed-content {
    display: flex;
    flex-wrap: wrap;
}
.tabbed-content input {
    display: none;
}
.tabbed-content label {
    padding: 8px 12px;
    font-weight: 600;
    flex: 1 0 auto;
    text-align: center;
    background-color: transparent;
    border: 1px solid #000;
    border-width: 0 0 1px 0;
    border-radius: 5px 5px 0 0;
    position: relative;
}
.tabbed-content label:hover {
    cursor: pointer;
}
/*.tabbed-content label ~ label {
    border-left: 1px solid #CCC;
}
.tabbed-content label:last-of-type {
    border-right: 1px solid #CCC;
}*/
.tabbed-content section {
    display: none;
    flex: 1 1 100%;
    min-height: 512px;
    background: #FFF;
    /*border-top: 1px solid #CCC;*/
    padding: 6px;
}
.tabbed-content section header {
    display: none;
}
.tabbed-content section dl {
    margin: 0;
    padding: 0 8px 8px 8px;
}
.tabbed-content section dl + dl {
    margin-top: 2em;
}
.tabbed-content section dt,
.tabbed-content section dd {
    display: initial;
}
.tabbed-content section dt::before {
    content: '';
    display: block;
    height: 1px;
    width: 100%;
}
.tabbed-content section dt {
    font-weight: bold;
    font-size: 1.1em;
    margin-top: 8px;
}
.tabbed-content section dt::after {
    display: inline;
    content: ':';
}
.tabbed-content section dd {
    margin: 0;
    padding-bottom: 0.618em;
}
.tabbed-content input:checked + label {
    border-width: 1px 1px 0 1px;
    background-color: var(--coa-blue);
    background-color: #FFF;
}
/* It needs some work
.tabbed-content label::after {
    content: '';
    display: inline;
    height: 5px;
    width: 5px;
    border: 1px solid #000;
    border-width: 0 0 0 1px;
    border-radius: 0 0 0 5px;
    position: absolute;
    bottom: 0;
    right: -7px;
}*/
.tabbed-content input:nth-of-type(1):checked ~ section:nth-of-type(1) {
    display: block;
}
.tabbed-content input:nth-of-type(2):checked ~ section:nth-of-type(2) {
    display: block;
}
.tabbed-content input:nth-of-type(3):checked ~ section:nth-of-type(3) {
    display: block;
}
.tabbed-content input:nth-of-type(4):checked ~ section:nth-of-type(4) {
    display: block;
}

.photo-gallery {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(512px,1fr));
    gap: 8px;
}

/***************** TIMELINE *********************************/
ol[is="timeline"] {
	list-style: none;
	text-align: justify;
	/*background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(255,255,255,0)), color-stop(45%, rgba(255,255,255,0)), color-stop(51%, rgba(191,128,11,1)), color-stop(57%, rgba(255,255,255,0)), color-stop(100%, rgba(255,255,255,0)));
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,0) 45%, rgba(191,128,11,1) 51%, rgba(255,255,255,0) 57%, rgba(255,255,255,0) 100%);*/
	width: 100%;
    padding: 0;
    list-style: none;
    text-align: justify;
    display: grid;
    grid-template-columns: repeat(10, 9.1%);
    grid-template-rows: repeat(auto-fill, 2rem);
    gap: 1rem 1%;
    position: relative;
    
    background: repeating-linear-gradient(to right, transparent, transparent 10%, rgba(50,50,50,50) calc(10% + 1px));
    background-position-x: -5px;
}

ol[is="timeline"]:before {
	display: inline-block;
	content: attr(data-start);
	font-size: 16px;
	font-weight: 400;
	position: absolute;
	left: 0%;
	top: 0;
	transform: translateY(-200%);
}
ol[is="timeline"]:after {
	display: inline-block;
	content: attr(data-finish);
	font-size: 16px;
	font-weight: 400;
	position: absolute;
	right: 0%;
	top: 0;
	transform: translateY(-200%);
}

ol[is="timeline"] li {
	background: var(--yellow);
	text-align: center;
	line-height: 1.2;
	position: relative;
	/*white-space: nowrap;
    text-overflow: ellipsis;*/
    overflow-x: clip;
    align-self: start;
    overflow-wrap: break-word;
    overflow-x: clip;
    font-size: 0.5em;
    font-weight: bold;
    
    align-self: stretch;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding: 6px 4px;
}
ol[is="timeline"] li:before {
	display: inline-block;
	content: attr(data-start);
	font-size: 10px;
	font-weight: 400;
	position: absolute;
	left: 0%;
	top: 0;
	transform: translateY(-100%);
}
ol[is="timeline"] li:after {
	display: inline-block;
	content: attr(data-finish);
	font-size: 10px;
	font-weight: 400;
	position: absolute;
	right: 0%;
	top: 0;
	transform: translateY(-100%);
}

/** TESTING **/
h2 small {
    display: block;
    font-size: 0.6em;
}
header dl {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
}
header dt {
    grid-row: 1;
    font-weight: 600;
}
header dt:last-of-type,
header dd:last-of-type {
    text-align: right;
}
header dd {
    grid-row: 2;
    margin: 0;
}
footer table, aside table {
    width: 100%;
    text-align: right;
}
footer table th, aside table th {
    width: 50%;
}
footer table th span, aside table th span {
    margin: 6px;
    background: #EFEFEF;
    color: var(--coa-blue);
    display: block;
    padding: 6px;
 }
footer table td, aside table td {
    padding: 0 12px;
}
footer table th:first-child, aside table th:first-child,
footer table td:first-child, aside table td:first-child {
    text-align: left;
}
aside table {
    margin-bottom: 1.24rem;
}
@media only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-width: 1024px)  {

	/* Force table to not be like tables anymore */
	aside table, aside thead, aside tbody, aside th, aside td, aside tr { 
		display: block; 
	}
	
	/* Hide table headers (but not display: none;, for accessibility) */
	aside thead tr { 
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
	
	aside tr { border: 1px solid #ccc; }
	
	aside table td { 
		/* Behave  like a "row" */
		padding: 6px;
		text-align: left;
		border: none;
		border-bottom: 1px solid #eee; 
		position: relative;
		padding-left: 50%; 
	}
	
	aside table td:before { 
		/* Now like a table header */
		position: absolute;
		/* Top/left values mimic padding */
		top: 6px;
		left: 6px;
		width: 45%; 
		padding-right: 10px;
		text-align: right;
		white-space: nowrap;
	}
	
	/*
	Label the data
	*/
	aside table:first-of-type td:nth-of-type(1):before { content: "Anticipated Substantial Completion";
        font-size: 67%;
        line-height: 2; }
	aside table:first-of-type td:nth-of-type(2):before { content: "Opening Date"; }
	aside table:last-of-type td:nth-of-type(1):before { content: "Total Capital Budget"; }
	/*aside table:last-of-type td:nth-of-type(2):before { content: "Designer"; }*/
	
	.photo-gallery {
	    grid-template-columns: 1fr;
	}
	
	.photo-gallery + aside {
	    table:first-of-type td:nth-of-type(1):before { content: "Project Manager";
            font-size: 1em;
            line-height: 1.24; }
    	    table:first-of-type td:nth-of-type(2):before { content: "Managing Department"; }
	    table:last-of-type td:nth-of-type(1):before { content: "Contractor"; }
	    table:last-of-type td:nth-of-type(2):before { content: "Designer"; }
	}
}
article:has(page-data[page-id="2260"]) {
    aside table:first-of-type td:nth-of-type(1) {
        font-family: monospace;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        display:block;
        text-indent: -2ch;
        font-size: 2em;
    }
}
article:has(+page-data[page-id="2260"]) {
    aside table:first-of-type tbody td:nth-of-type(1) {
        text-indent: -200vw;
        position: relative;

        &amp;::after {
            content: "TBD";
            text-indent: 0;
            position: absolute;
            white-space: nowrap;
            
            right: 12px;
            text-align: right;
            
            @media only screen and (max-width: 760px),
                (min-device-width: 768px) and (max-device-width: 1024px) {
                top: 6px;
                left: 50%;
                width: 45%;
                text-align: left;
            }
        }
    }
}
#project-phase {
    list-style: none;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 4px;
}
#project-phase li {
    text-align: center;
    line-height: 2.48;
    background: var(--yellow);
}
#project-phase[data-current="Design Stage"] li:nth-of-type(1) {
    background: var(--coa-blue);
    color: #000;
    line-height: 1.24;
    font-weight: 600;
}
#project-phase[data-current="Bid Advertisement Stage"] li:nth-of-type(1) {
    background: var(--green);
    line-height: 1.24;
    color: #EFEFEF;
}
#project-phase[data-current="Bid Advertisement Stage"] li:nth-of-type(1)::after {
    content: '100%';
    display: block;
}
#project-phase[data-current="Bid Advertisement Stage"] li:nth-of-type(2) {
    background: var(--coa-blue);
    color: #000;
    line-height: 1.24;
    font-weight: 600;
}
#project-phase[data-current="Contracts Stage"] li:nth-of-type(-n+2) {
    background: var(--green);
    color: #EFEFEF;
    line-height: 1.24;
}
#project-phase[data-current="Contracts Stage"] li:nth-of-type(-n+2)::after {
    content: '100%';
    display: block;
}
#project-phase[data-current="Contracts Stage"] li:nth-of-type(3) {
    background: var(--coa-blue);
    color: #000;
    line-height: 1.24;
    font-weight: 600;
}
#project-phase[data-current="Construction Stage"] li:nth-of-type(-n+3) {
    background: var(--green);
    line-height: 1.24;
    color: #EFEFEF;
}
#project-phase[data-current="Construction Stage"] li:nth-of-type(-n+3)::after {
    content: '100%';
    display: block;
}
#project-phase[data-current="Construction Stage"] li:nth-of-type(4) {
    background: var(--coa-blue);
    color: #000;
    line-height: 1.24;
    font-weight: 600;
}
#project-phase[data-construction-status="NA"] {
    grid-template-columns: 1fr;
    li:nth-of-type(n+2) {
        display: none;
    }
}
.photo-gallery a {
    display: flex;
}
.photo-gallery a img {
    object-fit: cover;
}
ol[is="timeline"] {
    margin-top: 2.48em;
}
article-content &gt; section:first-child h2 {
    margin: 0.6em 0 0.3em 0;
}
article-content &gt; section:first-child p:first-of-type {
    margin-top: 0;
}

.timeline {
  position: relative;
  width: 100%;
  max-width: 1140px;
  margin: 0 auto;
  padding: 15px 0;
}

.timeline::after {
  content: '';
  position: absolute;
  width: 2px;
  background: var(--coa-blue);
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -1px;
}

.container {
    box-sizing: border-box;
  padding: 15px 30px;
  position: relative;
  background: inherit;
  width: 50%;
}

.container.left {
  left: 0;
}

.container.right {
  left: 50%;
}

.container::after {
  content: '';
  position: absolute;
  width: 16px;
  height: 16px;
  top: calc(50% - 8px);
  right: -8px;
  background: #ffffff;
  border: 2px solid var(--coa-blue);
  border-radius: 16px;
  z-index: 1;
}

.container.right::after {
  left: -8px;
}

.container::before {
  content: '';
  position: absolute;
  width: 50px;
  height: 2px;
  top: calc(50% - 1px);
  right: 8px;
  background: var(--coa-blue);
  z-index: 1;
}

.container.right::before {
  left: 8px;
}

.container .date {
  position: absolute;
  display: inline-block;
  top: calc(50% - 8px);
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  color: var(--coa-blue);
  text-transform: uppercase;
  letter-spacing: 1px;
  z-index: 1;
}

.container.left .date {
  right: -7em;
}

.container.right .date {
  left: -7em;
}

.container .icon {
  position: absolute;
  display: inline-block;
  width: 40px;
  height: 40px;
  padding: 9px 0;
  top: calc(50% - 20px);
  background: #F6D155;
  border: 2px solid var(--coa-blue);
  border-radius: 40px;
  text-align: center;
  font-size: 18px;
  color: #006E51;
  z-index: 1;
}

.container.left .icon {
  right: 56px;
}

.container.right .icon {
  left: 56px;
}

.container .content {
  padding: 30px 90px 30px 30px;
  background: var(--yellow);
  position: relative;
  border-radius: 0 500px 500px 0;
  /*border-radius: 0 40% 40% 0;*/
}

.container.right .content {
  padding: 30px 30px 30px 90px;
  border-radius: 500px 0 0 500px;
  /*border-radius: 40% 0 0 40%;*/
}

.container .content h4 {
  margin: 0 0 10px 0;
  font-size: 18px;
  font-weight: bold;
  color: #000;
}

.container .content p {
  margin: 0;
  font-size: 16px;
  line-height: 22px;
  color: #000000;
}
.container .content a {
    padding: 6px;
    margin: 6px;
    display: block;
}

@media (max-width: 767.98px) {
  .timeline::after {
    left: 90px;
  }

  .container {
    width: 100%;
    padding-left: 120px;
    padding-right: 30px;
  }

  .container.right {
    left: 0%;
  }

  .container.left::after, 
  .container.right::after {
    left: 82px;
  }

  .container.left::before,
  .container.right::before {
    left: 100px;
    border-color: transparent var(--coa-blue) transparent transparent;
  }

  .container.left .date,
  .container.right .date {
    right: auto;
    left: 8px;
  }

  .container.left .icon,
  .container.right .icon {
    right: auto;
    left: 146px;
  }

  .container.left .content,
  .container.right .content {
    padding: 30px 30px 30px 90px;
    border-radius: 500px 0 0 500px;
    /*border-radius: 40% 0 0 40%;*/
  }
}
/*
main &gt; p:first-child {
    margin-top: 0;
}
article article-content {
    display: grid;
    grid-template-rows: auto auto auto auto auto auto;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 15px;
    max-width: 1160px;
    padding-top: 10px;
    box-sizing: border-box;
}
@media screen and (max-width: 50em) {
    article article-content {
        display: flex;
        flex-direction: column;
    }
}
@media screen and (max-width: 1160px) {
    article article-content {
        max-width: 100%;
    }
}
section.lead-photo {
    grid-column: 1;
    grid-row: 1 / span 3;
}
figure {
    width: 100%;
}
figcaption p {
    margin: 0;
    font-style: italic;
}
div.ce-element--type-image, .ce-element--type-video {
    width: auto !important;
}
section.project-overview {
    grid-column: 1;
    grid-row: 4 / span 3;
}
section.secondary-photo {
    grid-column: 2;
    grid-row: 1 / span 2;
}
section.project-metrics {
    grid-column: 2;
    grid-row: 3 / span 2;
}
section.minor-photo {
    grid-column: 2;
    grid-row: 5 / span 2;
    display: flex;
    flex-direction: row;
}
@media screen and (max-width: 50em) {
    article article-content {
        display: flex;
        flex-direction: column;
    }
}
.project-overview h2 {
    margin-top: 0;
}
.project-overview p:first-child {
    margin-top: 0;
}
.project-overview dt {
    display: inline;
}
.project-overview dt:after {
    display: inline;
    content: ':';
}
.project-overview dd {
    display: inline;
    margin: 0;
}
.project-overview dd p {
    display: inline;
    line-height: 1;
}
.project-overview dd:after {
    display: block;
    content: '';
    height: 1.24rem;
}
.project-metrics {
}
.project-metrics dl {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    margin: 0;
    height: 130px;
    width: 100%;
    
    background: var(--coa-blue);
    color: #FFF;
    padding: 8px 0;
}
.project-metrics dl dt,
.project-metrics dl dd {
    width: 30%;
    margin: 0;
    box-sizing: border-box;
    padding: 4px;
    text-align: center;
}
.project-metrics dl dt {
    height: 40%;
}
.project-metrics dl dd {
    height: 60%;
}
.project-metrics dl dd p {
    line-height: 1;
    margin: 0;
    padding-top: 8px;
}
.project-metrics dl dd b,
.project-metrics dl dd strong {
    display: block;
    font-size: 1.5rem;
}
.project-metrics dd[data-name="project-metrics-phase"] p {
    font-weight: 600;
    text-transform: uppercase;
    word-break: break-all;
    word-break: break-word;
}
@media screen and (min-width: 800px) {
    .project-metrics dd[data-name="project-metrics-phase"] p {
        font-size: 0.64em;
    }
}
Editor Helper Text / CMS layout
main[data-name="project-overview"] p.ce-element--empty:after {
    content: "...insert project overview text";
}
div[data-name="lead-photo-image"] p.ce-element--empty:after {
    content: "...insert lead photo image";
}
figcaption[data-name="lead-photo-caption"] p.ce-element--empty:after {
    content: "...insert lead photo caption";
}
dd[data-name="project-engineer"] p.ce-element--empty:after {
    content: "...insert engineer";
}
dd[data-name="project-contractor"] p.ce-element--empty:after {
    content: "...insert contractor";
}
dd[data-name="project-update"] p.ce-element--empty:after {
    content: "...insert lastest status update";
}
div[data-name="secondary-photo-image"] p.ce-element--empty:after {
    content: "...insert secondary photo image";
}
figcaption[data-name="secondary-photo-caption"] p.ce-element--empty:after {
    content: "...insert secondary photo caption";
}
dd[data-name="project-metrics-budget"] p.ce-element--empty:after {
    content: "...insert budget (B for first line)";
}
dd[data-name="project-metrics-completion"] p.ce-element--empty:after {
    content: "...insert completion (B for first line)";
}
dd[data-name="project-metrics-phase"] p.ce-element--empty:after {
    content: "...insert phase";
}
div[data-name="minor-photo-one-image"] p.ce-element--empty:after {
    content: "...insert first small photo image";
}
figcaption[data-name="minor-photo-one-caption"] p.ce-element--empty:after {
    content: "...insert first small photo caption";
}
div[data-name="minor-photo-two-image"] p.ce-element--empty:after {
    content: "...insert second small photo image";
}
figcaption[data-name="minor-photo-two-caption"] p.ce-element--empty:after {
    content: "...insert second small photo caption";
}
*/</pre></body></html>