/*
Theme Name: AHS Portfolio Elementor
Theme URI: https://ahsafari.com/
Author: OpenAI
Description: Elementor-first portfolio theme with custom portfolio widgets and project post type.
Version: 2.0.1
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: ahs-portfolio-elementor
*/

:root{
  --ahs-bg:#000;
  --ahs-surface:#202020;
  --ahs-card:#2a2a2a;
  --ahs-border:#454545;
  --ahs-text:#f2f2f2;
  --ahs-muted:#8c8c8c;
  --ahs-accent:#18a56f;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--ahs-bg);
  color:var(--ahs-text);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}
.ahs-fallback-shell{min-height:100vh;display:grid;grid-template-columns:minmax(320px,36%) minmax(0,1fr)}
.ahs-fallback-side{padding:48px 42px;position:sticky;top:0;align-self:start;min-height:100vh;border-right:1px solid #161616}
.ahs-fallback-main{padding:54px;min-width:0}
.ahs-fallback-name{font-size:clamp(38px,4vw,62px);line-height:.9;font-weight:900;letter-spacing:-.05em;text-transform:uppercase;margin:18px 0 12px}
.ahs-fallback-role{letter-spacing:.16em;text-transform:uppercase;font-size:14px}
.ahs-fallback-avatar{width:92px;height:92px;border-radius:50%;object-fit:cover;border:2px solid #555;background:#ddd}
.ahs-fallback-nav{display:grid;gap:12px;margin-top:64px}
.ahs-pill{display:inline-flex;width:max-content;min-width:132px;min-height:48px;padding:0 22px;align-items:center;justify-content:center;border-radius:999px;background:var(--ahs-surface);color:var(--ahs-muted);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ahs-pill:hover{color:var(--ahs-text)}
.ahs-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:26px}
.ahs-filter{border:0;border-radius:999px;min-height:44px;padding:0 22px;background:var(--ahs-surface);color:var(--ahs-text);letter-spacing:.12em;text-transform:uppercase;font-weight:700;cursor:pointer}
.ahs-filter[aria-pressed="true"]{outline:1px solid #444;background:#2d2d2d}
.ahs-project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.ahs-project-card{position:relative;overflow:hidden;aspect-ratio:4/5.3;border-radius:8px;background:var(--ahs-card);border:1px solid var(--ahs-border)}
.ahs-project-card img{width:100%;height:100%;object-fit:cover;display:block}
.ahs-project-overlay{position:absolute;inset:auto 0 0;padding:28px 14px 12px;background:linear-gradient(transparent,rgba(0,0,0,.86));opacity:0;transition:.2s}
.ahs-project-card:hover .ahs-project-overlay{opacity:1}
.ahs-project-overlay strong{font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.ahs-project-card[hidden]{display:none}
.ahs-project-view{max-width:980px}
.ahs-back{display:inline-flex;gap:10px;align-items:center;color:var(--ahs-muted);margin-bottom:22px}
.ahs-back span{width:30px;height:30px;border-radius:50%;background:#242424;display:grid;place-items:center;color:#fff}
.ahs-slider-wrap{position:relative;margin-bottom:28px}
.ahs-slider{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,64%);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 10%}
.ahs-slider::-webkit-scrollbar{display:none}
.ahs-slide{scroll-snap-align:center;aspect-ratio:4/5.3;border-radius:14px;background:#1d1d1d;border:1px solid #353535;overflow:hidden}
.ahs-slide img{width:100%;height:100%;object-fit:cover;display:block}
.ahs-slider-btn{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:#454545;color:#fff;cursor:pointer;z-index:2}
.ahs-prev{left:0}.ahs-next{right:0}
.ahs-dots{display:flex;justify-content:center;gap:8px;margin-top:14px}
.ahs-dot{width:7px;height:7px;border-radius:50%;background:#292929}.ahs-dot.is-active{background:var(--ahs-accent)}
.ahs-project-title{font-size:16px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 5px}
.ahs-project-date,.ahs-project-description,.ahs-project-cat{color:var(--ahs-muted)}
.ahs-project-description{line-height:1.6;font-size:13px}
.ahs-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.ahs-tool{border:1px solid #555;border-radius:8px;padding:5px 8px;font-size:11px}
.ahs-empty{border:1px dashed var(--ahs-border);border-radius:14px;padding:28px;color:var(--ahs-muted);grid-column:1/-1;text-align:center}
.ahs-elementor-missing{max-width:760px;margin:60px auto;padding:26px;border:1px solid #333;border-radius:16px;color:var(--ahs-muted)}
@media(max-width:980px){.ahs-fallback-shell{display:block}.ahs-fallback-side{position:relative;min-height:0;border-right:0;border-bottom:1px solid #161616}.ahs-project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.ahs-fallback-side,.ahs-fallback-main{padding:24px 18px}.ahs-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ahs-slider{grid-auto-columns:82%;padding:0 8%}}
