/* LEVORA Projects 1.1.4 — public renderer only. Admin UI intentionally untouched. */
.lvprojects-body{margin:0;background:var(--lvs-paper,#f4f4f1);color:var(--lvs-ink,#0a1220);font-family:var(--lvs-font,Inter,Arial,sans-serif);-webkit-font-smoothing:antialiased}
.lvprojects-body *{box-sizing:border-box}
.lvprojects-main{overflow:hidden;background:var(--lvs-paper,#f4f4f1)}
.lvp-shell,.lvprojects-body .pagination{width:min(calc(100% - 64px),var(--lvs-shell,1680px));margin-inline:auto}
.lvp-eyebrow,.lvp-section-index,.lvp-next>div>span{display:block;color:var(--lvs-orange,#ff7a00);font-size:9px;font-weight:780;letter-spacing:.16em;text-transform:uppercase}
.lvp-eyebrow--light{color:#fff}

/* Archive hero — same typography/shell rhythm as the rest of LEVORA Systems */
.lvp-portfolio-hero{position:relative;min-height:440px;display:flex;align-items:flex-end;background:#0a0f17;color:#fff;isolation:isolate}
.lvp-portfolio-hero__media,.lvp-portfolio-hero__shade{position:absolute;inset:0}
.lvp-portfolio-hero__media{z-index:-2;overflow:hidden;background:#111820}
.lvp-portfolio-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 50%;display:block}
.lvp-portfolio-hero__shade{z-index:-1;background:linear-gradient(90deg,rgba(5,10,16,.82) 0%,rgba(5,10,16,.52) 44%,rgba(5,10,16,.18) 76%,rgba(5,10,16,.28) 100%)}
.lvp-portfolio-hero__inner{padding:46px 0 50px}
.lvp-portfolio-hero__topline{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.22)}
.lvp-portfolio-hero__count{color:rgba(255,255,255,.66);font-size:9px;font-weight:700;letter-spacing:.14em}
.lvp-portfolio-hero__copy{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.62fr);gap:72px;align-items:end;padding-top:28px}
.lvp-portfolio-hero h1{max-width:760px;margin:0;font-size:var(--lvs-page-title,48px);line-height:1.02;letter-spacing:-.05em;font-weight:520;color:#fff;text-wrap:balance}
.lvp-portfolio-hero p{max-width:500px;margin:0 0 2px auto;color:rgba(255,255,255,.78);font-size:var(--lvs-body-copy,15px);line-height:1.62}

/* Archive — deliberately denser than a campaign/gallery page */
.lvp-portfolio{padding:var(--lvs-section-space,68px) 0 calc(var(--lvs-section-space,68px) + 8px);background:#f6f6f3}
.lvp-portfolio__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.55fr);align-items:end;gap:72px;margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid #d8d9d5}
.lvp-portfolio__head h2{max-width:720px;margin:10px 0 0;font-size:var(--lvs-section-title,28px);line-height:1.09;letter-spacing:-.038em;font-weight:530}
.lvp-portfolio__head>p{max-width:470px;margin:0 0 2px auto;color:var(--lvs-muted,#69727d);font-size:13px;line-height:1.6}
.lvp-project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 18px}
.lvp-project-card{min-width:0}
.lvp-project-card__link{display:block;color:inherit;text-decoration:none}
.lvp-project-card__media{position:relative;aspect-ratio:3/2;overflow:hidden;background:#e8e8e4}
.lvp-project-card__media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .42s cubic-bezier(.2,.65,.28,1)}
.lvp-project-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(5,10,16,.10));opacity:.5;transition:opacity .25s ease}
.lvp-project-card__placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,#e9e9e5,#dcdcd6)}
.lvp-project-card__placeholder span{font-size:34px;font-weight:560;color:#9da099}
.lvp-project-card__media em{position:absolute;left:10px;top:10px;z-index:2;padding:5px 7px;background:#0a1220;color:#fff;font-size:7px;font-style:normal;letter-spacing:.12em;text-transform:uppercase}
.lvp-project-card__media i{position:absolute;right:10px;bottom:10px;z-index:2;width:30px;height:30px;display:grid;place-items:center;background:rgba(250,250,248,.96);color:#0a1220;font-size:11px;font-style:normal;opacity:0;transform:translateY(4px);transition:.22s ease}
.lvp-project-card__meta{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-top:11px}
.lvp-project-card__meta small{display:block;color:#8b929d;font-size:8px;font-weight:760;text-transform:uppercase;letter-spacing:.12em}
.lvp-project-card__meta h3{margin:5px 0 0;font-size:15px;line-height:1.18;letter-spacing:-.025em;font-weight:640}
.lvp-project-card__meta>span{padding-top:1px;color:#959ba3;font-size:9px;white-space:nowrap}
.lvp-project-card__link>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-width:96%;margin:7px 0 0;color:var(--lvs-muted,#69727d);font-size:11.5px;line-height:1.52}
@media(hover:hover) and (pointer:fine){.lvp-project-card__link:hover .lvp-project-card__media img{transform:scale(1.022)}.lvp-project-card__link:hover .lvp-project-card__overlay{opacity:1}.lvp-project-card__link:hover .lvp-project-card__media i{opacity:1;transform:none}}
.lvp-empty{padding:32px 0}.lvp-empty span{color:var(--lvs-orange,#ff7a00);font-size:9px;font-weight:800;letter-spacing:.14em}.lvp-empty h2{max-width:620px;margin:12px 0 0;font-size:var(--lvs-section-title,28px);line-height:1.09;letter-spacing:-.035em}
.lvprojects-body .pagination{display:flex;justify-content:center;gap:6px;margin-top:44px}.lvprojects-body .pagination a,.lvprojects-body .pagination span{min-width:32px;height:32px;display:grid;place-items:center;border:1px solid #d4d6d1;color:#0a1220;text-decoration:none;font-size:10px}.lvprojects-body .pagination .active span{background:#0a1220;color:#fff;border-color:#0a1220}

/* Single project — compact editorial opening */
.lvp-single-hero{padding:52px 0 50px;background:#f6f6f3;border-bottom:1px solid #d8d9d5}
.lvp-single-hero__topline{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:30px;padding-bottom:15px;border-bottom:1px solid #d8d9d5}
.lvp-back{color:#737c87;text-decoration:none;font-size:10px}.lvp-back:hover{color:#0a1220}
.lvp-single-hero__topline>span{color:#9399a2;font-size:9px;letter-spacing:.13em}
.lvp-single-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.68fr);align-items:start;gap:64px}
.lvp-single-hero__copy{max-width:700px;padding-top:8px}
.lvp-single-hero h1{max-width:700px;margin:12px 0 14px;font-size:var(--lvs-page-title,48px);line-height:1.02;letter-spacing:-.05em;font-weight:520;text-wrap:balance}
.lvp-single-summary{max-width:610px;margin:0;color:var(--lvs-muted,#69727d);font-size:14px;line-height:1.62}
.lvp-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px;margin:24px 0 0;padding:18px 0 0;border-top:1px solid #dadbd7}
.lvp-facts div{display:grid;gap:3px}.lvp-facts dt{color:#9299a2;font-size:8px;font-weight:760;text-transform:uppercase;letter-spacing:.12em}.lvp-facts dd{margin:0;font-size:11.5px;font-weight:630}
.lvp-single-visit{display:inline-flex;align-items:center;gap:12px;margin-top:20px;padding-bottom:4px;border-bottom:1px solid #0a1220;color:#0a1220;text-decoration:none;font-size:10.5px;font-weight:740}.lvp-single-visit span{font-size:11px}
.lvp-single-hero__media{width:100%;max-width:590px;justify-self:end;margin:0;aspect-ratio:16/10;overflow:hidden;background:#e7e7e3}
.lvp-single-hero__media img{width:100%;height:100%;display:block;object-fit:cover}
.lvp-single-placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,#efefeb,#dfded8)}.lvp-single-placeholder span{font-size:44px;color:#9da099;font-weight:560}

.lvp-overview{padding:52px 0;background:#fff}
.lvp-overview__grid{display:grid;grid-template-columns:160px minmax(0,760px) minmax(0,1fr);gap:30px}
.lvp-overview__lead{grid-column:2;margin:0;font-size:24px;line-height:1.34;letter-spacing:-.028em;font-weight:500}

.lvp-process{padding:0 0 56px;background:#fff}
.lvp-section-head{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #d8d9d5}
.lvp-section-head h2{margin:9px 0 0;font-size:var(--lvs-section-title,28px);line-height:1.09;letter-spacing:-.038em;font-weight:530}
.lvp-process__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.lvp-process article{min-width:0;padding:20px 24px 0 0;border-right:1px solid #dedfda}.lvp-process article+article{padding-left:24px}.lvp-process article:last-child{border-right:0;padding-right:0}
.lvp-process article>span{display:block;margin-bottom:18px;color:var(--lvs-orange,#ff7a00);font-size:8px;font-weight:800}
.lvp-process h3{margin:0;font-size:15px;line-height:1.18;letter-spacing:-.02em}.lvp-process p{margin:7px 0 0;color:var(--lvs-muted,#69727d);font-size:12px;line-height:1.6}

.lvp-editorial{padding:52px 0;background:#f6f6f3;border-top:1px solid #d8d9d5}
.lvp-editorial__grid{display:grid;grid-template-columns:160px minmax(0,760px) minmax(0,1fr);gap:30px}
.lvp-rich{grid-column:2;color:#343a43;font-size:13px;line-height:1.72}.lvp-rich>*:first-child{margin-top:0}.lvp-rich>*:last-child{margin-bottom:0}.lvp-rich p{margin:0 0 16px}.lvp-rich h2{margin:36px 0 13px;color:#0a1220;font-size:24px;line-height:1.12;letter-spacing:-.03em}.lvp-rich h3{margin:26px 0 9px;color:#0a1220;font-size:15px}.lvp-rich img{max-width:100%;height:auto;display:block;margin:22px 0}

/* Gallery — horizontal rail, equal-height images, never a giant single image */
.lvp-gallery{padding:54px 0 58px;background:#fff}
.lvp-section-head--gallery{align-items:end}
.lvp-gallery__tools{display:flex;align-items:center;gap:16px}
.lvp-gallery__count{color:#9299a2;font-size:9px;letter-spacing:.12em;white-space:nowrap}
.lvp-gallery__nav{display:flex;gap:6px}
.lvp-gallery__nav button{width:32px;height:32px;border:1px solid #d5d7d2;background:#fff;color:#0a1220;font:inherit;font-size:11px;cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.lvp-gallery__nav button:hover{background:#0a1220;border-color:#0a1220;color:#fff}
.lvp-gallery__viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.lvp-gallery__viewport::-webkit-scrollbar{display:none}
.lvp-gallery__track{display:flex;align-items:stretch;gap:14px;width:max-content}
.lvp-gallery__slide{flex:0 0 420px;width:420px;margin:0;aspect-ratio:16/10;overflow:hidden;background:#e9e9e5;scroll-snap-align:start}
.lvp-gallery__slide img{width:100%;height:100%;display:block;object-fit:cover}

.lvp-capabilities{padding:44px 0;background:#0b1018;color:#fff;border-top:1px solid rgba(255,122,0,.55)}
.lvp-capabilities__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.1fr);align-items:end;gap:64px}.lvp-capabilities h2{max-width:560px;margin:9px 0 0;font-size:24px;line-height:1.1;letter-spacing:-.035em;font-weight:530}.lvp-services{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.lvp-services span{padding:6px 9px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(255,255,255,.74);font-size:9px}
.lvp-next{display:block;padding:32px 0;background:#f6f6f3;color:#0a1220;text-decoration:none;border-top:1px solid #d8d9d5}.lvp-next__grid{display:grid;grid-template-columns:160px 1fr auto;align-items:center;gap:30px}.lvp-next h2{margin:0;font-size:24px;line-height:1.1;letter-spacing:-.03em}.lvp-next i{font-style:normal;font-size:18px}

/* 4K gains breathing room, not scale */
@media(min-width:2200px){.lvp-portfolio-hero{min-height:470px}.lvp-portfolio-hero h1,.lvp-single-hero h1{font-size:52px}.lvp-portfolio__head h2,.lvp-section-head h2{font-size:30px}.lvp-project-grid{gap-block:42px}.lvp-gallery__slide{flex-basis:440px;width:440px}}

/* 1440 / 1366 */
@media(max-width:1380px){
  .lvp-shell,.lvprojects-body .pagination{width:min(calc(100% - 48px),var(--lvs-shell,1680px))}
  .lvp-portfolio-hero{min-height:390px}.lvp-portfolio-hero__inner{padding:38px 0 42px}.lvp-portfolio-hero__copy{gap:52px;padding-top:24px}.lvp-portfolio-hero h1,.lvp-single-hero h1{font-size:42px}.lvp-portfolio__head h2,.lvp-section-head h2{font-size:26px}
  .lvp-project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 16px}.lvp-project-card__meta h3{font-size:14px}.lvp-project-card__link>p{font-size:11px}
  .lvp-single-hero{padding:46px 0 44px}.lvp-single-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(350px,.66fr);gap:48px}.lvp-single-hero__media{max-width:520px}.lvp-overview__grid,.lvp-editorial__grid{grid-template-columns:140px minmax(0,700px) minmax(0,1fr)}.lvp-overview__lead{font-size:22px}.lvp-gallery__slide{flex-basis:360px;width:360px}
}

/* Low-height / HiDPI laptop */
@media(max-height:820px) and (min-width:901px){
  .lvp-portfolio-hero{min-height:330px}.lvp-portfolio-hero__inner{padding:30px 0 34px}.lvp-portfolio-hero__topline{padding-bottom:16px}.lvp-portfolio-hero__copy{padding-top:20px}.lvp-single-hero{padding:38px 0 36px}.lvp-single-hero__topline{margin-bottom:22px}.lvp-single-hero__media{max-height:330px}.lvp-overview{padding:44px 0}.lvp-gallery{padding:46px 0 50px}.lvp-gallery__slide{flex-basis:340px;width:340px}
}

@media(max-width:1100px){.lvp-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lvp-process__grid{grid-template-columns:1fr}.lvp-process article,.lvp-process article+article{padding:17px 0;border-right:0;border-bottom:1px solid #dedfda}.lvp-process article:last-child{border-bottom:0}.lvp-process article>span{margin-bottom:9px}}

@media(max-width:900px){
  .lvp-portfolio-hero{min-height:400px}.lvp-portfolio-hero__shade{background:linear-gradient(180deg,rgba(5,10,16,.28),rgba(5,10,16,.84))}.lvp-portfolio-hero__copy,.lvp-portfolio__head,.lvp-single-hero__grid,.lvp-capabilities__grid{grid-template-columns:1fr;gap:24px}.lvp-portfolio-hero p,.lvp-portfolio__head>p{margin:0}.lvp-single-hero__media{justify-self:start;max-width:650px}.lvp-overview__grid,.lvp-editorial__grid{grid-template-columns:1fr;gap:16px}.lvp-overview__lead,.lvp-rich{grid-column:1}.lvp-services{justify-content:flex-start}.lvp-next__grid{grid-template-columns:1fr auto;gap:8px}.lvp-next__grid>span{grid-column:1/-1}.lvp-gallery__tools{gap:10px}
}

@media(max-width:760px){
  .lvp-shell,.lvprojects-body .pagination{width:calc(100% - 36px)}
  .lvp-portfolio-hero{min-height:370px}.lvp-portfolio-hero__media img{object-position:center}.lvp-portfolio-hero__inner{padding:30px 0 34px}.lvp-portfolio-hero__topline{padding-bottom:16px}.lvp-portfolio-hero__copy{padding-top:20px;gap:16px}.lvp-portfolio-hero h1,.lvp-single-hero h1{font-size:31px}.lvp-portfolio-hero p{font-size:14px;line-height:1.58}.lvp-portfolio{padding:var(--lvs-section-space,42px) 0 calc(var(--lvs-section-space,42px) + 12px)}.lvp-portfolio__head{margin-bottom:24px;padding-bottom:20px}.lvp-portfolio__head h2,.lvp-section-head h2{font-size:22px}.lvp-project-grid{grid-template-columns:1fr;gap:30px}.lvp-project-card__media{aspect-ratio:3/2}.lvp-project-card__media i{opacity:1;transform:none}.lvp-project-card__link>p{max-width:100%}
  .lvp-single-hero{padding:38px 0 36px}.lvp-single-hero__topline{margin-bottom:22px}.lvp-single-summary{font-size:13.5px}.lvp-facts{gap:12px 20px;margin-top:20px}.lvp-single-hero__media{max-width:100%;aspect-ratio:16/10}.lvp-overview{padding:40px 0}.lvp-overview__lead{font-size:20px}.lvp-process{padding-bottom:44px}.lvp-section-head{margin-bottom:16px;padding-bottom:18px}.lvp-process p,.lvp-rich{font-size:13px}.lvp-editorial{padding:42px 0}.lvp-gallery{padding:44px 0 48px}.lvp-section-head--gallery{align-items:flex-end}.lvp-gallery__tools{flex-direction:column;align-items:flex-end}.lvp-gallery__slide{flex:0 0 82vw;width:82vw;max-width:360px}.lvp-capabilities{padding:40px 0}.lvp-capabilities h2,.lvp-next h2{font-size:22px}.lvp-services{gap:5px}.lvp-next{padding:28px 0}
}

@media(max-width:390px){.lvp-shell,.lvprojects-body .pagination{width:calc(100% - 28px)}.lvp-portfolio-hero h1,.lvp-single-hero h1{font-size:29px}.lvp-portfolio__head h2,.lvp-section-head h2,.lvp-capabilities h2,.lvp-next h2{font-size:21px}.lvp-facts{grid-template-columns:1fr 1fr}.lvp-portfolio-hero__count{display:none}.lvp-gallery__slide{flex-basis:84vw;width:84vw}}

@media(prefers-reduced-motion:reduce){.lvp-project-card__media img,.lvp-project-card__media i{transition:none}.lvp-gallery__viewport{scroll-behavior:auto}}
