.nav{padding-top:20px;padding-bottom:20px;background:linear-gradient(180deg,rgba(1,1,1,.34),transparent);border-bottom-color:rgba(248,241,233,.14)}
.nav .brand{background:transparent;padding:0}
.nav .brand img{width:190px;height:auto;max-height:72px;object-fit:contain;filter:drop-shadow(0 5px 14px rgba(1,1,1,.58))}
.hero .veil{background:radial-gradient(circle at 72% 34%,rgba(198,166,106,.09),transparent 31%),linear-gradient(90deg,rgba(1,1,1,.70) 0%,rgba(17,27,46,.30) 42%,rgba(17,27,46,.08) 72%,rgba(1,1,1,.11) 100%),linear-gradient(0deg,rgba(1,1,1,.57) 0%,transparent 60%)}
.hero>img{filter:saturate(.82) contrast(1.03)}
.credential-mark img{width:132px;height:104px;border-radius:0;object-fit:contain;background:transparent}
.credential-mark p{margin:9px 0 5px;font-size:.8rem;color:#5c626b}
.verify-link{display:inline-block;color:var(--navy);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--gold);padding-bottom:4px}
.project-meta span:last-child{color:var(--gold);font-weight:700}
.project-light .project-meta span:last-child{color:#8b692c}
.standard,.project,.services{content-visibility:auto;contain-intrinsic-size:800px}
.contact{content-visibility:visible;contain:none}
.button,.next-button,.submit-button{transition:transform .2s ease,background .2s ease}
.button:hover,.next-button:hover,.submit-button:hover{transform:translateY(-2px);background:#d4b875}
.nav a,.text-link,.verify-link{transition:opacity .2s ease}.nav a:hover,.text-link:hover,.verify-link:hover{opacity:.72}
.site-footer{display:block;background:var(--black);color:var(--cream);padding:72px 4.5% 28px;text-transform:none;letter-spacing:0;font-size:1rem}
.footer-main{display:grid;grid-template-columns:minmax(280px,1.55fr) repeat(3,minmax(150px,1fr));gap:7%;padding-bottom:64px}
.footer-intro{max-width:350px}.footer-brand{display:inline-flex}.footer-brand img{width:190px;height:auto;max-height:70px;object-fit:contain}
.footer-intro>p{margin:28px 0;color:rgba(248,241,233,.68);font-size:.88rem;line-height:1.75}
.footer-enquire{display:inline-flex;gap:28px;align-items:center;padding-bottom:7px;border-bottom:1px solid var(--gold);color:var(--cream);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.footer-column{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.footer-column h2{margin:2px 0 14px;color:var(--gold);font-family:var(--sans);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.18em}
.footer-column a,.footer-column p{margin:0;color:rgba(248,241,233,.72);font-size:.79rem;line-height:1.65}
.footer-column a{transition:color .2s ease}.footer-column a:hover{color:var(--cream)}
.footer-company p:last-child{margin-top:7px;color:var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.08em}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid rgba(248,241,233,.16)}
.footer-bottom p,.footer-bottom a{margin:0;color:rgba(248,241,233,.48);font-size:.64rem;text-transform:uppercase;letter-spacing:.1em}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.next-button,.submit-button,.nav a,.text-link,.verify-link{transition:none}.form-step.active{animation:none}}
@media(max-width:800px){.nav{padding-top:14px;padding-bottom:14px}.nav .brand img{width:132px;max-height:50px}.credential-mark img{width:104px;height:82px}.footer-brand img{width:165px}.project-meta span:last-child{display:block;text-align:right}}

.project-grid-three{grid-template-rows:1fr 1fr}
.project-grid-three .wide{grid-row:1/3;height:54vw;max-height:720px}
.project-grid-three img:not(.wide){height:calc(27vw - 8px);max-height:352px;align-self:stretch}
.project-progress-strip{display:grid;grid-template-columns:1fr 1.45fr;gap:16px;margin-top:16px}
.project-progress-strip img{height:30vw;max-height:420px}

@media(max-width:800px){
  html,body{max-width:100%;overflow-x:hidden}
  .hero .veil{background:linear-gradient(180deg,rgba(17,27,46,.34) 0%,rgba(17,27,46,.12) 31%,rgba(1,1,1,.54) 58%,rgba(1,1,1,.78) 100%),linear-gradient(90deg,rgba(1,1,1,.24),rgba(17,27,46,.06))}
  .hero h1{text-shadow:0 3px 18px rgba(1,1,1,.38)}
  .hero .eyebrow{max-width:32rem;font-size:.78rem;line-height:1.55;letter-spacing:.17em;text-shadow:0 2px 10px rgba(1,1,1,.82)}
  .hero .lead{max-width:34rem;font-size:1.08rem;line-height:1.68;text-shadow:0 2px 12px rgba(1,1,1,.82)}
  .hero .text-link{font-size:.74rem;font-weight:600;text-shadow:0 2px 10px rgba(1,1,1,.84)}
  .nav{grid-template-columns:minmax(0,1fr) auto}
  .nav-cta{font-size:0;white-space:nowrap}
  .nav-cta::after{content:'Enquire';font-size:.72rem}
  .section-head{padding-bottom:38px}
  .project{padding-left:5%;padding-right:5%}
  .project-meta{grid-template-columns:auto 1fr;gap:8px 16px;align-items:center;margin-bottom:16px;line-height:1.35}
  .project-meta span:nth-child(2){text-align:right}
  .project-meta span:last-child{grid-column:1/-1;text-align:left;justify-self:start;letter-spacing:.12em}
  .project-grid-three{grid-template-rows:auto}
  .project-grid-three .wide{grid-row:auto;height:75vw;max-height:none}
  .project-grid-three img:not(.wide){height:75vw;max-height:none}
  .project-grid-three img:last-child{display:block}
  .project-progress-strip{grid-template-columns:1fr;margin-top:12px}
  .project-progress-strip img{height:62vw;max-height:none}
  .project-title{gap:18px;margin-top:26px}
  .project-title h3{font-size:clamp(2.35rem,11vw,3.4rem)}
  .project-title p{margin-top:0}
  .project-dark{padding-top:58px}
  .site-footer{padding:52px 5% 24px}
  .footer-main{grid-template-columns:1fr 1fr;gap:44px 28px;padding-bottom:44px}
  .footer-intro{grid-column:1/-1;max-width:420px}
  .footer-brand img{width:156px;max-height:58px}
  .footer-company{grid-column:1/-1}
  .footer-bottom{align-items:flex-start;gap:20px}
}

@media(max-width:420px){
  .site-footer{padding-top:44px}
  .footer-main{grid-template-columns:1fr;gap:36px}
  .footer-intro,.footer-company{grid-column:auto}
  .footer-bottom{flex-direction:column}
}

@media(max-width:800px){
  .choice-grid.quarters{gap:9px}
  .choice-grid label>span{min-height:88px;padding:14px}
  .next-button,.submit-button{width:100%;min-width:0}
  .contact{gap:36px;padding-bottom:48px;border-bottom:0}
  .qualifier{padding:26px 18px;margin-bottom:0}
}
