@@ -334,3 +334,145 @@ footer{text-align:center;padding:4rem 2rem;border-top:1px solid var(--border);
334334 .famous-grid {grid-template-columns : 1fr }
335335 .hero-cta-row {flex-direction : column;align-items : center}
336336}
337+
338+ /* ═══════════════════════════════════════════
339+ ICON MODAL + EXPANDED FAMOUS CARDS
340+ ═══════════════════════════════════════════ */
341+
342+ /* Expand hint badge */
343+ .card-expand-hint {
344+ position : absolute;top : 0.6rem ;right : 0.6rem ;
345+ font-family : var (--font-mono );font-size : 0.6rem ;letter-spacing : 0.06em ;
346+ color : var (--blue );opacity : 0 ;transition : opacity 0.2s ;
347+ background : rgba (0 , 200 , 255 , 0.08 );border : 1px solid rgba (0 , 200 , 255 , 0.2 );
348+ padding : 0.2rem 0.45rem ;border-radius : 3px ;pointer-events : none;
349+ }
350+ .famous-card : hover .card-expand-hint { opacity : 1 ; }
351+ .famous-card { position : relative; cursor : pointer; transition : all 0.3s ; }
352+ .famous-card : hover {
353+ border-color : rgba (0 , 200 , 255 , 0.4 );
354+ transform : translateY (-6px ) scale (1.01 );
355+ box-shadow : 0 28px 60px rgba (0 , 0 , 0 , 0.5 ), 0 0 50px rgba (0 , 200 , 255 , 0.08 );
356+ }
357+
358+ /* 8-column grid (2×4 or auto-fit) */
359+ .famous-grid {
360+ display : grid;
361+ grid-template-columns : repeat (auto-fit, minmax (280px , 1fr ));
362+ gap : 1.25rem ;
363+ }
364+
365+ /* ── ICON MODAL ─────────────────────────── */
366+ .icon-modal-overlay {
367+ position : fixed;inset : 0 ;z-index : 2500 ;
368+ background : rgba (3 , 3 , 7 , 0.92 );
369+ backdrop-filter : blur (20px );
370+ display : flex;align-items : center;justify-content : center;
371+ opacity : 0 ;pointer-events : none;transition : opacity 0.3s ;
372+ }
373+ .icon-modal-overlay .active { opacity : 1 ; pointer-events : all; }
374+
375+ .icon-modal {
376+ background : var (--surface );
377+ border : 1px solid rgba (0 , 200 , 255 , 0.2 );
378+ border-radius : 14px ;
379+ width : min (900px , 96vw );
380+ max-height : 92vh ;
381+ overflow-y : auto;
382+ padding : 2rem ;
383+ box-shadow : 0 40px 100px rgba (0 , 0 , 0 , 0.6 ), 0 0 60px rgba (0 , 200 , 255 , 0.08 );
384+ transform : scale (0.95 );
385+ transition : transform 0.3s ;
386+ }
387+ .icon-modal-overlay .active .icon-modal { transform : scale (1 ); }
388+
389+ .icon-modal-header {
390+ display : flex;align-items : center;justify-content : space-between;
391+ margin-bottom : 1rem ;
392+ }
393+ .icon-modal-header h2 {
394+ font-family : var (--font-display );
395+ font-size : clamp (1.3rem , 3vw , 2rem );
396+ color : var (--blue );letter-spacing : 0.03em ;
397+ }
398+ .icon-modal-header button {
399+ background : none;border : 1px solid rgba (255 , 255 , 255 , 0.15 );
400+ color : var (--text2 );width : 32px ;height : 32px ;border-radius : 6px ;
401+ cursor : pointer;font-size : 1rem ;transition : all 0.2s ;
402+ display : flex;align-items : center;justify-content : center;flex-shrink : 0 ;
403+ }
404+ .icon-modal-header button : hover { background : rgba (255 , 59 , 48 , 0.15 );border-color : var (--red );color : var (--red ); }
405+
406+ .icon-modal-formula {
407+ font-size : clamp (0.9rem , 2vw , 1.25rem );
408+ color : var (--gold );
409+ text-align : center;
410+ margin-bottom : 1.25rem ;
411+ padding : 0.75rem ;
412+ background : rgba (255 , 215 , 0 , 0.04 );
413+ border-radius : 6px ;
414+ border : 1px solid rgba (255 , 215 , 0 , 0.1 );
415+ filter : drop-shadow (0 0 15px rgba (255 , 215 , 0 , 0.2 ));
416+ }
417+
418+ # iconModalCanvas {
419+ width : 100% ;
420+ height : 420px ;
421+ display : block;
422+ background : # 030307 ;
423+ border-radius : 8px ;
424+ border : 1px solid var (--border );
425+ margin-bottom : 1.25rem ;
426+ }
427+
428+ .icon-modal-desc {
429+ font-size : 0.95rem ;color : var (--text2 );line-height : 1.7 ;
430+ }
431+ .icon-modal-desc p { margin-bottom : 0.6rem ; }
432+ .icon-modal-desc strong { color : var (--blue ); }
433+
434+ /* ── FOOTER CREDIT ──────────────────────── */
435+ .footer-credit {
436+ margin-top : 1.25rem ;
437+ font-family : var (--font-mono );
438+ font-size : 0.78rem ;
439+ color : var (--text3 );
440+ display : flex;align-items : center;justify-content : center;
441+ flex-wrap : wrap;gap : 0.35rem ;
442+ }
443+ .footer-heart {
444+ color : # ff3b30 ;
445+ animation : heartbeat 1.4s ease-in-out infinite;
446+ display : inline-block;font-size : 1rem ;
447+ }
448+ @keyframes heartbeat {
449+ 0% , 100%{transform : scale (1 );}
450+ 14% {transform : scale (1.25 );}
451+ 28% {transform : scale (1 );}
452+ 42% {transform : scale (1.15 );}
453+ 70% {transform : scale (1 );}
454+ }
455+ .footer-math-love {
456+ color : var (--purple );font-size : 0.72rem ;
457+ }
458+ .footer-author {
459+ display : inline-flex;align-items : center;gap : 0.35rem ;
460+ color : var (--blue );text-decoration : none;
461+ border : 1px solid rgba (0 , 200 , 255 , 0.25 );
462+ padding : 0.2rem 0.55rem ;border-radius : 20px ;
463+ background : rgba (0 , 200 , 255 , 0.05 );
464+ transition : all 0.25s ;
465+ }
466+ .footer-author : hover {
467+ background : rgba (0 , 200 , 255 , 0.12 );
468+ border-color : rgba (0 , 200 , 255 , 0.6 );
469+ box-shadow : 0 0 18px rgba (0 , 200 , 255 , 0.25 );
470+ color : # fff ;
471+ }
472+ .footer-author-name { font-weight : 700 ;letter-spacing : 0.06em ; }
473+ .footer-linkedin { opacity : 0.8 ; }
474+
475+ @media (max-width : 600px ){
476+ # iconModalCanvas { height : 260px ; }
477+ .icon-modal { padding : 1.25rem ; }
478+ }
0 commit comments