/*
Theme Name: Rahul Prasad Portfolio
Theme URI: https://example.com/
Author: Rahul Prasad
Description: One-page digital marketing portfolio for Rahul Prasad.
Version: 1.0
Requires at least: 5.0
Requires PHP: 7.0
License: GPLv2 or later
Text Domain: rahul-prasad-portfolio
*/
body{margin:0}
.rp-portfolio {
 --background: oklch(0.995 0.002 150);
 --foreground: oklch(0.24 0.023 160);
 --primary: oklch(0.43 0.084 166);
 --primary-foreground: oklch(0.995 0 0);
 --muted-foreground: oklch(0.52 0.015 160);
 --accent: oklch(0.96 0.017 155);
  --portfolio-soft: oklch(0.97 0.009 155);
  --portfolio-line: oklch(0.9 0.01 155);
  --portfolio-blue: oklch(0.95 0.021 235);
  --portfolio-pink: oklch(0.96 0.018 10);
  --portfolio-shadow: 0 12px 36px oklch(0.24 0.023 160 / 8%);
  --portfolio-font: 'Manrope', Arial, sans-serif;
  --portfolio-heading: 'DM Sans', Arial, sans-serif;
}
html { scroll-behavior: smooth; scroll-padding-top: 95px; }

.rp-portfolio { color: var(--foreground); background: var(--background); font-family: var(--portfolio-font); font-size: 14px; line-height: 1.65; letter-spacing: 0; }
.rp-portfolio * { box-sizing: border-box; }
.rp-portfolio h1,.rp-portfolio h2,.rp-portfolio h3,.rp-portfolio p { margin: 0; }
.rp-portfolio h1,.rp-portfolio h2,.rp-portfolio h3 { font-family: var(--portfolio-heading); letter-spacing: 0; }
.rp-portfolio a { text-decoration: none; color: inherit; }
.rp-portfolio a.rp-cta { color: var(--primary-foreground); }
.rp-wrap { max-width: 1160px; margin: 0 auto; padding: 0 36px; }
.rp-header { height: 86px; background: var(--background); border-bottom: 1px solid var(--portfolio-line); position: sticky; top: 0; z-index: 30; }
.rp-nav { display: flex; height: 100%; align-items: center; justify-content: space-between; gap: 24px; }
.rp-logo { display: flex; gap: 11px; align-items: center; font-weight: 750; font-size: 18px; }
.rp-monogram { display: grid; place-items: center; width: 35px; height: 35px; background: var(--primary); color: var(--primary-foreground); font-size: 14px; border-radius: 7px; }
.rp-nav-links { display: flex; gap: 31px; align-items: center; font-size: 13px; font-weight: 600; }
.rp-nav-links a:hover,.rp-nav-links a[aria-current] { color: var(--primary); }
.rp-header-action { margin-left: 15px; }
.rp-hero { position: relative; isolation: isolate; min-height: 540px; display: flex; align-items: center; overflow: hidden; }
.rp-hero-image { position: absolute; inset: 0; height: 100%; width: 100%; object-fit: cover; z-index: -2; }
.rp-hero .rp-wrap { width: 100%; }
.rp-hero-copy { max-width: 630px; padding: 62px 0 68px; }
.rp-eyebrow { display: flex; align-items: center; gap: 8px; color: var(--primary); font-size: 11px; font-weight: 750; text-transform: uppercase; letter-spacing: 1.6px; }
.rp-status { display: inline-flex; gap: 8px; align-items: center; border: 1px solid var(--portfolio-line); background: var(--background); border-radius: 4px; padding: 5px 10px; font-size: 11px; color: var(--primary); font-weight: 600; margin-bottom: 22px; }
.rp-dot { height: 6px; width: 6px; border-radius: 50%; background: var(--primary); }
.rp-hero h1 { font-size: 60px; line-height: 1.1; font-weight: 650; margin-bottom: 10px; }
.rp-position { font-size: 30px; line-height: 1.3; font-weight: 500; max-width: 570px; margin-bottom: 20px !important; }
.rp-position span { color: var(--primary); }
.rp-intro { max-width: 480px; font-size: 14px; color: var(--muted-foreground); line-height: 1.85; }
.rp-actions { display: flex; align-items: center; gap: 13px; margin-top: 26px; }
.rp-hero-note { display: flex; gap: 6px; align-items: center; font-size: 11px; color: var(--muted-foreground); margin-top: 22px !important; }
.rp-strip { border-bottom: 1px solid var(--portfolio-line); background: var(--background); }
.rp-strip-inner { display: flex; justify-content: space-between; gap: 20px; padding-top: 24px; padding-bottom: 24px; align-items: center; }
.rp-strip-label { color: var(--muted-foreground); font-size: 10px; text-transform: uppercase; letter-spacing: 1.2px; }
.rp-tool { font-size: 16px; font-family: var(--portfolio-heading); font-weight: 650; display: flex; align-items: center; gap: 8px; color: var(--muted-foreground); }
.rp-tool svg { width: 19px; height: 19px; }
.rp-section { padding: 76px 0; }
.rp-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 30px; }
.rp-section h2 { font-size: 36px; line-height: 1.2; font-weight: 600; margin-top: 10px; }
.rp-section-desc { color: var(--muted-foreground); font-size: 13px; margin-top: 13px !important; }
.rp-section-count { font-size: 12px; color: var(--muted-foreground); }
.rp-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 28px; }
.rp-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px 25px; }
.rp-project { min-width: 0; }
.rp-project-image { height: 218px; border-radius: 7px; overflow: hidden; position: relative; background: var(--portfolio-soft); border: 1px solid var(--portfolio-line); }
.rp-project-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.rp-project:hover .rp-project-image img { transform: scale(1.035); }
.rp-image-label { position: absolute; top: 13px; left: 13px; font-size: 10px; background: var(--background); padding: 4px 8px; border-radius: 3px; color: var(--muted-foreground); }
.rp-project-meta { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-top: 17px; }
.rp-project h3 { font-size: 19px; font-weight: 650; }
.rp-project-type { color: var(--primary); font-size: 10px; font-weight: 600; margin-top: 3px !important; }
.rp-project-summary { color: var(--muted-foreground); font-size: 12px; margin-top: 8px !important; min-height: 40px; }
.rp-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.rp-tag { background: var(--portfolio-soft); color: var(--muted-foreground); font-size: 9px; padding: 3px 7px; border-radius: 3px; }
.rp-concept { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; background: var(--portfolio-blue); }
.rp-concept.automation { background: var(--portfolio-soft); }
.rp-concept-title { font-family: var(--portfolio-heading); font-size: 24px; font-weight: 600; }
.rp-search-box { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 11px 15px; border-radius: 5px; background: var(--background); width: 78%; font-size: 10px; box-shadow: var(--portfolio-shadow); }
.rp-workflow { display: flex; align-items: center; gap: 10px; }
.rp-workflow-node { display: grid; place-items: center; width: 49px; height: 49px; border-radius: 7px; background: var(--background); color: var(--primary); box-shadow: var(--portfolio-shadow); }
.rp-workflow svg { width: 20px; }
.rp-project-note { font-size: 11px; color: var(--muted-foreground); margin-top: 30px !important; display: flex; align-items: center; gap: 7px; }
.rp-about { background: var(--portfolio-soft); border-top: 1px solid var(--portfolio-line); border-bottom: 1px solid var(--portfolio-line); }
.rp-about-grid { display: grid; grid-template-columns: 1.1fr 1fr; gap: 100px; }
.rp-about h2 { max-width: 400px; margin-bottom: 22px; }
.rp-about-copy { color: var(--muted-foreground); font-size: 13px; line-height: 1.9; }
.rp-about-copy p + p { margin-top: 13px; }
.rp-education { margin-top: 24px; display: flex; gap: 10px; align-items: flex-start; font-size: 12px; }
.rp-education svg { color: var(--primary); width: 20px; }
.rp-education small { display: block; color: var(--muted-foreground); margin-top: 3px; }
.rp-skills { padding-top: 8px; }
.rp-skill { display: flex; gap: 15px; padding: 20px 0; border-bottom: 1px solid var(--portfolio-line); }
.rp-skill:first-child { padding-top: 0; }
.rp-skill-icon { height: 39px; width: 39px; display: grid; place-items: center; border: 1px solid var(--portfolio-line); border-radius: 7px; color: var(--primary); flex-shrink: 0; background: var(--background); }
.rp-skill h3 { font-size: 15px; font-weight: 600; }
.rp-skill p { color: var(--muted-foreground); font-size: 11px; margin-top: 4px; }
.rp-certifications { display: flex; flex-wrap: wrap; gap: 10px 18px; color: var(--muted-foreground); margin-top: 23px; font-size: 10px; }
.rp-contact { text-align: center; padding: 75px 0 70px; }
.rp-contact .rp-eyebrow { justify-content: center; }
.rp-contact h2 { font-size: 40px; margin-top: 15px; }
.rp-contact p { color: var(--muted-foreground); font-size: 13px; margin-top: 17px; }
.rp-contact .rp-actions { justify-content: center; }
.rp-contact-address { display: inline-flex; align-items: center; gap: 7px; margin-top: 19px; font-size: 12px; color: var(--muted-foreground) !important; }
.rp-footer { border-top: 1px solid var(--portfolio-line); }
.rp-footer-inner { padding-top: 22px; padding-bottom: 22px; display: flex; align-items: center; justify-content: space-between; font-size: 10px; color: var(--muted-foreground); }
.rp-footer-links { display: flex; gap: 23px; }
.rp-menu-toggle { display: none; }
.rp-case-study { max-height: 85dvh; overflow-y: auto; }
.rp-case-study h2 { font-size: 28px; margin-top: 8px; }
.rp-case-study h3 { font-size: 13px; margin-top: 23px; margin-bottom: 7px; color: var(--primary); }
.rp-case-study p { color: var(--muted-foreground); font-size: 13px; }
.rp-case-study-image { width: 100%; height: 190px; object-fit: cover; border-radius: 5px; margin-top: 14px; }
.rp-empty { padding: 32px 0; color: var(--muted-foreground); }
@media (min-width: 1500px) { .rp-hero-image { object-position: center 62%; } }
@media (max-width: 1000px) { .rp-wrap { padding-left: 28px; padding-right: 28px; } .rp-hero-copy { max-width: 530px; } .rp-hero h1 { font-size: 52px; } .rp-position { font-size: 26px; } .rp-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .rp-about-grid { gap: 50px; } .rp-strip-label { display: none; } }
@media (max-width: 640px) {
  html { scroll-padding-top: 80px; } .rp-wrap { padding-left: 22px; padding-right: 22px; }
  .rp-header { height: 72px; } .rp-logo { font-size: 16px; } .rp-header-action { display: none; } .rp-menu-toggle { display: inline-flex; }
  .rp-nav-links { display: none; position: absolute; top: 72px; left: 0; right: 0; background: var(--background); padding: 22px; border-bottom: 1px solid var(--portfolio-line); }
  .rp-nav-links.is-open { display: flex; flex-direction: column; align-items: flex-start; gap: 17px; }
  .rp-hero { min-height: 590px; align-items: flex-start; }
  .rp-hero-image { object-position: 68% bottom; opacity: .35; }
  .rp-hero-copy { padding-top: 47px; padding-bottom: 47px; max-width: 100%; }
  .rp-hero h1 { font-size: 43px; } .rp-position { font-size: 27px; max-width: 330px; } .rp-intro { max-width: 360px; } .rp-actions { gap: 9px; } .rp-actions a { padding-left: 15px; padding-right: 15px; }
  .rp-strip-inner { flex-wrap: wrap; justify-content: center; gap: 15px 25px; padding-top: 19px; padding-bottom: 19px; } .rp-tool { font-size: 12px; }
  .rp-section { padding: 50px 0; } .rp-section h2 { font-size: 31px; } .rp-section-count { display: none; } .rp-filters { gap: 5px; } .rp-filters button { font-size: 10px; padding: 7px 10px; }
  .rp-grid { grid-template-columns: minmax(0,1fr); gap: 29px; } .rp-project-image { height: 235px; } .rp-project-summary { min-height: 0; } .rp-about-grid { grid-template-columns: 1fr; gap: 30px; }
  .rp-contact h2 { font-size: 32px; } .rp-contact { padding: 56px 0; } .rp-footer-inner { gap: 18px; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .rp-portfolio * { transition: none !important; animation: none !important; } }

/* WordPress-friendly links and native case-study accordions. */
.rp-portfolio .rp-actions a,.rp-portfolio .rp-header-action { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:42px; border-radius:5px; padding:10px 22px; background:var(--background); border:1px solid var(--portfolio-line); font-size:13px; font-weight:600; line-height:1.3; }
.rp-portfolio .rp-actions a.rp-cta,.rp-portfolio .rp-header-action { background:var(--primary); color:var(--primary-foreground); border-color:var(--primary); }
.rp-portfolio svg { width:16px; height:16px; flex-shrink:0; }
.rp-details { margin-top:14px; border-top:1px solid var(--portfolio-line); padding-top:12px; }
.rp-details summary { cursor:pointer; font-size:12px; font-weight:650; color:var(--primary); }
.rp-details h4 { margin:17px 0 5px; font-size:12px; color:var(--primary); }
.rp-details p { font-size:12px; line-height:1.8; color:var(--muted-foreground); }
.rp-portfolio a:hover { text-decoration:none; }
.rp-portfolio a:focus-visible,.rp-details summary:focus-visible { outline:2px solid var(--primary); outline-offset:4px; }
@media(max-width:640px) { .rp-portfolio .rp-header { height:auto; position:relative; } .rp-portfolio .rp-nav { padding-top:16px; padding-bottom:16px; flex-wrap:wrap; gap:14px; } .rp-portfolio .rp-nav-links { display:flex; position:static; padding:0; border:0; gap:24px; font-size:12px; width:100%; justify-content:center; } .rp-portfolio .rp-header-action { display:none; } }
