/* KDIA Portfolio Projects */
.kdia-featured-projects{font-family:Montserrat,sans-serif;background:#fff7f5;padding:76px 7%}.kdia-featured-heading{max-width:760px;margin:0 auto 42px;text-align:center}.kdia-featured-heading p,.kdia-section-kicker,.kdia-eyebrow{color:#b85f76;font-size:.76rem;letter-spacing:3px;text-transform:uppercase;font-weight:700}.kdia-featured-heading h2{font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.6rem);line-height:1.05;color:#1a1116;margin:0}.kdia-featured-grid{max-width:1220px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.kdia-featured-card{background:#fff;border:1px solid #ead2d6;border-radius:18px;overflow:hidden;box-shadow:0 18px 52px rgba(52,27,37,.07)}.kdia-featured-image{display:block;aspect-ratio:16/10;overflow:hidden;background:#f6dedf}.kdia-featured-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.kdia-featured-card:hover .kdia-featured-image img{transform:scale(1.035)}.kdia-featured-content{padding:24px}.kdia-featured-content span{display:block;color:#b85f76;font-size:.72rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:10px}.kdia-featured-content h3{font-family:Georgia,serif;font-size:1.6rem;line-height:1.1;margin:0 0 10px}.kdia-featured-content h3 a{color:#1a1116;text-decoration:none}.kdia-featured-content p{color:#5f4b52;font-size:.92rem;line-height:1.65;margin:0}.kdia-empty{text-align:center;color:#5f4b52}
.kdia-project-page{--kdia-cream:#fff8f5;--kdia-paper:#fffdfb;--kdia-blush:#f6dedf;--kdia-rose:#b85f76;--kdia-rose-soft:#e6b7bf;--kdia-plum:#2b1420;--kdia-ink:#1a1116;--kdia-muted:#5f4b52;--kdia-line:#ead2d6;font-family:Montserrat,sans-serif;background:var(--kdia-cream);color:var(--kdia-ink);overflow:hidden}.kdia-project-page img{max-width:100%;display:block}.kdia-project-shell{max-width:1520px;margin:0 auto;padding:22px}.kdia-project-hero{min-height:620px;display:grid;grid-template-columns:.38fr .62fr;border:1px solid var(--kdia-line);background:var(--kdia-paper);box-shadow:0 26px 80px rgba(52,27,37,.08)}.kdia-hero-copy{padding:64px 52px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle at 0 0,rgba(232,184,190,.26),transparent 36%),var(--kdia-paper)}.kdia-eyebrow{margin:0 0 20px}.kdia-hero-copy h1{font-family:Georgia,serif;font-size:clamp(2.9rem,5vw,5.2rem);line-height:.92;font-weight:500;margin:0 0 18px;color:var(--kdia-ink)}.kdia-script-line{font-family:"Brittany Signature",cursive;color:var(--kdia-rose);font-size:clamp(2.3rem,4vw,3.6rem);line-height:1;margin-bottom:26px}.kdia-hero-copy p{color:var(--kdia-muted);line-height:1.85;font-size:1rem;max-width:480px;margin:0}.kdia-hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.kdia-hero-tags span{border:1px solid rgba(184,95,118,.42);color:var(--kdia-plum);background:#f9e3e4;padding:10px 16px;border-radius:999px;font-size:.75rem;font-weight:800;letter-spacing:.4px;box-shadow:0 8px 22px rgba(184,95,118,.08)}.kdia-hero-visual{display:flex;align-items:stretch;justify-content:center;padding:0;overflow:hidden;background:#f4e8e4}.kdia-hero-mockup{width:100%;height:100%;background:#f4e8e4}.kdia-hero-mockup img{width:100%;height:100%;min-height:620px;object-fit:cover}.kdia-mockup-placeholder{min-height:620px;display:grid;place-items:center;color:#b85f76;font-weight:700}.kdia-project-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));background:rgba(255,255,255,.82);border-left:1px solid var(--kdia-line);border-right:1px solid var(--kdia-line);border-bottom:1px solid var(--kdia-line);box-shadow:0 24px 70px rgba(52,27,37,.06)}.kdia-meta-item{padding:20px 24px;border-right:1px solid var(--kdia-line)}.kdia-meta-item span,.kdia-brand-logo-box span,.kdia-palette-box span,.kdia-type-box span{display:block;color:var(--kdia-rose);font-size:.7rem;letter-spacing:2px;text-transform:uppercase;font-weight:700;margin-bottom:8px}.kdia-meta-item strong{font-family:Georgia,serif;font-size:1rem;font-weight:400;color:var(--kdia-ink)}.kdia-content-section{max-width:1180px;margin:0 auto;padding:74px 7%}.kdia-section-kicker{margin:0 0 18px}.kdia-content-section h2,.kdia-gallery-head h2,.kdia-visual-gallery-head h2{font-family:Georgia,serif;font-size:clamp(2.1rem,4vw,3.8rem);line-height:.98;font-weight:500;margin:0 0 26px}.kdia-divider-star{display:flex;align-items:center;gap:18px;color:var(--kdia-rose);margin-bottom:36px}.kdia-divider-star:before,.kdia-divider-star:after{content:"";width:92px;height:1px;background:var(--kdia-rose-soft)}.kdia-overview-body,.kdia-overview-body p,.kdia-content-section p{color:var(--kdia-muted);font-size:1rem;line-height:1.9;max-width:760px;margin:0 0 26px}.kdia-case-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px;margin-top:40px}.kdia-case-card{background:#fff;border:1px solid var(--kdia-line);border-radius:18px;padding:24px;box-shadow:0 16px 44px rgba(52,27,37,.05)}.kdia-case-card h3{font-family:Georgia,serif;font-size:1.35rem;margin:0 0 12px;font-weight:500}.kdia-case-card p{font-size:.9rem;line-height:1.7;margin:0}.kdia-brand-system{max-width:1380px;margin:0 auto 64px;padding:0 28px}.kdia-brand-system-inner{border:1px solid var(--kdia-line);border-radius:18px;background:rgba(255,255,255,.68);display:grid;grid-template-columns:.9fr 1fr 1.2fr;gap:34px;align-items:center;padding:26px 34px;box-shadow:0 18px 60px rgba(52,27,37,.06)}.kdia-brand-logo-box{display:flex;align-items:center;gap:18px;border-right:1px solid var(--kdia-line);padding-right:34px}.kdia-brand-logo-box img{width:70px;height:70px;object-fit:contain}.kdia-brand-logo-box strong{font-family:Georgia,serif;font-size:1.3rem;font-weight:400}.kdia-project-year{margin:8px 0 0;color:var(--kdia-muted);font-size:.82rem}.kdia-palette-box{border-right:1px solid var(--kdia-line);padding-right:34px}.kdia-swatches{display:flex;gap:12px;flex-wrap:wrap}.kdia-swatch{width:48px;height:48px;border-radius:8px;border:1px solid rgba(0,0,0,.08);background:var(--c)}.kdia-tech-stack-grid{display:flex;flex-wrap:wrap;gap:12px}.kdia-tech-pill{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:rgba(184,95,118,.06);border:1px solid rgba(184,95,118,.14);color:var(--kdia-plum);font-size:.82rem;font-weight:700;text-decoration:none}.kdia-tech-icon{width:28px;height:28px;border-radius:8px;background:#fff;display:grid;place-items:center;box-shadow:0 4px 14px rgba(52,27,37,.08);overflow:hidden}.kdia-tech-icon img{width:16px;height:16px;object-fit:contain}.kdia-mobile-screen-gallery{background:radial-gradient(circle at 12% 8%,rgba(255,255,255,.55),transparent 24%),var(--kdia-blush);padding:72px 0 84px;overflow:hidden}.kdia-gallery-head,.kdia-visual-gallery-head{max-width:760px;margin:0 auto 40px;text-align:center;padding:0 24px}.kdia-screen-grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,340px);gap:24px;overflow-x:auto;padding:10px 7% 30px;scroll-snap-type:x mandatory}.kdia-screen-frame{min-height:430px;border-radius:34px;border:10px solid #171112;background:#171112;box-shadow:0 24px 58px rgba(72,37,48,.18),0 8px 18px rgba(72,37,48,.08);overflow:hidden;scroll-snap-align:center;transform:translateY(var(--lift,0))}.kdia-screen-frame:nth-child(odd){--lift:20px}.kdia-screen-frame:nth-child(even){--lift:-10px}.kdia-screen-frame img{width:100%;height:100%;min-height:430px;object-fit:cover;border-radius:24px}.kdia-gallery-note{text-align:center;color:var(--kdia-muted);font-size:.85rem;margin:-24px 0 26px}.kdia-visual-gallery{background:var(--kdia-cream);padding:74px 7% 92px}.kdia-visual-masonry{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-flow:dense;gap:22px}.kdia-visual-item{grid-column:span 4;min-height:280px;margin:0;border-radius:24px;overflow:hidden;border:1px solid var(--kdia-line);background:#fff;box-shadow:0 20px 52px rgba(52,27,37,.08)}.kdia-visual-wide{grid-column:span 8}.kdia-visual-tall{grid-column:span 4;grid-row:span 2;min-height:586px}.kdia-visual-item img{width:100%;height:100%;object-fit:cover}.kdia-case-cta{background:linear-gradient(rgba(43,20,32,.92),rgba(43,20,32,.92)),radial-gradient(circle at 12% 18%,rgba(232,184,190,.22),transparent 28%);color:#fff;padding:64px 7%;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.kdia-case-cta h2{font-family:Georgia,serif;font-size:clamp(2rem,3.5vw,3.8rem);line-height:1.05;font-weight:500;margin:0}.kdia-case-cta span{display:block;font-family:"Brittany Signature",cursive;color:#efc3c6}.kdia-case-cta p{color:rgba(255,255,255,.86);line-height:1.85;margin:0 0 24px}.kdia-case-cta a{display:inline-block;color:#fff;background:var(--kdia-rose);text-decoration:none;padding:14px 28px;border-radius:4px;font-size:.82rem;letter-spacing:1px;font-weight:700}@media(max-width:1100px){.kdia-project-hero,.kdia-case-cta,.kdia-brand-system-inner{grid-template-columns:1fr}.kdia-hero-copy{padding:70px 36px 40px}.kdia-project-meta{grid-template-columns:repeat(2,1fr)}.kdia-brand-logo-box,.kdia-palette-box{border-right:none;padding-right:0}}@media(max-width:700px){.kdia-featured-grid{grid-template-columns:1fr}.kdia-project-shell{padding:0}.kdia-project-hero{border-left:none;border-right:none}.kdia-hero-copy{padding:64px 22px 34px}.kdia-hero-copy h1{font-size:3.4rem}.kdia-project-meta{grid-template-columns:1fr}.kdia-content-section{padding:74px 22px}.kdia-screen-grid{grid-auto-columns:minmax(220px,78vw);padding-inline:20px}.kdia-screen-frame,.kdia-screen-frame img{min-height:360px}.kdia-visual-gallery{padding:64px 20px 74px}.kdia-visual-masonry{grid-template-columns:1fr}.kdia-visual-item,.kdia-visual-wide,.kdia-visual-tall{grid-column:auto;min-height:260px}.kdia-case-cta{grid-template-columns:1fr;padding:64px 22px}}
