.awning-projects-page .ap-hero{padding:clamp(58px,8vw,108px) 0 54px;background:linear-gradient(135deg,#f7f7f8 0%,#fff 58%,#f3f3f6 100%)}
.awning-projects-page .ap-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);gap:clamp(34px,6vw,76px);align-items:center}
.awning-projects-page .ap-hero-copy{max-width:700px}.awning-projects-page .ap-hero-copy h1{max-width:760px}
.awning-projects-page .ap-lead{font-size:clamp(1.05rem,1.5vw,1.28rem);line-height:1.7}.awning-projects-page .ap-support{max-width:670px;opacity:.78}
.awning-projects-page .ap-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.awning-projects-page .ap-feature{margin:0;position:relative;min-height:360px;border-radius:4px;overflow:hidden;background:#e8e8ec;box-shadow:0 18px 45px rgba(19,24,51,.12)}
.awning-projects-page .ap-feature img{width:100%;height:100%;min-height:360px;max-height:510px;display:block;object-fit:cover}
.awning-projects-page .ap-feature figcaption{position:absolute;left:18px;right:18px;bottom:18px;padding:14px 16px;background:rgba(34,34,62,.92);color:#fff;display:grid;gap:3px}
.awning-projects-page .ap-feature figcaption span{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;opacity:.75}.awning-projects-page .ap-feature figcaption strong{font-size:1rem}
.awning-projects-page .ap-heading{align-items:end}.awning-projects-page .ap-heading>p{max-width:420px}
.awning-projects-page .ap-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:14px;align-items:end;margin:30px 0 18px;padding:20px;background:#f7f7f8;border:1px solid rgba(34,34,62,.11)}
.awning-projects-page .ap-filters label{display:grid;gap:8px;font-weight:700;font-size:.85rem}.awning-projects-page .ap-filters select{width:100%;min-height:48px;padding:9px 12px;border:1px solid #cbcbd2;background:#fff;color:#22223e}
.awning-projects-page .ap-filter-actions{display:flex;align-items:center;gap:14px;min-height:48px}.awning-projects-page .ap-clear{border:0;background:none;color:#22223e;text-decoration:underline;text-underline-offset:3px;font-weight:700;cursor:pointer}
.awning-projects-page .ap-status{margin:18px 0 24px;opacity:.7}.awning-projects-page .ap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.awning-projects-page .ap-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(34,34,62,.12);min-width:0}.awning-projects-page .ap-card-image{display:block;overflow:hidden;background:#eee}
.awning-projects-page .ap-card-image img{width:100%;height:auto;display:block;object-fit:contain;object-position:center top;transition:transform .25s ease}.awning-projects-page .ap-card:hover .ap-card-image img{transform:scale(1.02)}
.awning-projects-page .ap-card-body{padding:22px;display:flex;flex-direction:column;flex:1}.awning-projects-page .ap-card-body h3{margin:0 0 10px;font-size:1.3rem;line-height:1.3}.awning-projects-page .ap-card-body h3 a{color:inherit;text-decoration:none}.awning-projects-page .ap-card-description{opacity:.78;margin-top:0}
.awning-projects-page .ap-card dl,.awning-projects-page .ap-specs{margin:4px 0 22px}.awning-projects-page .ap-card dl>div,.awning-projects-page .ap-specs>div{display:grid;grid-template-columns:82px minmax(0,1fr);gap:12px;padding:9px 0;border-bottom:1px solid rgba(34,34,62,.1);font-size:.9rem}.awning-projects-page dt{opacity:.65}.awning-projects-page dd{margin:0;overflow-wrap:anywhere}.awning-projects-page .ap-card .text-link{margin-top:auto;align-self:flex-start}
.awning-projects-page .ap-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:34px 0 0}.awning-projects-page .ap-pagination a,.awning-projects-page .ap-pagination span{min-width:44px;min-height:44px;padding:10px 13px;display:grid;place-items:center;border:1px solid rgba(34,34,62,.2);text-decoration:none}.awning-projects-page .ap-pagination span{background:#22223e;color:#fff;border-color:#22223e}.awning-projects-page .ap-empty{padding:24px;background:#f7f7f8}
.awning-projects-page .ap-planning-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,7vw,90px);align-items:start}.awning-projects-page .ap-notes{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(34,34,62,.14);border-left:1px solid rgba(34,34,62,.14)}.awning-projects-page .ap-notes>div{padding:24px;border-right:1px solid rgba(34,34,62,.14);border-bottom:1px solid rgba(34,34,62,.14)}.awning-projects-page .ap-notes span{font-size:.78rem;font-weight:700;opacity:.45}.awning-projects-page .ap-notes h3{margin:10px 0 6px}.awning-projects-page .ap-notes p{margin:0;opacity:.75}
.awning-projects-page .ap-regional-copy,.awning-projects-page .ap-project-content,.awning-projects-page .ap-local-note{max-width:960px;margin:auto;padding:clamp(24px,4vw,46px);background:#f7f7f8}.awning-projects-page .ap-regional-copy section+section{margin-top:32px}.awning-projects-page .ap-regional-copy details{padding:16px 0;border-top:1px solid rgba(34,34,62,.14)}.awning-projects-page .ap-regional-copy summary{font-weight:700;cursor:pointer}
.awning-projects-page .ap-project-hero{padding-top:48px}.awning-projects-page .ap-back{display:inline-block;margin-bottom:26px}.awning-projects-page .ap-detail-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:clamp(34px,6vw,70px);align-items:start}.awning-projects-page .ap-detail-copy{position:sticky;top:24px}.awning-projects-page .ap-detail-copy h1{font-size:clamp(2.1rem,4vw,4.6rem);line-height:1.02}
.awning-projects-page .ap-photo-wrap{position:relative;background:#efeff1;overflow:hidden}.awning-projects-page .ap-photo-wrap>img{width:100%;height:auto;max-height:720px;min-height:320px;display:block;object-fit:contain}.awning-projects-page .ap-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:54px;border:0;background:rgba(255,255,255,.92);color:#22223e;font-size:30px;cursor:pointer}.awning-projects-page .ap-left{left:12px}.awning-projects-page .ap-right{right:12px}
.awning-projects-page .ap-thumbnails{display:flex;gap:9px;overflow-x:auto;padding:12px 0}.awning-projects-page .ap-thumbnail{flex:0 0 72px;height:72px;border:2px solid transparent;overflow:hidden}.awning-projects-page .ap-thumbnail.active{border-color:#e62c2f}.awning-projects-page .ap-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}.awning-projects-page .ap-photo-counter{font-size:.82rem;opacity:.65;margin-top:0}.awning-projects-page .ap-project-content h2{margin-top:1.8em}.awning-projects-page .ap-project-content p,.awning-projects-page .ap-project-content li{line-height:1.8}.awning-projects-page .ap-local-note{max-width:none}.awning-projects-page .ap-error{padding:80px 0}
@media(max-width:980px){.awning-projects-page .ap-hero-grid,.awning-projects-page .ap-detail-layout,.awning-projects-page .ap-planning-grid{grid-template-columns:1fr}.awning-projects-page .ap-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.awning-projects-page .ap-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.awning-projects-page .ap-filter-actions{grid-column:1/-1}.awning-projects-page .ap-detail-copy{position:static}}
@media(max-width:640px){.awning-projects-page .ap-grid,.awning-projects-page .ap-filters,.awning-projects-page .ap-notes{grid-template-columns:1fr}.awning-projects-page .ap-feature,.awning-projects-page .ap-feature img{min-height:270px}.awning-projects-page .ap-filter-actions{grid-column:auto}.awning-projects-page .ap-card-body{padding:18px}.awning-projects-page .ap-photo-wrap>img{min-height:220px}.awning-projects-page .ap-pagination a,.awning-projects-page .ap-pagination span{min-width:40px;padding:8px 10px}}

/* Project gallery v7: slightly smaller detail image + click-to-zoom lightbox */
.awning-projects-page .ap-gallery .ap-photo-wrap{
  width:92%;
  max-width:780px;
  margin-left:auto;
  margin-right:auto;
  cursor:zoom-in;
}
.awning-projects-page .ap-gallery .ap-photo-wrap>img{
  max-height:620px;
  cursor:zoom-in;
}
.awning-projects-page .ap-gallery .ap-thumbnails,
.awning-projects-page .ap-gallery .ap-photo-counter{
  width:92%;
  max-width:780px;
  margin-left:auto;
  margin-right:auto;
}
.ap-lightbox[hidden]{display:none!important}
.ap-lightbox{
  position:fixed;
  inset:0;
  z-index:99999;
  display:grid;
  place-items:center;
  padding:28px 72px;
  background:rgba(12,12,20,.94);
}
.ap-lightbox__image{
  display:block;
  max-width:min(94vw,1600px);
  max-height:90vh;
  width:auto;
  height:auto;
  object-fit:contain;
  box-shadow:0 14px 60px rgba(0,0,0,.45);
}
.ap-lightbox__close,
.ap-lightbox__prev,
.ap-lightbox__next{
  position:fixed;
  border:0;
  background:rgba(255,255,255,.94);
  color:#22223e;
  cursor:pointer;
  display:grid;
  place-items:center;
  line-height:1;
  z-index:2;
}
.ap-lightbox__close{top:20px;right:20px;width:48px;height:48px;font-size:32px}
.ap-lightbox__prev,.ap-lightbox__next{top:50%;transform:translateY(-50%);width:52px;height:64px;font-size:38px}
.ap-lightbox__prev{left:16px}.ap-lightbox__next{right:16px}
.ap-lightbox__counter{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);margin:0;padding:6px 12px;background:rgba(0,0,0,.45);color:#fff;font-size:.82rem}
body.ap-lightbox-open{overflow:hidden}
@media(max-width:980px){
  .awning-projects-page .ap-gallery .ap-photo-wrap,
  .awning-projects-page .ap-gallery .ap-thumbnails,
  .awning-projects-page .ap-gallery .ap-photo-counter{width:100%;max-width:none}
}
@media(max-width:640px){
  .ap-lightbox{padding:62px 14px 48px}
  .ap-lightbox__prev,.ap-lightbox__next{width:42px;height:52px;font-size:30px;background:rgba(255,255,255,.88)}
  .ap-lightbox__prev{left:6px}.ap-lightbox__next{right:6px}
  .ap-lightbox__close{top:10px;right:10px;width:42px;height:42px;font-size:28px}
}

/* v9 - equal project cards for Awnings / Blinds / Pergolas */
.awning-projects-page .ap-grid{
  align-items:stretch;
}
.awning-projects-page .ap-card{
  height:100%;
  overflow:hidden;
}
.awning-projects-page .ap-card-image{
  display:block;
  width:100%;
  height:300px !important;
  min-height:300px !important;
  max-height:300px !important;
  aspect-ratio:auto !important;
  overflow:hidden;
  flex:0 0 300px;
  background:#eee;
}
.awning-projects-page .ap-card-image img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
}
.awning-projects-page .ap-card-body{
  flex:1 1 auto;
}
@media(max-width:980px){
  .awning-projects-page .ap-card-image{
    height:280px !important;
    min-height:280px !important;
    max-height:280px !important;
    flex-basis:280px;
  }
}
@media(max-width:640px){
  .awning-projects-page .ap-card-image{
    height:250px !important;
    min-height:250px !important;
    max-height:250px !important;
    flex-basis:250px;
  }
}
