* {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            background: #1a1a1a;
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            font-family: 'Impact', 'Arial Black', sans-serif;
            overflow-x: hidden;
            padding: 20px;
        }

        .container {
            width: 90%;
            max-width: 1200px;
            position: relative;
        }

        .home-page {
            width: 100%;
            max-width: 1200px;
            position: relative;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            min-height: 100vh;
            padding: 40px 20px;
        }

        @font-face {
     font-family: intt; /* set name */
     src: url(assets/fonts/ERODED_PERSONAL_USE.ttf); 
                  }       

         .portfolio-name {
            position: relative;
            margin-bottom: 60px;
            font-family: intt;
            font-size: clamp(48px, 8vw, 96px);
            font-weight: 400;
            color: #f5f5dc;
            letter-spacing: 12px;
            text-shadow: 
                5px 5px 0 rgba(0,0,0,0.4),
                -1px -1px 0 rgba(255,255,255,0.1);
            z-index: 10;
            white-space: nowrap;
            text-align: center;
            transform: rotate(-1.5deg);
        }

        .portfolio-name::before {
            content: 'PETER MOORE';
            position: absolute;
            top: 0;
            left: 0;
            color: rgba(255,255,255,0.08);
            z-index: -1;
            transform: translate(8px, 8px);
        }

        .portfolio-name::after {
            content: '';
            position: absolute;
            bottom: -15px;
            left: 10%;
            right: 10%;
            height: 4px;
            background: #f5f5dc;
            box-shadow: 3px 3px 0 rgba(0,0,0,0.3);
            transform: rotate(1deg);
        }

        /* Design Page Styles */
        .design-page {
            width: 100%;
            height: 100vh;
            display: none;
            background: #1a1a1a;
            position: fixed;
            top: 0;
            left: 0;
            overflow: hidden;
        }

        .sidebar {
            width: 250px;
            background: rgba(40, 40, 40, 0.9);
            padding: 30px 20px;
            display: flex;
            flex-direction: column;
            height: 100vh;
            box-shadow: 4px 0 20px rgba(0,0,0,0.5);
            border-right: 1px solid rgba(245, 245, 220, 0.1);
        }

        .sidebar-title {
            font-size: 48px;
            font-weight: 900;
            margin-bottom: 30px;
            font-family: 'Impact', 'Arial Black', sans-serif;
            color: #f5f5dc;
            text-transform: uppercase;
            letter-spacing: -0.02em;
            text-shadow: 3px 3px 0 rgba(0,0,0,0.3);
        }

        .design-nav {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 5px;
            margin-bottom: 20px;
        }

        .design-link {
            padding: 15px 10px;
            font-family: 'Impact', 'Arial Black', sans-serif;
            font-size: 18px;
            font-weight: 700;
            color: #f5f5dc;
            text-decoration: none;
            text-transform: capitalize;
            border: 2px solid transparent;
            transition: all 0.3s;
            letter-spacing: 0.5px;
            text-shadow: 2px 2px 0 rgba(0,0,0,0.3);
        }

        .design-link:hover {
            border-left: 4px solid #f5f5dc;
            padding-left: 15px;
            background: rgba(245, 245, 220, 0.05);
        }

        .design-link.active {
            border-left: 4px solid #f5f5dc;
            background: rgba(245, 245, 220, 0.1);
            padding-left: 15px;
        }

        .sidebar-content {
            flex: 1;
            overflow-y: auto;
        }

        .sidebar-content p {
            font-family: 'Courier New', monospace;
            font-size: 13px;
            line-height: 1.7;
            margin-bottom: 15px;
            color: #f5f5dc;
            text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
        }

        .profile-pic {
            width: 100%;
            aspect-ratio: 1;
            background: rgba(245, 245, 220, 0.15);
            margin-top: 20px;
            box-shadow: 
                3px 3px 0 rgba(0,0,0,0.3),
                inset 0 0 20px rgba(0,0,0,0.3);
            border: 2px solid rgba(245, 245, 220, 0.2);
        }

        .back-btn {
            margin-top: 20px;
            padding: 15px;
            background: rgba(245, 245, 220, 0.1);
            border: 3px solid #f5f5dc;
            font-size: 18px;
            font-weight: 900;
            cursor: pointer;
            font-family: 'Impact', 'Arial Black', sans-serif;
            transition: all 0.3s;
            color: #f5f5dc;
            text-transform: uppercase;
            letter-spacing: 1px;
            text-shadow: 2px 2px 0 rgba(0,0,0,0.3);
            box-shadow: 3px 3px 0 rgba(0,0,0,0.3);
        }

        .back-btn:hover {
            background: #f5f5dc;
            color: #1a1a1a;
            transform: translate(-2px, -2px);
            box-shadow: 5px 5px 0 rgba(0,0,0,0.3);
        }

        .main-content {
            flex: 1;
            padding: 40px;
            overflow-y: auto;
            height: 100vh;
            background: #1a1a1a;
            position: relative;
        }

        .design-detail {
            position: absolute;
            top: 40px;
            left: 40px;
            right: 40px;
            opacity: 0;
            transform: translateX(100%);
            transition: all 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
            pointer-events: none;
        }

        .design-detail.active {
            opacity: 1;
            transform: translateX(0);
            pointer-events: all;
        }

        .design-detail.slide-out-left {
            transform: translateX(-100%);
            opacity: 0;
        }

        .page-title {
            font-size: clamp(60px, 10vw, 120px);
            margin-bottom: 40px;
            font-family: 'Impact', 'Arial Black', sans-serif;
            font-weight: 900;
            color: #f5f5dc;
            text-transform: uppercase;
            letter-spacing: -0.02em;
            text-shadow: 
                5px 5px 0 rgba(0,0,0,0.3),
                -1px -1px 0 rgba(255,255,255,0.1);
            position: relative;
        }

        .page-title::before {
            content: 'DESIGN';
            position: absolute;
            top: 0;
            left: 0;
            color: rgba(255,255,255,0.05);
            z-index: -1;
            transform: translate(6px, 6px);
        }

        .gallery-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            grid-auto-rows: 150px;
            gap: 20px;
            padding-bottom: 30px;
        }

        .gallery-item {
            background: rgba(245, 245, 220, 0.15);
            box-shadow: 
                4px 4px 0 rgba(0,0,0,0.3),
                inset 0 0 30px rgba(0,0,0,0.2);
            transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
            border: 2px solid rgba(245, 245, 220, 0.1);
            position: relative;
            overflow: hidden;
        }

        .gallery-item::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: 
                repeating-linear-gradient(
                    45deg,
                    transparent,
                    transparent 10px,
                    rgba(255,255,255,0.02) 10px,
                    rgba(255,255,255,0.02) 20px
                );
            pointer-events: none;
        }

        .gallery-item:hover {
            transform: translate(-3px, -3px);
            box-shadow: 
                7px 7px 0 rgba(0,0,0,0.3),
                inset 0 0 30px rgba(245, 245, 220, 0.1);
            border-color: rgba(245, 245, 220, 0.3);
        }

        .gallery-item.large {
            grid-column: span 2;
            grid-row: span 2;
        }

        .gallery-item.tall {
            grid-column: span 1;
            grid-row: span 3;
        }

        .gallery-item.medium {
            grid-column: span 2;
            grid-row: span 2;
        }

        .gallery-item.small {
            grid-column: span 1;
            grid-row: span 1;
        }

        .gallery-item.wide {
            grid-column: span 2;
            grid-row: span 1;
        }

        .gallery-item.medium-tall {
            grid-column: span 1;
            grid-row: span 2;
        }

        .gallery-item.small-square {
            grid-column: span 1;
            grid-row: span 1;
        }

        /* Teaching Page Styles */
        .teaching-page {
            width: 100%;
            height: 100vh;
            display: none;
            background: #1a1a1a;
            position: fixed;
            top: 0;
            left: 0;
            overflow: hidden;
        }

        .teaching-sidebar {
            width: 250px;
            background: rgba(40, 40, 40, 0.9);
            padding: 30px 20px;
            display: flex;
            flex-direction: column;
            height: 100vh;
            box-shadow: 4px 0 20px rgba(0,0,0,0.5);
            border-right: 1px solid rgba(245, 245, 220, 0.1);
        }

        .course-nav {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 5px;
            margin-bottom: 20px;
        }

        .course-link {
            padding: 15px 10px;
            font-family: 'Impact', 'Arial Black', sans-serif;
            font-size: 20px;
            font-weight: 700;
            color: #f5f5dc;
            text-decoration: none;
            text-transform: uppercase;
            border: 2px solid transparent;
            transition: all 0.3s;
            letter-spacing: 0.5px;
            text-shadow: 2px 2px 0 rgba(0,0,0,0.3);
        }

        .course-link:hover {
            border-left: 4px solid #f5f5dc;
            padding-left: 15px;
            background: rgba(245, 245, 220, 0.05);
        }

        .course-link.active {
            border-left: 4px solid #f5f5dc;
            background: rgba(245, 245, 220, 0.1);
            padding-left: 15px;
        }

        .teaching-content {
            flex: 1;
            padding: 40px;
            overflow-y: auto;
            height: 100vh;
            background: #1a1a1a;
            position: relative;
        }

        .course-detail {
            position: absolute;
            top: 40px;
            left: 40px;
            right: 40px;
            opacity: 0;
            transform: translateX(100%);
            transition: all 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
            pointer-events: none;
        }

        .course-detail.active {
            opacity: 1;
            transform: translateX(0);
            pointer-events: all;
        }

        .course-detail.slide-out-left {
            transform: translateX(-100%);
            opacity: 0;
        }

        .course-title {
            font-size: clamp(60px, 10vw, 100px);
            margin-bottom: 30px;
            font-family: 'Impact', 'Arial Black', sans-serif;
            font-weight: 900;
            color: #f5f5dc;
            text-transform: uppercase;
            letter-spacing: -0.02em;
            text-shadow: 
                5px 5px 0 rgba(0,0,0,0.3),
                -1px -1px 0 rgba(255,255,255,0.1);
            position: relative;
        }

        .course-title::before {
            content: attr(data-title);
            position: absolute;
            top: 0;
            left: 0;
            color: rgba(255,255,255,0.05);
            z-index: -1;
            transform: translate(6px, 6px);
        }

        .course-description {
            font-family: 'Courier New', monospace;
            font-size: 14px;
            line-height: 1.8;
            color: #f5f5dc;
            margin-bottom: 40px;
            max-width: 900px;
            text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
        }

        .course-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            grid-template-rows: repeat(4, 150px);
            gap: 20px;
            padding-bottom: 30px;
        }

        .course-item {
            background: rgba(245, 245, 220, 0.15);
            box-shadow: 
                4px 4px 0 rgba(0,0,0,0.3),
                inset 0 0 30px rgba(0,0,0,0.2);
            transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
            border: 2px solid rgba(245, 245, 220, 0.1);
            position: relative;
            overflow: hidden;
        }

        .course-item::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: 
                repeating-linear-gradient(
                    45deg,
                    transparent,
                    transparent 10px,
                    rgba(255,255,255,0.02) 10px,
                    rgba(255,255,255,0.02) 20px
                );
            pointer-events: none;
        }

        .course-item:hover {
            transform: translate(-3px, -3px);
            box-shadow: 
                7px 7px 0 rgba(0,0,0,0.3),
                inset 0 0 30px rgba(245, 245, 220, 0.1);
            border-color: rgba(245, 245, 220, 0.3);
        }

        /* Course grid layout matching the image */
        .course-item.large-h {
            grid-column: 1 / 3;
            grid-row: 1 / 3;
        }

        .course-item.tall-r {
            grid-column: 3 / 5;
            grid-row: 1 / 4;
        }

        .course-item.small-1 {
            grid-column: 1 / 2;
            grid-row: 3 / 4;
        }

        .course-item.small-2 {
            grid-column: 2 / 3;
            grid-row: 3 / 4;
        }

        .course-item.wide-b {
            grid-column: 1 / 3;
            grid-row: 4 / 5;
        }

        .course-item.medium-r {
            grid-column: 3 / 5;
            grid-row: 4 / 5;
        }

        /* Writing Page Styles */
        .writing-page {
            width: 100%;
            height: 100vh;
            display: none;
            background: #1a1a1a;
            position: fixed;
            top: 0;
            left: 0;
            overflow-y: auto;
            padding: 80px 60px 60px 60px;
        }

        .back-btn-top {
            position: fixed;
            top: 30px;
            left: 30px;
            padding: 15px 25px;
            background: rgba(245, 245, 220, 0.1);
            border: 3px solid #f5f5dc;
            font-size: 18px;
            font-weight: 900;
            cursor: pointer;
            font-family: 'Impact', 'Arial Black', sans-serif;
            transition: all 0.3s;
            color: #f5f5dc;
            text-transform: uppercase;
            letter-spacing: 1px;
            text-shadow: 2px 2px 0 rgba(0,0,0,0.3);
            box-shadow: 3px 3px 0 rgba(0,0,0,0.3);
            z-index: 1000;
        }

        .back-btn-top:hover {
            background: #f5f5dc;
            color: #1a1a1a;
            transform: translate(-2px, -2px);
            box-shadow: 5px 5px 0 rgba(0,0,0,0.3);
        }

        .writing-columns {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 80px;
            max-width: 1400px;
            margin: 0 auto;
        }

        .writing-column {
            position: relative;
        }

        .writing-category {
            font-size: clamp(32px, 4vw, 48px);
            font-family: 'Impact', 'Arial Black', sans-serif;
            font-weight: 900;
            color: #f5f5dc;
            text-transform: uppercase;
            letter-spacing: -0.01em;
            margin-bottom: 40px;
            text-shadow: 
                3px 3px 0 rgba(0,0,0,0.3),
                -1px -1px 0 rgba(255,255,255,0.1);
            position: relative;
        }

        .writing-category::after {
            content: '';
            position: absolute;
            bottom: -15px;
            left: 0;
            width: 60px;
            height: 4px;
            background: #f5f5dc;
            box-shadow: 2px 2px 0 rgba(0,0,0,0.3);
        }

        .writing-text {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        .writing-text p {
            font-family: 'Courier New', monospace;
            font-size: 14px;
            line-height: 1.7;
            color: #f5f5dc;
            text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
            padding-left: 10px;
            border-left: 2px solid rgba(245, 245, 220, 0.2);
            transition: all 0.3s;
        }

        .writing-text p:hover {
            border-left-color: #f5f5dc;
            padding-left: 15px;
            background: rgba(245, 245, 220, 0.05);
        }

        @media (max-width: 1200px) {
            .writing-columns {
                grid-template-columns: 1fr;
                gap: 60px;
            }
        }

        /* About Page Styles */
        .about-page {
            width: 100%;
            height: 100vh;
            display: none;
            background: #e8e8e8;
            position: fixed;
            top: 0;
            left: 0;
            overflow: hidden;
        }

        .about-sidebar {
            width: 240px;
            background: #f5f5f5;
            padding: 40px 20px 30px;
            display: flex;
            flex-direction: column;
            height: 100vh;
            box-shadow: 3px 0 15px rgba(0,0,0,0.1);
            position: fixed;
            left: 0;
            top: 0;
        }

        .about-name {
            font-size: 42px;
            font-weight: 900;
            margin-bottom: 40px;
            font-family: 'Impact', 'Arial Black', sans-serif;
            color: #000;
            text-transform: capitalize;
            letter-spacing: -0.02em;
        }

        .about-nav {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 30px;
            overflow-y: auto;
        }

        .nav-section {
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

        .nav-section-title {
            font-family: 'Impact', 'Arial Black', sans-serif;
            font-size: 20px;
            font-weight: 700;
            color: #000;
            margin-bottom: 5px;
            text-transform: capitalize;
        }

        .nav-sublink {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
            font-size: 15px;
            color: #333;
            text-decoration: none;
            padding: 5px 0 5px 15px;
            transition: all 0.2s;
            border-left: 2px solid transparent;
        }

        .nav-sublink:hover {
            border-left-color: #000;
            padding-left: 20px;
        }

        .about-content {
            margin-left: 240px;
            padding: 60px 80px;
            height: 100vh;
            overflow-y: auto;
            background: #e8e8e8;
        }

        .about-title {
            font-size: clamp(60px, 8vw, 90px);
            font-family: 'Impact', 'Arial Black', sans-serif;
            font-weight: 900;
            color: #000;
            margin-bottom: 50px;
            letter-spacing: -0.02em;
        }

        .about-text {
            max-width: 900px;
            display: flex;
            flex-direction: column;
            gap: 25px;
        }

        .about-text p {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
            font-size: 16px;
            line-height: 1.8;
            color: #333;
            text-align: justify;
        }

        .about-image {
            width: 100%;
            max-width: 1100px;
            aspect-ratio: 16 / 9;
            background: linear-gradient(135deg, #8b7d6b 0%, #6b5d4f 100%);
            box-shadow: 5px 5px 20px rgba(0,0,0,0.2);
            position: relative;
            overflow: hidden;
        }

        .about-image::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: 
                repeating-linear-gradient(
                    0deg,
                    transparent,
                    transparent 3px,
                    rgba(0,0,0,0.05) 3px,
                    rgba(0,0,0,0.05) 6px
                );
        }

        .about-image::after {
            content: 'PRINTING PRESS';
            position: absolute;
            bottom: 20px;
            right: 20px;
            font-family: 'Courier New', monospace;
            font-size: 12px;
            color: rgba(0,0,0,0.3);
            letter-spacing: 2px;
        }

        .texture-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: 
                repeating-linear-gradient(
                    0deg,
                    transparent,
                    transparent 2px,
                    rgba(255,255,255,.03) 2px,
                    rgba(255,255,255,.03) 4px
                ),
                repeating-linear-gradient(
                    90deg,
                    transparent,
                    transparent 2px,
                    rgba(0,0,0,.1) 2px,
                    rgba(0,0,0,.1) 4px
                );
            pointer-events: none;
            opacity: 0.3;
        }

        .word-block {
            display: block;
            margin: 20px 0;
            position: relative;
            text-decoration: none;
            width: 100%;
        }

        .word {
            font-size: clamp(60px, 12vw, 180px);
            font-weight: 900;
            letter-spacing: -0.02em;
            line-height: 0.9;
            color: #f5f5dc;
            text-transform: uppercase;
            display: inline-block;
            position: relative;
            text-shadow: 
                3px 3px 0 rgba(0,0,0,0.3),
                -1px -1px 0 rgba(255,255,255,0.1);
            word-wrap: break-word;
            max-width: 100%;
        }

        .word::before {
            content: attr(data-text);
            position: absolute;
            top: 0;
            left: 0;
            color: rgba(255,255,255,0.1);
            z-index: -1;
            transform: translate(4px, 4px);
        }

        .letter {
            display: inline-block;
            transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
            position: relative;
        }

        .word-block:hover .letter {
            transform: translateX(var(--offset));
        }

        .stripe {
            position: absolute;
            height: 40%;
            background: rgba(245, 245, 220, 0.15);
            width: 100%;
            z-index: -1;
            box-shadow: inset 0 0 20px rgba(0,0,0,0.3);
        }

        .word-block:nth-child(1) .stripe {
            top: 15%;
            left: -5%;
            width: min(30%, 200px);
        }

        .word-block:nth-child(2) .stripe {
            top: 25%;
            right: -5%;
            width: min(40%, 250px);
        }

        .word-block:nth-child(3) .stripe {
            top: 20%;
            left: 10%;
            width: min(35%, 220px);
        }

        .word-block:nth-child(4) .stripe {
            top: 30%;
            right: 5%;
            width: min(25%, 180px);
        }

        @media (max-width: 768px) {
            body {
                padding: 10px;
            }

            .home-page {
                padding: 20px 10px;
            }

            .word {
                font-size: clamp(40px, 15vw, 100px);
            }
            
            .word-block {
                margin: 15px 0;
            }

            .stripe {
                height: 30%;
            }

            .letter {
                display: inline-block;
            }
        }

        @media (max-width: 480px) {
            .word {
                font-size: clamp(35px, 18vw, 80px);
            }

            .word-block {
                margin: 12px 0;
            }

            .stripe {
                display: none;
            }
        }

        .grain {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
            opacity: 0.15;
            pointer-events: none;
        }