/* Mohamed Radi Portfolio — Production Upgrade v2 */
:root{--v2-cyan:#52edff;--v2-blue:#138cff;--v2-green:#57e3aa;--v2-ink:#040913;--v2-panel:rgba(5,17,32,.88);--v2-line:rgba(82,237,255,.22)}

/* cinematic session intro */
.mr-intro{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:#02060d;opacity:1;visibility:visible;transition:opacity .35s ease,visibility .35s ease}
.mr-intro.is-done{opacity:0;visibility:hidden;pointer-events:none}
.mr-intro__core{text-align:center;min-width:min(88vw,520px);padding:36px;border:1px solid var(--v2-line);background:radial-gradient(circle at 50% 20%,rgba(19,140,255,.16),transparent 48%),rgba(3,10,20,.86);box-shadow:0 0 70px rgba(19,140,255,.16),inset 0 0 40px rgba(82,237,255,.05);clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px)}
.mr-intro__mark{width:84px;height:84px;display:block;margin:0 auto 22px;filter:drop-shadow(0 0 20px rgba(82,237,255,.28))}
.mr-intro__line{display:block;color:var(--v2-cyan);font:700 .78rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.2em;text-transform:uppercase}
.mr-intro__title{display:block;margin:8px 0 18px;color:#f4fbff;font-size:clamp(1.3rem,4vw,2.1rem);letter-spacing:.05em}
.mr-intro__bar{height:2px;background:rgba(255,255,255,.08);overflow:hidden}
.mr-intro__bar::after{content:"";display:block;width:45%;height:100%;background:linear-gradient(90deg,transparent,var(--v2-cyan),transparent);animation:v2scan .7s ease-in-out infinite}
@keyframes v2scan{from{transform:translateX(-120%)}to{transform:translateX(340%)}}

/* true mobile visual sources */
.visual-system-frame picture,.visual-service-card picture{display:block;overflow:hidden}
.visual-system-frame img,.visual-service-card img{display:block;width:100%;height:auto}
@media(max-width:720px){
  .visual-system-frame picture,.visual-service-card picture{aspect-ratio:4/5;background:#020812}
  .visual-system-frame img,.visual-service-card img{width:100%;height:100%;object-fit:cover}
  .visual-system-frame figcaption{position:relative;padding:16px 18px}
}

/* corrected project-universe badge over the legacy visual stat card */
.about-stat-correction{position:absolute;left:25.15%;top:58.1%;width:10.9%;height:18.4%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:linear-gradient(180deg,rgba(7,23,40,.98),rgba(3,12,24,.99));border:1px solid rgba(82,237,255,.48);box-shadow:inset 0 0 22px rgba(19,140,255,.16),0 0 16px rgba(82,237,255,.08);color:#fff;z-index:2;text-align:center;pointer-events:none}
.about-stat-correction strong{font-size:clamp(14px,2.1vw,35px);line-height:1;color:#fff}
.about-stat-correction span{font-size:clamp(6px,.72vw,12px);line-height:1.25;color:var(--v2-cyan);font-weight:800;letter-spacing:.06em}
@media(max-width:720px){.about-stat-correction{display:none}}

/* premium trust badges */
.trust-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:24px}
.trust-chip{padding:14px 12px;border:1px solid var(--v2-line);background:linear-gradient(180deg,rgba(10,30,52,.72),rgba(4,13,25,.82));text-align:center;color:#dffaff;font-size:.76rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;box-shadow:inset 0 0 24px rgba(82,237,255,.035)}
.trust-chip::before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:var(--v2-green);box-shadow:0 0 12px var(--v2-green)}
@media(max-width:920px){.trust-strip{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.trust-strip{grid-template-columns:repeat(2,1fr)}}

/* project proof matrix */
.proof-matrix{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:28px}
.proof-matrix__item{padding:20px;border:1px solid var(--v2-line);background:linear-gradient(160deg,rgba(10,28,48,.85),rgba(3,12,24,.88));min-height:155px;position:relative;overflow:hidden}
.proof-matrix__item::after{content:"";position:absolute;inset:auto -30px -45px auto;width:110px;height:110px;border:1px solid rgba(82,237,255,.12);border-radius:50%}
.proof-matrix__item small{display:block;color:var(--v2-cyan);font:800 .7rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em;margin-bottom:10px}
.proof-matrix__item h3{margin:0 0 9px;font-size:1.05rem;color:#fff}
.proof-matrix__item p{margin:0;color:#aec2d2;font-size:.92rem;line-height:1.65}
.proof-evidence{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.proof-evidence span{border:1px solid rgba(82,237,255,.22);padding:8px 10px;color:#cdebf4;background:rgba(4,16,29,.72);font-size:.75rem}
@media(max-width:980px){.proof-matrix{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.proof-matrix{grid-template-columns:1fr}}

/* verified project quick viewer */
.project-peek{appearance:none;border:1px solid rgba(82,237,255,.25);background:rgba(7,26,43,.72);color:#eaffff;padding:10px 13px;border-radius:10px;cursor:pointer;font:inherit}
.project-peek:hover,.project-peek:focus-visible{border-color:var(--v2-cyan);box-shadow:0 0 18px rgba(82,237,255,.12)}
.project-viewer{position:fixed;inset:0;z-index:9900;pointer-events:none;visibility:hidden}
.project-viewer.is-open{pointer-events:auto;visibility:visible}
.project-viewer__backdrop{position:absolute;inset:0;background:rgba(0,4,10,.74);opacity:0;transition:opacity .25s ease}
.project-viewer.is-open .project-viewer__backdrop{opacity:1}
.project-viewer__panel{position:absolute;top:0;right:0;width:min(94vw,560px);height:100%;overflow:auto;padding:28px;background:linear-gradient(180deg,#071525,#030a12);border-left:1px solid rgba(82,237,255,.3);box-shadow:-28px 0 90px rgba(0,0,0,.55);transform:translateX(103%);transition:transform .3s ease}
.project-viewer.is-open .project-viewer__panel{transform:translateX(0)}
.project-viewer__close{position:sticky;top:0;float:right;width:42px;height:42px;border:1px solid var(--v2-line);background:#06111e;color:#fff;border-radius:50%;cursor:pointer;z-index:3}
.project-viewer__image{width:100%;aspect-ratio:16/9;object-fit:cover;border:1px solid var(--v2-line);margin:18px 0}
.project-viewer__status{display:inline-flex;align-items:center;gap:8px;color:var(--v2-cyan);font:800 .74rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em}
.project-viewer__status::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--v2-green);box-shadow:0 0 12px var(--v2-green)}
.project-viewer h2{margin:12px 0 8px;font-size:clamp(1.8rem,4vw,2.6rem)}
.project-viewer__meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}
.project-viewer__meta div{padding:12px;border:1px solid var(--v2-line);background:rgba(8,24,42,.66)}
.project-viewer__meta small{display:block;color:#6fa7bd;margin-bottom:5px}.project-viewer__meta b{color:#effcff;font-size:.9rem}
.project-viewer__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
@media(max-width:620px){.project-viewer__panel{top:auto;bottom:0;width:100%;height:min(88vh,820px);border-left:0;border-top:1px solid rgba(82,237,255,.3);transform:translateY(103%)}.project-viewer.is-open .project-viewer__panel{transform:translateY(0)}.project-viewer__meta{grid-template-columns:1fr}}

/* service configurator */
.service-configurator{position:relative;overflow:hidden}
.service-configurator::before{content:"";position:absolute;inset:-40% 50% auto -20%;height:400px;background:radial-gradient(circle,rgba(19,140,255,.15),transparent 65%);pointer-events:none}
.configurator-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;align-items:start}
.configurator-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:24px;border:1px solid var(--v2-line);background:rgba(4,14,27,.82);box-shadow:inset 0 0 40px rgba(82,237,255,.025)}
.configurator-form label{display:grid;gap:7px;color:#b9d2df;font-size:.82rem;font-weight:700}
.configurator-form label.full{grid-column:1/-1}
.configurator-form input,.configurator-form select,.configurator-form textarea{width:100%;border:1px solid rgba(82,237,255,.2);background:#050f1b;color:#fff;padding:13px 14px;border-radius:8px;font:inherit}
.configurator-form textarea{min-height:120px;resize:vertical}
.configurator-form input:focus,.configurator-form select:focus,.configurator-form textarea:focus{outline:2px solid rgba(82,237,255,.28);border-color:var(--v2-cyan)}
.configurator-summary{padding:22px;border:1px solid var(--v2-line);background:linear-gradient(180deg,rgba(8,27,47,.72),rgba(4,13,24,.8))}
.configurator-summary h3{margin-top:0}.configurator-summary ul{padding-left:18px;color:#a9c2d1;line-height:1.8}
.configurator-preview{margin-top:16px;padding:14px;background:#020812;border:1px dashed rgba(82,237,255,.23);color:#cfe9f2;white-space:pre-wrap;font:500 .78rem/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}
@media(max-width:860px){.configurator-grid{grid-template-columns:1fr}.configurator-form{grid-template-columns:1fr}.configurator-form label.full{grid-column:auto}}

/* trust and verification center */
.verification-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.verification-card{padding:20px;border:1px solid var(--v2-line);background:linear-gradient(155deg,rgba(9,29,50,.82),rgba(3,11,21,.9));position:relative;overflow:hidden}
.verification-card::before{content:"";position:absolute;width:120px;height:120px;right:-50px;top:-50px;border-radius:50%;border:1px solid rgba(82,237,255,.13)}
.verification-card small{display:inline-flex;align-items:center;gap:7px;color:var(--v2-green);font:800 .68rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.08em}
.verification-card h3{margin:12px 0 8px;color:#fff}.verification-card p{color:#a8c0cf;line-height:1.65}
.verification-card dl{display:grid;grid-template-columns:auto 1fr;gap:8px 12px;margin:16px 0 0;font-size:.82rem}.verification-card dt{color:#6d9eb3}.verification-card dd{margin:0;color:#dceff5}
@media(max-width:920px){.verification-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.verification-grid{grid-template-columns:1fr}}

/* premium contact QR cards */
.qr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}.qr-card{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid var(--v2-line);background:rgba(5,18,31,.78)}.qr-card img{width:96px;height:96px;border-radius:8px}.qr-card h3{margin:0 0 5px}.qr-card p{margin:0;color:#9db9c8;font-size:.85rem}
@media(max-width:560px){.qr-grid{grid-template-columns:1fr}}

/* additional motion polish */
[data-v2-float]{transition:transform .25s ease,box-shadow .25s ease}
@media(hover:hover) and (pointer:fine){[data-v2-float]:hover{transform:translateY(-5px);box-shadow:0 18px 50px rgba(0,0,0,.24),0 0 22px rgba(82,237,255,.06)}}
body.motion-off .mr-intro__bar::after{animation:none}
@media(prefers-reduced-motion:reduce){.mr-intro{display:none!important}.project-viewer__panel,.project-viewer__backdrop,[data-v2-float]{transition:none!important}}
.command-recent{display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px 16px;border-top:1px solid rgba(82,237,255,.12)}
.command-recent::before{content:"RECENT";width:100%;color:#6fa7bd;font:800 .65rem/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.12em}
.command-recent a{padding:7px 10px;border:1px solid rgba(82,237,255,.14);border-radius:999px;color:#bdd9e5;font-size:.72rem;text-decoration:none}
.command-recent a:hover{border-color:var(--v2-cyan);color:#fff}
.configurator-form .full{grid-column:1/-1}

/* v4 real-project and responsive polish */
.visual-proof-label,.case-visual-disclosure{position:absolute;right:12px;bottom:12px;z-index:3;padding:7px 10px;border:1px solid rgba(100,211,255,.42);border-radius:999px;background:rgba(2,8,18,.82);color:#ccefff;font:700 10px/1.1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;font-style:normal;backdrop-filter:blur(8px)}
.verified-card__visual,.case-cover{position:relative;overflow:hidden}.verified-card__visual picture,.mission-slide picture{display:block;width:100%;height:100%}.verified-card__visual picture img,.mission-slide picture img{width:100%;height:100%;object-fit:cover;display:block}
.qr-card--link{display:grid;text-decoration:none;color:inherit;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.qr-card--link:hover{transform:translateY(-4px);border-color:rgba(86,207,255,.55);box-shadow:0 16px 50px rgba(0,135,255,.12)}
.qr-card--link:focus-visible{outline:2px solid #55cfff;outline-offset:4px}.qr-card--link img{image-rendering:auto;background:#fff;border-radius:16px}
.verified-grid{align-items:stretch}.verified-card{height:100%}.verified-card__body{display:flex;flex-direction:column}.verified-card__actions{margin-top:auto}
@media (min-width:1180px){.verified-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mission-reel{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){.section{padding-block:64px}.verified-grid{grid-template-columns:1fr}.verified-card__visual{min-height:240px}.verified-card__body h3{font-size:clamp(1.2rem,5vw,1.6rem)}.mission-reel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.qr-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.qr-card--link{padding:14px}.qr-card--link img{width:100%;height:auto;max-width:210px;margin-inline:auto}}
@media (max-width:600px){.page-hero,.case-hero{padding-top:110px}.section{padding-block:48px}.verified-card__visual{min-height:210px}.verified-card__actions{display:grid;grid-template-columns:1fr;gap:8px}.verified-card__actions>*{justify-content:center;text-align:center}.mission-reel{grid-template-columns:1fr}.qr-grid{grid-template-columns:1fr}.visual-proof-label,.case-visual-disclosure{font-size:9px;padding:6px 8px}.case-hero__grid{gap:22px}.case-cover{border-radius:18px}.site-header{backdrop-filter:blur(18px)} }
@media (hover:none){[data-v2-float]{transform:none!important}.verified-card:hover,.mission-slide:hover,.qr-card--link:hover{transform:none}}
@supports (content-visibility:auto){.section:not(.page-hero):not(.case-hero){content-visibility:auto;contain-intrinsic-size:800px}}


/* v5 cyber social uplink */
.social-uplink-section{position:relative;overflow:hidden;background:
 radial-gradient(circle at 12% 18%,rgba(0,229,255,.10),transparent 28%),
 radial-gradient(circle at 88% 72%,rgba(68,103,255,.11),transparent 30%),
 linear-gradient(180deg,rgba(2,9,18,.92),rgba(3,12,24,.98));border-block:1px solid rgba(86,207,255,.12)}
.social-uplink-section:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:linear-gradient(rgba(86,207,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(86,207,255,.08) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 82%,transparent)}
.social-uplink-grid{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.social-node{position:relative;min-height:210px;padding:22px;border:1px solid rgba(86,207,255,.18);background:linear-gradient(145deg,rgba(7,20,35,.94),rgba(3,10,20,.96));overflow:hidden;isolation:isolate;transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}
.social-node:before{content:"";position:absolute;inset:-1px;z-index:-1;background:linear-gradient(120deg,transparent 0 36%,rgba(92,224,255,.09) 48%,transparent 60%);transform:translateX(-125%);transition:transform .65s ease}
.social-node:after{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#66dcff,transparent);opacity:.55}
.social-node:hover{transform:translateY(-6px);border-color:rgba(99,224,255,.48);box-shadow:0 20px 70px rgba(0,120,255,.14),inset 0 0 30px rgba(0,182,255,.03)}
.social-node:hover:before{transform:translateX(125%)}
.social-node__sig{width:54px;height:54px;display:grid;place-items:center;margin-bottom:22px;border:1px solid rgba(102,220,255,.42);clip-path:polygon(12% 0,100% 0,100% 88%,88% 100%,0 100%,0 12%);background:rgba(0,174,255,.08);color:#8eeaff;font-weight:900;letter-spacing:.08em;box-shadow:inset 0 0 24px rgba(0,187,255,.06),0 0 28px rgba(0,164,255,.07)}
.social-node small{color:#72cde9;letter-spacing:.14em;font-size:.69rem}.social-node h3{margin:.35rem 0 .25rem;font-size:1.28rem}.social-node p{margin:0;color:#a9c1cf;font-size:.88rem;overflow-wrap:anywhere}.social-node>span{display:inline-block;margin-top:18px;color:#7fe6ff;font-size:.75rem;font-weight:800;letter-spacing:.12em}
.social-node--ig{--node-accent:#ff4bc4}.social-node--fb{--node-accent:#5798ff}.social-node--tt{--node-accent:#70f0ff}.social-node--gh{--node-accent:#c6d5df}.social-node--wa{--node-accent:#42f59b}.social-node--mail{--node-accent:#ffc96b}
.social-node:hover .social-node__sig{color:var(--node-accent);border-color:color-mix(in srgb,var(--node-accent) 62%,transparent);box-shadow:0 0 30px color-mix(in srgb,var(--node-accent) 20%,transparent)}
.social-uplink-status{position:relative;display:flex;align-items:center;gap:10px;margin-top:18px;padding:12px 15px;border:1px solid rgba(86,207,255,.16);background:rgba(3,12,23,.72);font-size:.72rem;letter-spacing:.13em;color:#8aaabb}.social-uplink-status i{width:8px;height:8px;border-radius:50%;background:#35f49b;box-shadow:0 0 18px #35f49b;animation:socialPulse 1.8s ease-in-out infinite}.social-uplink-status b{margin-left:auto;color:#74daf8;font-size:.72rem}
.footer-social-mini{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.footer-social-mini a{display:grid;place-items:center;min-width:32px;height:28px;padding:0 8px;border:1px solid rgba(86,207,255,.18);background:rgba(5,16,28,.7);color:#82def6!important;font-size:.65rem!important;font-weight:900;letter-spacing:.08em;border-radius:7px;transition:.2s ease}.footer-social-mini a:hover{border-color:rgba(86,207,255,.48);transform:translateY(-2px);box-shadow:0 8px 26px rgba(0,149,255,.12)}
@keyframes socialPulse{0%,100%{opacity:.55;transform:scale(.9)}50%{opacity:1;transform:scale(1.2)}}
@media(max-width:900px){.social-uplink-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.social-node{min-height:190px}}
@media(max-width:600px){.social-uplink-grid{grid-template-columns:1fr;gap:11px}.social-node{min-height:auto;padding:18px}.social-node__sig{width:46px;height:46px;margin-bottom:15px}.social-uplink-status{align-items:flex-start;flex-wrap:wrap}.social-uplink-status b{width:100%;margin-left:18px}}
@media(prefers-reduced-motion:reduce){.social-uplink-status i{animation:none}.social-node,.social-node:before,.footer-social-mini a{transition:none}}
[dir=rtl] .social-uplink-status b{margin-left:0;margin-right:auto}[dir=rtl] .social-uplink-status{direction:rtl}
