/* Shared home/direction portfolio. Existing clock, contact controls and theme remain canonical. */
#portfolio {
  --pf-text:#eef7fb; --pf-muted:#b7c4cd; --pf-line:#30404c; --pf-card:#0d1720;
  min-width:0; width:100%; max-width:1200px; margin-inline:auto; padding-block:clamp(32px,5vw,64px) 28px;
  text-align:center; color:var(--pf-text); scroll-margin-top:140px;
}
html[data-theme="light"] #portfolio {
  --pf-text:#17222d; --pf-muted:#53616d; --pf-line:#d6dfe4; --pf-card:#fff;
}
#portfolio .pf-heading {text-align:center;margin:0 0 32px}
#portfolio[hidden],#routePortfolioButton[hidden],#homePortfolioMount[hidden],#routePortfolioMount[hidden]{display:none}
#homePortfolioMount {position:relative;margin-block:clamp(28px,4vw,52px) clamp(36px,5vw,64px)}
#portfolio .pf-note{max-width:840px;margin:24px auto 0;font-size:14px}
#portfolio h2:focus{outline:none}
#portfolio h2 {color:var(--pf-text);font-size:clamp(30px,4vw,48px);line-height:1.12;letter-spacing:-.035em;margin:0}
#portfolio .pf-group + .pf-group {margin-top:42px}
#portfolio .pf-group > .pf-eyebrow {margin:0 0 8px;color:var(--pf-muted);font-size:12px;font-weight:700;letter-spacing:.16em}
#portfolio h3 {font:700 clamp(18px,2.2vw,24px)/1.25 'DM Sans',Arial,sans-serif;color:var(--pf-text);margin:0 0 18px;letter-spacing:-.025em}
#portfolio .pf-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
#portfolio .pf-grid-apps {grid-template-columns:repeat(2,minmax(0,440px));justify-content:center}
#portfolio .pf-grid-websites,#portfolio .pf-grid-ai {display:flex;flex-wrap:wrap;justify-content:center}
#portfolio .pf-grid-websites .pf-card,#portfolio .pf-grid-ai .pf-card {flex:0 1 calc((100% - 40px)/3)}
#portfolio .pf-grid-crm {grid-template-columns:minmax(0,440px);justify-content:center}
#portfolio .pf-card {min-width:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--pf-line);border-radius:22px;background:var(--pf-card)}
#portfolio .pf-card-link {text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}
#portfolio .pf-card-link:hover {border-color:var(--pf-muted);box-shadow:0 8px 28px #0002}
#portfolio .pf-card-link:focus-visible {outline:3px solid #6aa5d0;outline-offset:4px}
#portfolio .pf-visual {display:flex;align-items:center;justify-content:center;height:174px;background:#fff;padding:22px;border-bottom:1px solid var(--pf-line)}
#portfolio .pf-grid-apps .pf-visual {height:208px}
#portfolio .pf-visual img {width:100%;height:100%;object-fit:contain;display:block}
#portfolio .pf-visual-detailing {background:#111}
#portfolio .pf-visual-bedranlab {background:#073b40}
#portfolio .pf-visual-detailing img {object-fit:contain}
#portfolio .pf-content {padding:22px;display:flex;flex-direction:column;flex:1;gap:12px;min-width:0}
#portfolio h4 {font:700 clamp(19px,2vw,23px)/1.2 'DM Sans',Arial,sans-serif;color:var(--pf-text);margin:0;letter-spacing:-.025em}
#portfolio p {font-size:15px;line-height:1.6;color:var(--pf-muted);margin:0;max-width:none}
#portfolio .pf-links {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;padding-top:8px;margin-top:auto}
#portfolio .pf-link {display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:10px 16px;border:1px solid var(--pf-line);border-radius:999px;color:var(--pf-text);font-size:14px;font-weight:700;line-height:1.3;white-space:normal;text-decoration:none;transition:background-color .15s,border-color .15s}
#portfolio .pf-link:hover {background:color-mix(in srgb,var(--pf-text) 8%,transparent);border-color:var(--pf-muted)}
#portfolio .pf-link:focus-visible {outline:3px solid #6aa5d0;outline-offset:4px}
#portfolio .pf-store {background:#111;color:#fff;border-color:#444}
#portfolio .pf-store:hover {background:#282828;border-color:#666}
#portfolio .pf-link svg {width:20px;height:20px;flex:none;fill:currentColor}
@media(max-width:900px){
  #portfolio .pf-grid:not(.pf-grid-crm){grid-template-columns:repeat(2,minmax(0,1fr))}
  #portfolio .pf-grid-websites .pf-card,#portfolio .pf-grid-ai .pf-card {flex-basis:calc((100% - 20px)/2)}
}
@media(max-width:560px){
  #portfolio .pf-grid {grid-template-columns:minmax(0,1fr);gap:18px}
  #portfolio .pf-grid:not(.pf-grid-crm) {grid-template-columns:minmax(0,1fr)}
  #portfolio .pf-grid-websites .pf-card,#portfolio .pf-grid-ai .pf-card {flex-basis:100%}
  #portfolio .pf-grid-apps .pf-visual,#portfolio .pf-visual {height:176px}
  #portfolio .pf-content {padding:20px;gap:12px}
  #portfolio .pf-group + .pf-group {margin-top:32px}
  #portfolio .pf-links {gap:8px}
  #portfolio .pf-link {padding:10px 13px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){#portfolio .pf-link,#portfolio .pf-card-link{transition:none}}
