/* Novadyne project portfolio — editorial extension */
.project-index-hero{background:#061a37;color:#fff;padding:118px 0 72px;position:relative;overflow:hidden}.project-index-hero:before{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.25),transparent)}.project-index-hero .project-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:72px;align-items:end}.project-index-hero .eyebrow{color:#8eb7ef}.project-index-hero h1{font-family:'Playfair Display',serif;font-size:clamp(48px,6vw,78px);line-height:1.02;letter-spacing:-2.2px;max-width:860px;margin:18px 0 24px}.project-index-hero p{color:#c8d5e8;font-size:18px;line-height:1.8;max-width:760px}.portfolio-intro-note{border-left:1px solid rgba(255,255,255,.2);padding-left:30px}.portfolio-intro-note strong{display:block;font-size:12px;letter-spacing:1.8px;text-transform:uppercase;color:#fff;margin-bottom:10px}.portfolio-intro-note span{display:block;color:#9fb1ca;line-height:1.7;font-size:14px}
.project-collection{padding:88px 0 110px}.project-collection-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:42px;padding-bottom:24px;border-bottom:1px solid #dce5f0}.project-collection-head span{font-size:11px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;color:#0f4da8}.project-collection-head h2{font-family:'Playfair Display',serif;font-size:44px;line-height:1.08;margin-top:9px}.project-collection-head p{max-width:460px;color:#647187;line-height:1.75}
.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.portfolio-card{background:#fff;border:1px solid #dce4ee;box-shadow:0 18px 44px rgba(6,26,55,.055);display:flex;flex-direction:column;min-width:0;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}.portfolio-card:hover{transform:translateY(-4px);border-color:#b8cbe4;box-shadow:0 26px 60px rgba(6,26,55,.09)}.portfolio-preview{position:relative;height:310px;background:#071d3b;overflow:hidden;border-bottom:1px solid #dce4ee}.portfolio-preview img{width:100%;height:100%;object-fit:cover;display:block}.portfolio-preview iframe{width:1440px;height:900px;border:0;transform:scale(.46);transform-origin:top left;pointer-events:none;background:#fff}.portfolio-preview-shield{position:absolute;inset:0;display:flex;align-items:flex-end;padding:26px;background:linear-gradient(180deg,transparent 45%,rgba(4,18,39,.86));pointer-events:none}.portfolio-preview-shield span{display:inline-flex;background:#fff;color:#09264e;padding:8px 11px;font-size:10px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase}.portfolio-card-body{padding:31px 32px 32px;display:flex;flex-direction:column;flex:1}.portfolio-label-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.portfolio-label{font-size:10px;font-weight:800;letter-spacing:1.05px;text-transform:uppercase;color:#24518d;border:1px solid #d4dfed;padding:7px 9px;background:#f8fbff}.portfolio-label.live:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#14865b;margin-right:7px}.portfolio-card h3{font-family:'Playfair Display',serif;font-size:34px;line-height:1.1;color:#101b2e;margin-bottom:11px}.portfolio-tagline{font-size:17px;line-height:1.62;color:#2b3d57;margin-bottom:13px}.portfolio-description{color:#667389;line-height:1.75;font-size:14px;margin-bottom:23px}.portfolio-capabilities{display:flex;gap:8px;flex-wrap:wrap;margin:auto 0 25px}.portfolio-capabilities span{font-size:11px;color:#4d5b70;background:#f4f7fa;padding:7px 9px}.portfolio-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.portfolio-actions .btn-dark{padding:13px 18px}.portfolio-text-link{font-weight:750;color:#0f4da8;font-size:13px}
.project-detail-hero{background:#061a37;color:#fff;padding:104px 0 82px}.project-detail-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:72px;align-items:center}.project-detail-copy .project-detail-kicker{display:block;font-size:11px;letter-spacing:1.8px;text-transform:uppercase;color:#8fb9f0;font-weight:800}.project-detail-copy h1{font-family:'Playfair Display',serif;font-size:clamp(50px,6vw,82px);line-height:1;margin:16px 0 22px}.project-detail-copy .lead{font-size:21px;line-height:1.65;color:#d6e0ef;max-width:760px}.project-detail-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.project-detail-meta span{border:1px solid rgba(255,255,255,.2);padding:8px 11px;font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#dce7f5}.project-detail-visual{background:#fff;padding:10px;box-shadow:0 28px 68px rgba(0,0,0,.22)}.project-detail-visual img{width:100%;display:block;aspect-ratio:16/10;object-fit:cover}.project-detail-visual iframe{display:block;width:100%;height:370px;border:0;background:#fff}.project-detail-fallback{min-height:360px;background:#0b2d5b;display:flex;align-items:flex-end;padding:34px;color:#fff}.project-detail-fallback strong{font-family:'Playfair Display',serif;font-size:42px;display:block}.project-detail-fallback span{display:block;color:#9fbbdf;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;margin-bottom:9px}.project-detail-section{padding:90px 0}.project-detail-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:76px}.project-detail-story h2,.project-detail-side h2{font-family:'Playfair Display',serif;font-size:42px;margin-bottom:20px;color:#111c2d}.project-detail-story p{color:#5a687c;line-height:1.95;font-size:17px}.project-feature-list{list-style:none;margin-top:34px;border-top:1px solid #dbe4ef}.project-feature-list li{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:17px 0;border-bottom:1px solid #dbe4ef;color:#28384f}.project-feature-list li:before{content:"✓";width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#0d3d7c;color:#fff;font-size:12px}.project-info-block{padding:24px 0;border-bottom:1px solid #dbe4ef}.project-info-block:first-child{border-top:1px solid #dbe4ef}.project-info-block span{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:#77849a;font-weight:800;margin-bottom:8px}.project-info-block strong,.project-info-block p{display:block;color:#17253a;line-height:1.65}.tech-pills{display:flex;gap:8px;flex-wrap:wrap}.tech-pills span{font-size:11px;border:1px solid #ccd9e8;padding:8px 10px;color:#28496f;background:#f8fbff}.project-detail-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
@media(max-width:1000px){.project-index-hero .project-hero-grid,.project-detail-grid,.project-detail-content{grid-template-columns:1fr}.portfolio-intro-note{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:24px 0 0}.portfolio-grid{grid-template-columns:1fr}.project-detail-grid{gap:42px}.project-detail-content{gap:48px}}
@media(max-width:640px){.project-index-hero{padding:90px 0 58px}.project-index-hero h1{letter-spacing:-1px}.project-collection{padding:62px 0 78px}.project-collection-head{display:block}.project-collection-head p{margin-top:16px}.portfolio-preview{height:225px}.portfolio-preview iframe{transform:scale(.3)}.portfolio-card-body{padding:25px 23px}.portfolio-card h3{font-size:30px}.project-detail-hero{padding:84px 0 58px}.project-detail-copy .lead{font-size:18px}.project-detail-visual iframe{height:270px}.project-detail-section{padding:65px 0}.project-detail-story h2,.project-detail-side h2{font-size:34px}}
