/* Home project exhibition: layout only; palette comes from the shared theme system. */
.current-projects {
  padding: clamp(5rem, 9vw, 9rem) 0 clamp(5rem, 8vw, 8rem);
  background: var(--theme-bg-soft);
  color: var(--theme-text);
}
.current-projects__intro {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 2rem;
  margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}
.current-projects__intro h2 {
  margin: .55rem 0 0;
  font-size: clamp(2.8rem, 5vw, 4.8rem);
  line-height: 1;
  font-weight: 500;
}
.current-projects__intro > p {
  max-width: 22rem;
  color: var(--theme-text-soft);
  padding-bottom: .3rem;
}
.current-projects__list { display: grid; gap: clamp(2rem, 5vw, 5rem); }
.current-project {
  display: grid;
  grid-template-columns: minmax(0, 1.28fr) minmax(0, .72fr);
  min-height: clamp(400px, 44vw, 580px);
  border-top: 1px solid var(--theme-border-strong);
  border-bottom: 1px solid var(--theme-border);
  background: var(--theme-surface);
  transition: border-color .5s ease, background-color .5s ease;
}
.current-project--reverse { grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); }
.current-project--reverse .current-project__image { grid-column: 2; grid-row: 1; }
.current-project--reverse .current-project__content { grid-column: 1; grid-row: 1; }
.current-project:hover { border-color: var(--theme-accent); }
.current-project__image { position: relative; display: block; min-width: 0; overflow: hidden; background: var(--theme-surface-raised); }
.current-project__image picture, .current-project__image img { display: block; width: 100%; height: 100%; }
.current-project__image picture { position: absolute; inset: 0; }
.current-project__image img { object-fit: cover; object-position: center; transition: transform .8s cubic-bezier(.22,.61,.36,1); }
.current-project:hover .current-project__image img { transform: scale(1.045); }
.current-project__image-label { position: absolute; left: 1.5rem; bottom: 1.5rem; padding: .4rem .75rem; background: var(--theme-glass); color: var(--theme-text); font-size: .75rem; font-weight: 500; letter-spacing: .12em; backdrop-filter: blur(12px); }
.current-project__content { min-width: 0; display: flex; flex-direction: column; justify-content: space-between; padding: clamp(1.75rem, 3.5vw, 3.5rem); }
.current-project__topline { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; justify-content: space-between; color: var(--theme-muted); font-size: .75rem; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.current-project__status { padding: .35rem .65rem; border: 1px solid var(--theme-border-strong); color: var(--theme-accent); }
.current-project__details { padding-top: 2rem; }
.current-project__details h3 { margin: 0 0 .65rem; font-family: var(--font-display); font-size: clamp(2.35rem, 3.6vw, 3.75rem); font-weight: 500; line-height: 1.05; }
.current-project__location { color: var(--theme-accent); font-size: .9rem; font-weight: 500; }
.current-project__description { max-width: 29rem; margin-top: 1.35rem; color: var(--theme-text-soft); line-height: 1.65; }
.current-project__link { display: inline-flex; align-items: center; justify-content: space-between; gap: 2.5rem; min-width: 12rem; margin-top: clamp(2rem, 3vw, 3.5rem); padding: .8rem 0; border-bottom: 1px solid var(--theme-accent); color: var(--theme-text); font-size: .82rem; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; transition: color .35s ease, border-color .35s ease; }
.current-project__link span, .current-projects__future a span { display: inline-block; font-size: 1.25rem; line-height: 1; transition: transform .35s ease; }
.current-project__link:hover, .current-projects__future a:hover { color: var(--theme-accent); }
.current-project__link:hover span, .current-projects__future a:hover span { transform: translate(3px, -3px); }
.current-project__image:focus-visible, .current-project__link:focus-visible, .current-projects__future a:focus-visible { outline: 2px solid var(--theme-accent); outline-offset: 4px; }
.current-projects__future { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; margin-top: clamp(3rem, 6vw, 5rem); padding-top: 1.7rem; border-top: 1px solid var(--theme-border-strong); }
.current-projects__future p { margin-top: .4rem; color: var(--theme-text-soft); }
.current-projects__future a { display: inline-flex; gap: 1.5rem; align-items: center; white-space: nowrap; border-bottom: 1px solid var(--theme-accent); padding: .5rem 0; color: var(--theme-text); font-size: .82rem; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; }
@media (prefers-reduced-motion: no-preference) {
  .current-projects [data-project-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .8s ease, transform .8s cubic-bezier(.22,.61,.36,1), border-color .5s ease; }
  .current-projects [data-project-reveal].is-visible { opacity: 1; transform: none; }
}
@media (max-width: 900px) {
  .current-project { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); min-height: 400px; }
  .current-project--reverse { grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); }
  .current-project__content { padding: 1.6rem; }
  .current-project__topline { font-size: .68rem; }
}
@media (max-width: 640px) {
  .current-projects { padding-top: 8rem; }
  .current-projects__intro { display: block; }
  .current-projects__intro > p { margin-top: 1rem; }
  .current-project, .current-project--reverse { display: flex; flex-direction: column; min-height: 0; }
  .current-project__image { flex: none; aspect-ratio: 1.17; }
  .current-project__content { min-height: 320px; padding: 1.5rem; }
  .current-project__details { padding-top: 2.5rem; }
  .current-project__description { margin-top: 1rem; }
  .current-project__link { margin-top: 1.6rem; }
  .current-projects__future { display: block; }
  .current-projects__future a { margin-top: 1rem; white-space: normal; }
}
@media (prefers-reduced-motion: reduce) {
  .current-project__image img, .current-project__link span, .current-projects__future a span { transition: none; }
}
.current-project__facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:1rem;margin:1.6rem 0 0;padding:1.1rem 0;border-block:1px solid color-mix(in oklab,var(--theme-accent) 30%,transparent)}
.current-project__facts dt{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--theme-text-soft)}
.current-project__facts dd{margin:.3rem 0 0;color:var(--theme-text);font-weight:500}
.current-project__highlights{list-style:none;padding:0;margin:1.1rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem}
.current-project__highlights li{padding:.4rem .8rem;border:1px solid color-mix(in oklab,var(--theme-accent) 40%,transparent);border-radius:999px;font-size:.78rem;color:var(--theme-text-soft)}

/* One unified Tamra Asteria showcase: project details flow into Lifestyle & Amenities */
.asteria-showcase{position:relative;isolation:isolate;padding-bottom:clamp(4.5rem,8vw,7.5rem);
  background:
    radial-gradient(70% 38% at 85% 8%,color-mix(in oklab,var(--theme-accent) 11%,transparent),transparent 70%),
    radial-gradient(70% 34% at 10% 88%,color-mix(in oklab,var(--theme-accent) 9%,transparent),transparent 70%),
    linear-gradient(180deg,var(--theme-bg-soft) 0%,var(--theme-bg-soft) 55%,color-mix(in oklab,var(--theme-bg-soft) 70%,var(--theme-bg)) 100%)}
html .current-projects .asteria-amenities{background:transparent;padding:0;margin-top:clamp(3rem,6vw,5rem);position:relative}
/* the project card and the amenities share one left spine */
.asteria-bridge{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2rem);margin-bottom:clamp(2.25rem,4.5vw,3.75rem)}
.asteria-bridge__line{flex:1;height:1px;background:linear-gradient(90deg,transparent,color-mix(in oklab,var(--theme-accent) 65%,transparent))}
.asteria-bridge__line:last-child{background:linear-gradient(270deg,transparent,color-mix(in oklab,var(--theme-accent) 65%,transparent))}
.asteria-bridge__label{display:inline-flex;align-items:center;gap:.8rem;padding:.6rem 1.25rem;border:1px solid color-mix(in oklab,var(--theme-accent) 45%,transparent);border-radius:999px;color:var(--theme-accent);font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap;background:color-mix(in oklab,var(--theme-surface) 70%,transparent)}
.asteria-bridge__label::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--theme-accent)}
/* amenities heading mirrors the Current Projects intro: title left, lead right */
.asteria-amenities .f-head{max-width:none;display:flex;justify-content:space-between;align-items:end;gap:2rem;flex-wrap:wrap;margin-bottom:clamp(1.75rem,3.5vw,3rem)}
.asteria-amenities .f-head .eyebrow{flex-basis:100%;margin:0}
.asteria-amenities .f-title{margin:0;font-size:clamp(2.2rem,3.8vw,3.4rem);font-weight:500;line-height:1.05;color:var(--theme-text);flex:1 1 24rem;max-width:34rem}
.asteria-amenities .f-lead{margin:0;max-width:22rem;flex:0 1 22rem;color:var(--theme-text-soft);padding-bottom:.3rem}
.asteria-amenities .bento{gap:clamp(.6rem,1.2vw,1rem)}
.asteria-amenities .tile{border-radius:0}
@media (max-width:900px){
  .asteria-amenities .f-title{flex-basis:100%;max-width:none}
  .asteria-amenities .f-lead{flex-basis:100%;max-width:34rem}
}
@media (max-width:640px){
  .asteria-showcase{padding-bottom:4rem}
  html .current-projects .asteria-amenities{margin-top:2.75rem}
  .asteria-bridge{gap:.75rem}
  .asteria-bridge__label{padding:.5rem .9rem;letter-spacing:.16em;font-size:.66rem;white-space:normal;text-align:center}
}

/* Amenities header: eyebrow on top, title left, lead right */
.asteria-amenities .f-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,22rem);column-gap:2rem;row-gap:.6rem;align-items:end}
.asteria-amenities .f-head .eyebrow{grid-column:1 / -1}
.asteria-amenities .f-title{grid-column:1;max-width:36rem}
.asteria-amenities .f-lead{grid-column:2}
@media (max-width:900px){
  .asteria-amenities .f-head{grid-template-columns:1fr}
  .asteria-amenities .f-title,.asteria-amenities .f-lead{grid-column:1;max-width:34rem}
  .asteria-amenities .f-lead{margin-top:.4rem}
}
/* Photo tiles keep light caption text over their dark gradient in both themes */
html[data-theme="light"] .asteria-amenities .tile:not(.tile--num):not(.tile--list){color:#f5efe7}
html[data-theme="light"] .asteria-amenities .tile:not(.tile--num):not(.tile--list) .tag{color:#f5efe7}
html[data-theme="light"] .asteria-amenities .tile--num .tag,
html[data-theme="light"] .asteria-amenities .tile--list .tag{background:transparent;color:var(--theme-accent);border-color:color-mix(in oklab,var(--theme-accent) 50%,transparent);backdrop-filter:none}
html[data-theme="light"] .asteria-amenities .tile--list li{border-color:var(--theme-border)}

/* One continuous Life at Tamra Asteria section */
.current-projects .asteria-lifestyle{display:block;min-height:0;height:auto;padding:0;margin:clamp(2.5rem,5vw,4rem) 0 0;background:transparent}
.asteria-lifestyle .wrap{padding-top:0;padding-bottom:0}
.asteria-lifestyle .asteria-lifestyle__header{margin:0 0 clamp(1.25rem,2.5vw,2rem)}
.asteria-lifestyle .asteria-lifestyle__intro{margin:0 0 clamp(1.5rem,3vw,2.5rem);padding:0;min-height:0}
.asteria-lifestyle .asteria-lifestyle__intro .eyebrow{margin:0 0 .5rem}
.asteria-lifestyle .asteria-lifestyle__intro .f-title,.asteria-lifestyle .asteria-lifestyle__intro .f-lead{margin-top:0}
.asteria-lifestyle .asteria-lifestyle__amenities{margin-top:0}
@media (max-width:640px){.current-projects .asteria-lifestyle{margin-top:2rem}.asteria-lifestyle .asteria-lifestyle__header{margin-bottom:1rem}}
.current-projects__next{margin-top:clamp(3.5rem,7vw,6rem)}
.current-project__index{color:var(--theme-accent);font-weight:600;margin-right:auto}
.current-project__image picture,.current-project__image img{display:block;width:100%;height:100%}
