.timeline-v3{--forest:#20322d;--ink:#26342f;--muted:#6c756e;--sage:#859489;--cream:#f5f5f0;--line:#dce2dc;--paper:#fff;--pale:#eef0e9;}
.timeline-v3 *{box-sizing:border-box}
.timeline-v3{scroll-behavior:smooth}
.timeline-v3{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff}
.timeline-v3 a{color:inherit;text-decoration:none}
.timeline-v3 button{font:inherit;cursor:pointer}
.timeline-v3 button:focus-visible,.timeline-v3 a:focus-visible{outline:3px solid #a3ad9e;outline-offset:3px}
.timeline-v3 .wrap{max-width:1270px;margin:0 auto;padding-left:36px;padding-right:36px}
.timeline-v3 .preview-strip{background:#ebeee7;border-bottom:1px solid #d5dfd5;font-size:11px;letter-spacing:1.5px;padding:10px 18px;text-align:center;color:#355147;font-weight:700}
.timeline-v3 .site-head{border-bottom:1px solid var(--line);background:#fff}
.timeline-v3 .nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:94px;gap:20px}
.timeline-v3 .brand{display:flex;align-items:center;gap:14px;white-space:nowrap}
.timeline-v3 .brand-mark{font:43px Georgia,serif;letter-spacing:-4px;color:var(--forest)}
.timeline-v3 .brand-name{border-left:1px solid #bfc9c1;padding:8px 0 8px 15px;line-height:1.2}
.timeline-v3 .brand-name b{display:block;letter-spacing:2px;font-size:13px}
.timeline-v3 .brand-name small{display:block;letter-spacing:2.5px;font-size:9px;color:#869189;margin-top:5px}
.timeline-v3 .site-nav{display:flex;gap:31px;align-items:center;font-size:12px;color:#56625b}
.timeline-v3 .site-nav a.active{font-weight:700;color:var(--forest)}
.timeline-v3 .call{border:1px solid var(--forest);padding:14px 19px;font-size:11px;font-weight:bold;letter-spacing:1px}
.timeline-v3 .eyebrow{color:var(--sage);font-size:11px;font-weight:800;letter-spacing:2.5px;text-transform:uppercase}
.timeline-v3 .serif,.timeline-v3 h1,.timeline-v3 h2,.timeline-v3 h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-1.6px}
.timeline-v3 .hero{background:var(--cream);border-bottom:1px solid var(--line)}
.timeline-v3 .hero-inner{min-height:590px;display:grid;grid-template-columns:1fr .96fr;gap:65px;align-items:center;padding-top:54px;padding-bottom:54px}
.timeline-v3 .hero h1{font-size:clamp(62px,6vw,92px);line-height:1.04;margin:22px 0 20px}
.timeline-v3 .period{color:var(--sage)}
.timeline-v3 .hero p{font-size:15px;line-height:1.95;color:var(--muted);max-width:485px}
.timeline-v3 .slim-rule{width:54px;height:3px;background:#aab7aa;margin:24px 0}
.timeline-v3 .mainlink{display:inline-block;background:var(--forest);color:#fff;padding:17px 22px;font-size:11px;letter-spacing:1.5px;font-weight:700;margin-top:20px}
.timeline-v3 .hero-images{display:grid;grid-template-columns:1fr 1fr;gap:13px;height:415px}
.timeline-v3 .hero-shot{overflow:hidden;position:relative}
.timeline-v3 .hero-shot:nth-child(2){transform:translateY(30px)}
.timeline-v3 .hero-shot img{width:100%;height:100%;object-fit:cover}
.timeline-v3 .hero-shot span{position:absolute;left:14px;bottom:16px;background:white;padding:10px 14px;font-size:10px;font-weight:800;letter-spacing:1px}
.timeline-v3 .intro{padding-top:105px;padding-bottom:70px}
.timeline-v3 .intro-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}
.timeline-v3 .intro h2{font-size:55px;line-height:1.12;margin:12px 0 14px}
.timeline-v3 .intro p{color:var(--muted);font-size:14px;line-height:1.85;max-width:595px}
.timeline-v3 .stats{font-size:11px;color:var(--muted);letter-spacing:1.2px;text-align:right;line-height:2.1;white-space:nowrap}
.timeline-v3 .project-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.timeline-v3 .project-link{border:1px solid var(--line);display:block;transition:transform .2s, box-shadow .2s}
.timeline-v3 .project-link:hover{transform:translateY(-3px);box-shadow:0 10px 22px #15251a14}
.timeline-v3 .project-pair{display:grid;grid-template-columns:1fr 1fr;height:310px;gap:4px;background:#fff}
.timeline-v3 .project-pair figure{position:relative;margin:0;overflow:hidden}
.timeline-v3 .project-pair img{width:100%;height:100%;object-fit:cover}
.timeline-v3 .project-pair figcaption{position:absolute;left:12px;bottom:12px;font-size:9px;letter-spacing:1.4px;font-weight:700;background:#fff;padding:9px 12px}
.timeline-v3 .card-info{padding:24px 28px 27px}
.timeline-v3 .card-info small{font-size:10px;letter-spacing:2px;color:var(--sage);font-weight:700}
.timeline-v3 .card-info h3{font-size:29px;margin:10px 0 9px}
.timeline-v3 .card-info p{font-size:13px;line-height:1.75;color:var(--muted);margin:0 0 17px}
.timeline-v3 .browse{font-size:11px;letter-spacing:1.3px;font-weight:800}
.timeline-v3 .project-story{padding-top:67px;padding-bottom:65px;scroll-margin-top:24px}
.timeline-v3 .project-story + .project-story{border-top:1px solid #d9ded8}
.timeline-v3 .project-titleline{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}
.timeline-v3 .project-titleline h2{font-size:clamp(45px,5vw,67px);margin:14px 0 13px}
.timeline-v3 .project-titleline p{font-size:14px;line-height:1.8;color:var(--muted);max-width:750px;margin:0}
.timeline-v3 .photo-stat{font-size:12px;line-height:2;letter-spacing:1.3px;color:var(--sage);font-weight:700;white-space:nowrap;text-align:right}
.timeline-v3 .compare{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:550px;overflow:hidden}
.timeline-v3 .compare-image{height:460px;position:relative;overflow:hidden}
.timeline-v3 .compare-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.timeline-v3 .compare-image span{position:absolute;bottom:20px;left:21px;background:var(--forest);color:#fff;font-size:10px;font-weight:bold;letter-spacing:1.8px;padding:13px 16px}
.timeline-v3 .compare-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:14px 20px;font-size:11px;letter-spacing:1.7px;font-weight:bold;white-space:nowrap;background:#fff}
.timeline-v3 .compare-overlay span{padding-left:12px}
.timeline-v3 .stage-tabs{background:var(--cream);padding:23px 25px;margin:28px 0 48px;display:flex;gap:35px;align-items:center;justify-content:space-between}
.timeline-v3 .tabs-label{font-size:10px;color:var(--muted);letter-spacing:1.6px;font-weight:700;white-space:nowrap}
.timeline-v3 .stage-tabs nav{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.timeline-v3 .stage-tabs nav a{background:#fff;border:1px solid var(--line);padding:12px 15px;font-size:11px;font-weight:bold;white-space:nowrap}
.timeline-v3 .stage-tabs nav a:hover{background:var(--forest);color:#fff}
.timeline-v3 .stage-tabs nav a span{color:var(--sage);margin-right:7px}
.timeline-v3 .stage{display:grid;grid-template-columns:80px 1fr;gap:24px;scroll-margin-top:30px}
.timeline-v3 .step-rail{display:flex;flex-direction:column;align-items:center}
.timeline-v3 .rail-circle{width:62px;height:62px;background:var(--forest);color:#fff;border-radius:50%;display:grid;place-items:center;font:27px Georgia,serif;letter-spacing:-1px}
.timeline-v3 .rail-spine{width:1px;flex:1;background:var(--line);margin:14px 0 0}
.timeline-v3 .stage:last-child .rail-spine{display:none}
.timeline-v3 .step-main{padding-bottom:64px}
.timeline-v3 .step-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:23px}
.timeline-v3 .step-head h3{font-size:43px;margin:10px 0 13px}
.timeline-v3 .step-head p{font-size:14px;line-height:1.8;color:var(--muted);margin:0;max-width:725px}
.timeline-v3 .count{color:var(--sage);font-size:10px;font-weight:800;letter-spacing:1.7px;white-space:nowrap}
.timeline-v3 .photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.timeline-v3 .story-photo{margin:0;min-width:0}
.timeline-v3 .photo-open{position:relative;display:block;width:100%;border:0;background:var(--cream);padding:0;overflow:hidden;aspect-ratio:1.25}
.timeline-v3 .photo-open img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .2s}
.timeline-v3 .photo-open:hover img{transform:scale(1.045)}
.timeline-v3 .zoom-symbol{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:30px;height:30px;background:#fff;font-size:19px}
.timeline-v3 .story-photo figcaption{font-size:11px;color:#57655b;line-height:1.5;padding:11px 0 0;display:flex;gap:10px}
.timeline-v3 .story-photo figcaption span{color:var(--sage);font-size:11px;font-weight:bold}
.timeline-v3 .footercta{background:var(--forest);color:#fff;padding:63px 0}
.timeline-v3 .footercta .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}
.timeline-v3 .footercta h2{font-size:48px;margin:10px 0 10px}
.timeline-v3 .footercta p{color:#c6d0c9;font-size:13px;line-height:1.8}
.timeline-v3 .footercta a{display:inline-block;background:#fff;color:var(--forest);padding:17px 23px;font-size:11px;letter-spacing:1.3px;font-weight:bold;white-space:nowrap}
.timeline-v3 .footer-bottom{padding:27px 0;color:var(--muted);font-size:11px;display:flex;justify-content:space-between;gap:20px}
.timeline-v3 .lightbox{position:fixed;inset:0;background:#10211ce8;z-index:50;display:none;align-items:center;justify-content:center;padding:35px}
.timeline-v3 .lightbox.is-open{display:flex}
.timeline-v3 .lightbox-card{max-width:1100px;width:100%;max-height:92vh;display:flex;flex-direction:column}
.timeline-v3 .lightbox img{max-width:100%;max-height:76vh;object-fit:contain;background:#fff}
.timeline-v3 .lightbox-bar{display:flex;justify-content:space-between;gap:15px;color:#fff;padding:15px 0;font-size:13px}
.timeline-v3 .lightbox-bar strong{font-weight:400;color:#b6c8bd}
.timeline-v3 .lightbox-close{position:absolute;right:24px;top:18px;background:#fff;border:0;color:var(--forest);width:47px;height:47px;font-size:30px}
@media(max-width:950px){.timeline-v3 .site-nav{display:none}
.timeline-v3 .hero-inner{grid-template-columns:1fr 1fr;gap:28px}
.timeline-v3 .hero h1{font-size:62px}
.timeline-v3 .intro h2{font-size:45px}
.timeline-v3 .project-pair{height:255px}
.timeline-v3 .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.timeline-v3 .stage-tabs{display:block}
.timeline-v3 .stage-tabs nav{justify-content:flex-start;margin-top:15px}}
@media(max-width:670px){.timeline-v3 .wrap{padding-left:20px;padding-right:20px}
.timeline-v3 .preview-strip{font-size:9px}
.timeline-v3 .nav-wrap{min-height:77px}
.timeline-v3 .brand-mark{font-size:32px}
.timeline-v3 .brand-name b{font-size:10px}
.timeline-v3 .brand-name small{font-size:8px}
.timeline-v3 .call{font-size:9px;padding:10px}
.timeline-v3 .hero-inner{grid-template-columns:1fr;gap:32px;padding-top:47px;padding-bottom:56px}
.timeline-v3 .hero h1{font-size:57px}
.timeline-v3 .hero p{font-size:13px}
.timeline-v3 .hero-images{height:240px}
.timeline-v3 .intro{padding-top:58px;padding-bottom:40px}
.timeline-v3 .intro-head{display:block}
.timeline-v3 .intro h2{font-size:41px}
.timeline-v3 .stats{display:none}
.timeline-v3 .project-card-grid{grid-template-columns:1fr;gap:20px}
.timeline-v3 .project-pair{height:235px}
.timeline-v3 .project-story{padding-top:55px}
.timeline-v3 .project-titleline{display:block}
.timeline-v3 .project-titleline h2{font-size:43px}
.timeline-v3 .photo-stat{display:block;text-align:left;margin-top:18px}
.timeline-v3 .compare-image{height:250px}
.timeline-v3 .compare-overlay{font-size:8px;padding:11px}
.timeline-v3 .compare-image span{font-size:8px;padding:9px;left:8px;bottom:10px}
.timeline-v3 .stage-tabs{padding:17px 15px;margin:19px 0 36px}
.timeline-v3 .stage-tabs nav a{padding:9px 10px;font-size:10px}
.timeline-v3 .stage{grid-template-columns:43px 1fr;gap:11px}
.timeline-v3 .rail-circle{width:42px;height:42px;font-size:19px}
.timeline-v3 .step-main{padding-bottom:47px}
.timeline-v3 .step-head{display:block}
.timeline-v3 .step-head h3{font-size:34px}
.timeline-v3 .step-head p{font-size:12px}
.timeline-v3 .count{margin-top:12px;display:block}
.timeline-v3 .photo-grid{grid-template-columns:1fr 1fr;gap:10px}
.timeline-v3 .story-photo figcaption{font-size:10px;gap:5px}
.timeline-v3 .photo-open{aspect-ratio:.94}
.timeline-v3 .footercta .wrap{display:block}
.timeline-v3 .footercta h2{font-size:38px}
.timeline-v3 .footercta a{margin-top:18px}
.timeline-v3 .footer-bottom{display:block}
.timeline-v3 .footer-bottom span{display:block;margin-bottom:8px}
.timeline-v3 .lightbox{padding:15px}
.timeline-v3 .lightbox-close{right:15px;top:9px}}
/* Scope presentation to this page, honour existing site navigation and accessible overlays. */
.timeline-v3 {font-family:Arial,Helvetica,sans-serif;color:#26342f;background:#fff;line-height:normal;isolation:isolate;}
.timeline-v3 .hero{padding:0; min-height:0; position:relative;}
.timeline-v3 .lightbox {z-index:9999;}
.timeline-v3 .wrap{width:auto;max-width:1270px;margin-left:auto;margin-right:auto;}
.timeline-v3 .photo-open {cursor:zoom-in;}
.timeline-v3 .story-photo img {display:block;}
.timeline-v3 .stage-tabs nav {box-shadow:none;background:transparent;}

/* Ensure readable text in the pale Projects hero, overriding the site's dark-hero defaults. */
.timeline-v3 .hero { color: #26342f; }
.timeline-v3 .hero h1 { color: #20322d; }
.timeline-v3 .hero-shot span { color: #20322d; }
