/* Landing experience — composited opacity/transform animations only. */
:root { --ink: #050507; --electric: #8d7dff; --signal: #52d6ff; --terminal-green: #a6e3a1; }
body.is-intro-active { overflow: hidden; }
.portfolio-intro { position: fixed; z-index: 10000; inset: 0; display: grid; place-items: center; overflow: hidden; isolation: isolate; background: #000; color: #f5f4ff; font-family: "Poppins", sans-serif; }
.portfolio-intro::before { content:""; position:absolute; inset:0; z-index:-2; opacity:.55; background: radial-gradient(circle at 50% 40%, #17142b 0, #08070f 35%, #000 75%); }
.intro-noise { position:absolute; inset:-50%; z-index:-1; opacity:.06; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E"); animation:intro-noise .24s steps(2) infinite; }
.intro-terminal { width:min(760px, calc(100vw - 40px)); overflow:hidden; border:1px solid rgba(181, 169, 255, .28); border-radius:14px; background:rgba(9, 10, 15, .9); box-shadow:0 40px 100px rgba(0,0,0,.7), 0 0 80px rgba(104,82,255,.12); font: 500 clamp(.68rem, 1.5vw, .88rem)/1.75 "SFMono-Regular", Consolas, "Liberation Mono", monospace; }
.terminal-topbar,.terminal-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 15px; color:#a5a4b5; font-size:.7rem; letter-spacing:.04em; background:rgba(255,255,255,.035); }
.terminal-topbar { border-bottom:1px solid rgba(255,255,255,.07); }
.terminal-footer { border-top:1px solid rgba(255,255,255,.07); font-size:.62rem; }
.terminal-state { color:var(--terminal-green); font-size:.63rem; }
.terminal-dots { display:flex; gap:6px; }
.terminal-dots i { width:9px; height:9px; border-radius:50%; background:#ff625a; }.terminal-dots i:nth-child(2){background:#ffd05d}.terminal-dots i:nth-child(3){background:#62d96b}
.terminal-body { min-height:270px; padding:25px 28px; }.terminal-line { margin:0; min-height:1.75em; }.prompt{color:#69d9ff}.terminal-command{color:#f9f9fb}.terminal-output{margin-top:8px}.terminal-output p{margin:0; color:#a6e3a1}.terminal-output p:nth-child(2n){color:#c9c4ff}.terminal-output .blue{color:#69d9ff}.terminal-output .white{color:#ececf1}.terminal-cursor,.identity-cursor{display:inline-block;width:.56em;height:1.15em;vertical-align:-.17em;background:#eee;animation:cursor-blink .9s step-end infinite}.terminal-cursor{margin-left:3px;background:#a6e3a1}
.intro-identity { position:absolute; display:none; text-align:center; }.intro-kicker{margin:0 0 15px;color:#9c96c9;font-size:.67rem;letter-spacing:.2em;text-transform:uppercase}.intro-identity h1 { margin:0; font-size:clamp(4.4rem, 17vw, 13rem); line-height:.82; letter-spacing:-.09em; font-weight:700; color:#f6f4ff; }.intro-identity .char { display:inline-block; }.intro-roles{display:flex;justify-content:center;align-items:center;min-height:2em;margin-top:43px;color:#65d9ff;font:500 clamp(.88rem, 2vw, 1.1rem)/1.4 "SFMono-Regular",Consolas,monospace;letter-spacing:.03em}.intro-roles p{margin:0}.identity-cursor{margin-left:7px;background:#65d9ff}
.intro-skip { position:absolute; right:27px; bottom:24px; border:0; background:transparent; color:#aaa7bd; font:500 .68rem/1 "Poppins",sans-serif; letter-spacing:.12em; text-transform:uppercase; cursor:pointer; }.intro-skip span{padding-left:7px;color:#fff;font-size:1rem}.intro-skip:hover{color:#fff}
@keyframes cursor-blink{50%{opacity:0}} @keyframes intro-noise{0%{transform:translate3d(0,0,0)}25%{transform:translate3d(2%, -1%, 0)}50%{transform:translate3d(-1%, 2%, 0)}75%{transform:translate3d(1%, 1%, 0)}}
/* New editorial hero layer: existing content is retained, its hierarchy is refined. */
.hero { min-height:100svh; padding:120px max(6vw, 24px) 70px; background:linear-gradient(120deg,#07070b 0%,#0b0920 55%,#06060a 100%); }.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.9%,rgba(255,255,255,.035) 50%,transparent 50.1%),linear-gradient(0deg,transparent 49.9%,rgba(255,255,255,.025) 50%,transparent 50.1%);background-size:100% 100%,100% 100%;}.hero-container{max-width:1440px;grid-template-columns:1.15fr .85fr;gap:6vw}.hero-left .welcome{padding:0;background:none;border:0;border-radius:0;color:#b9b2ff;font-size:.67rem;letter-spacing:.18em}.hero-left .welcome::before{width:7px;height:7px;box-shadow:0 0 15px #8d7dff;background:#8d7dff}.hero-left h1{font-size:clamp(5.2rem,12vw,11.5rem);line-height:.78;letter-spacing:-.1em;margin:.15em 0 .22em;background:linear-gradient(120deg,#fff 15%,#c8c2ff 60%,#705eff);-webkit-background-clip:text}.hero-left h2{min-height:auto;margin:0 0 25px;color:#62d7ff;font-size:clamp(1.2rem,2vw,1.8rem);letter-spacing:-.04em}.hero-text{max-width:470px;margin-bottom:27px;font-size:1rem;color:#b9b7c6}.hero-features{margin:0 0 28px}.hero-features .feature{padding:0;border:0;background:transparent;color:#8f8c9b;font-size:.7rem}.hero-features .feature i{color:#8779ff}.primary-btn,.secondary-btn{padding:14px 23px;border-radius:0;font-size:.82rem}.primary-btn{background:#8273ff;box-shadow:none}.secondary-btn{border-color:rgba(255,255,255,.25);color:#f2f1f5}.resume-btn{border-radius:0;font-size:.78rem}.hero-right{justify-content:flex-end}.profile-card{max-width:370px;aspect-ratio:4/5;border-radius:0;background:linear-gradient(145deg,rgba(140,123,255,.22),rgba(0,0,0,.08));border-color:rgba(255,255,255,.14)}.profile-card::after{content:"SAGHAR / 01";position:absolute;right:14px;bottom:11px;z-index:5;color:#fff;font:500 .58rem/1 monospace;letter-spacing:.12em}.profile-card img{border-radius:0;opacity:.88;mix-blend-mode:luminosity}.profile-card .glow{border-radius:0}.hero-badges .badge{background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:0;color:#bcb7e8;font-size:.62rem}.social-icons a{width:35px;height:35px;border-radius:0;font-size:.85rem}.scroll-down{left:auto;right:4vw;bottom:40px}.scroll-down span{width:1px;height:52px;border:0;border-radius:0;background:rgba(255,255,255,.3)}.scroll-down span::before{left:-1px;width:3px;height:8px;background:#7e70ff}
@media (max-width:992px){.hero-container{grid-template-columns:1fr}.hero-right{display:none}.hero-left h1{font-size:clamp(5rem,21vw,9rem)}}
@media (max-width:600px){.terminal-body{min-height:235px;padding:20px 17px}.terminal-topbar span:nth-child(2),.terminal-footer span:first-child{display:none}.intro-skip{right:18px;bottom:18px}.hero-features{gap:12px;flex-wrap:wrap}.hero-cta-row{gap:8px}.primary-btn,.secondary-btn{padding:12px 15px}.resume-btn{padding:11px 12px}.hero{padding-top:100px}}
/* Hero-only centered logo layout */
.hero{display:flex!important;align-items:center!important;justify-content:center!important;min-height:100svh!important}.hero-container{max-width:960px!important;width:100%!important;display:flex!important;align-items:center!important;justify-content:center!important;grid-template-columns:1fr!important;gap:0!important}.hero-left{width:min(100%,760px)!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important}.hero-left .welcome,.hero-left h2,.hero-left .hero-text,.hero-left .hero-features,.hero-left .hero-cta-row,.hero-left .hero-meta,.hero-right,.scroll-down{display:none!important}.hero-logo-wrap{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;margin:0!important;opacity:1!important;transform:none!important;animation:none!important}.hero-logo-shell{padding:24px 30px!important;border-radius:24px!important}.hero-logo{width:min(420px,80vw)!important;max-width:520px!important}
@media (prefers-reduced-motion:reduce){.portfolio-intro{display:none!important}body.is-intro-active{overflow:auto}.intro-noise{animation:none}}
