160 | 161 | 164 | 165 | 177 | 178 | 179 | 180 | 181 | 182 | 185 | 186 |
187 | 188 |
189 |

About me

190 |
191 |
192 |

193 | Creativity is my fuel, I bring your vision to life with a touch of uniqueness . Challenges are the opportunity for me, I tackle problems head-on with determination and finesse. I possess a versatile skill set that spans the latest technology and trends for a front-end magic. As I'm an engineer of the digital age, I can craft solution with AI. 194 |

195 | 196 |
197 | 198 | 199 | 200 |
201 | 202 |

My skills

203 | 204 |
    205 | 206 |
  • 207 | 208 |
    209 |
    PROGRAMING LANGUAGES - C++ , PYTHON
    210 | 211 |
    212 | 213 |
  • 214 | 215 |
  • 216 | 217 |
    218 |
    Web Technologies - HTML, CSS, JavaScript
    219 | 220 |
    221 | 222 | 223 | 224 |
  • 225 | 226 |
  • 227 | 228 |
    229 |
    TOOLS - WordPress , Figma , MYSQL and can also use Some AI Tools
    230 | 231 |
    232 | 233 | 234 | 235 |
  • 236 | 237 |
  • 238 | 239 |
    240 |
    Other skills - social media manager, Digital marketing
    241 | 242 | 243 |
    244 | 245 | 246 | 247 |
  • 248 | 249 |
250 | 251 | 252 |

My Projects

253 | 254 |
    255 | 256 |
  • 257 | 258 |
    259 | design icon 261 |
    262 | 263 |
    264 |

    ROLLS-ROYCE PREVIEW

    265 | 266 |

    267 | 3D Ghost preview watch it with 268 | patience 269 |

    270 | LIVE 271 |
    272 | 273 |
  • 274 | 275 |
  • 276 | 277 |
    278 | Web development icon 279 |
    280 | 281 |
    282 |

    TODO LIST

    283 | 284 |

    285 | Build a sleek and dynamic todo list by HTML, CSS, and JavaScript 286 |

    287 | LIVE 288 |
    289 | 290 |
  • 291 | 292 |
  • 293 | 294 |
    295 | mobile app icon 296 |
    297 | 298 |
    299 |

    LINK TO QR

    300 | 301 |

    302 | Builted a Dynamic project which can genrate QR by Link 303 |

    304 | 305 | LIVE 306 |
    307 | 308 |
  • 309 | 310 |
  • 311 | 312 |
    313 | PYTHON LOGO 314 |
    315 | 316 |
    317 |

    PYTHON PROJECTS

    318 | 319 |

    320 | Crafted a engaging and Useful python projects 321 |

    322 | LIVE 323 | 324 |
    325 | 326 |
  • 327 | 328 |
329 | 330 |
331 | 332 |
333 | 334 | 337 | 338 | 339 | 340 | 341 | 342 | 343 | 344 | -------------------------------------------------------------------------------- /script.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | // element toggle function 3 | const elementToggleFunc = function (elem) { elem.classList.toggle("active"); } 4 | // sidebar variables 5 | const sidebar = document.querySelector("[data-sidebar]"); 6 | const sidebarBtn = document.querySelector("[data-sidebar-btn]"); 7 | // sidebar toggle functionality for mobile 8 | sidebarBtn.addEventListener("click", function () { elementToggleFunc(sidebar); }); 9 | // add click event to modal close button 10 | modalCloseBtn.addEventListener("click", testimonialsModalFunc); 11 | overlay.addEventListener("click", testimonialsModalFunc); 12 | // custom select variables 13 | const select = document.querySelector("[data-select]"); 14 | const selectItems = document.querySelectorAll("[data-select-item]"); 15 | const selectValue = document.querySelector("[data-selecct-value]"); 16 | const filterBtn = document.querySelectorAll("[data-filter-btn]"); 17 | select.addEventListener("click", function () { elementToggleFunc(this); }); 18 | // add event in all select items 19 | for (let i = 0; i < selectItems.length; i++) { 20 | selectItems[i].addEventListener("click", function () { 21 | 22 | let selectedValue = this.innerText.toLowerCase(); 23 | selectValue.innerText = this.innerText; 24 | elementToggleFunc(select); 25 | filterFunc(selectedValue); 26 | 27 | }); 28 | } 29 | // filter variables 30 | const filterItems = document.querySelectorAll("[data-filter-item]"); 31 | const filterFunc = function (selectedValue) { 32 | for (let i = 0; i < filterItems.length; i++) { 33 | if (selectedValue === "all") { 34 | filterItems[i].classList.add("active"); 35 | } else if (selectedValue === filterItems[i].dataset.category) { 36 | filterItems[i].classList.add("active"); 37 | } else { 38 | filterItems[i].classList.remove("active"); 39 | } 40 | } 41 | } 42 | // add event in all filter button items for large screen 43 | let lastClickedBtn = filterBtn[0]; 44 | 45 | for (let i = 0; i < filterBtn.length; i++) { 46 | 47 | filterBtn[i].addEventListener("click", function () { 48 | 49 | let selectedValue = this.innerText.toLowerCase(); 50 | selectValue.innerText = this.innerText; 51 | filterFunc(selectedValue); 52 | 53 | lastClickedBtn.classList.remove("active"); 54 | this.classList.add("active"); 55 | lastClickedBtn = this; 56 | 57 | }); 58 | 59 | document.addEventListener('DOMContentLoaded', function() { 60 | const portfolioButton = document.querySelector('[data-nav-link="Portfolio"]'); 61 | const portfolioSection = document.querySelector('[data-page="portfolio"]'); 62 | 63 | if (portfolioButton && portfolioSection) { 64 | portfolioButton.addEventListener('click', function(event) { 65 | event.preventDefault(); // Prevent default button behavior 66 | portfolioSection.scrollIntoView({ behavior: 'smooth' }); // Scroll to portfolio section 67 | }); 68 | } 69 | }); 70 | } 71 | // contact form variables 72 | const form = document.querySelector("[data-form]"); 73 | const formInputs = document.querySelectorAll("[data-form-input]"); 74 | const formBtn = document.querySelector("[data-form-btn]"); 75 | 76 | // add event to all form input field 77 | for (let i = 0; i < formInputs.length; i++) { 78 | formInputs[i].addEventListener("input", function () { 79 | 80 | // check form validation 81 | if (form.checkValidity()) { 82 | formBtn.removeAttribute("disabled"); 83 | } else { 84 | formBtn.setAttribute("disabled", ""); 85 | } 86 | 87 | }); 88 | } 89 | // page navigation variables 90 | const navigationLinks = document.querySelectorAll("[data-nav-link]"); 91 | const pages = document.querySelectorAll("[data-page]"); 92 | 93 | // add event to all nav link 94 | for (let i = 0; i < navigationLinks.length; i++) { 95 | navigationLinks[i].addEventListener("click", function () { 96 | 97 | for (let i = 0; i < pages.length; i++) { 98 | if (this.innerHTML.toLowerCase() === pages[i].dataset.page) { 99 | pages[i].classList.add("active"); 100 | navigationLinks[i].classList.add("active"); 101 | window.scrollTo(0, 0); 102 | } else { 103 | pages[i].classList.remove("active"); 104 | navigationLinks[i].classList.remove("active"); 105 | } 106 | } 107 | 108 | }); 109 | } 110 | -------------------------------------------------------------------------------- /style.css: -------------------------------------------------------------------------------- 1 | /* css style */ 2 | :root { 3 | 4 | /** 5 | * colors 6 | */ 7 | 8 | /* gradient */ 9 | 10 | --bg-gradient-onyx: linear-gradient( 11 | to bottom right, 12 | hsl(240, 1%, 25%) 3%, 13 | hsl(0, 0%, 19%) 97% 14 | ); 15 | --bg-gradient-jet: linear-gradient( 16 | to bottom right, 17 | hsla(240, 1%, 18%, 0.251) 0%, 18 | hsla(240, 2%, 11%, 0) 100% 19 | ), hsl(240, 2%, 13%); 20 | --bg-gradient-yellow-1: linear-gradient( 21 | to bottom right, 22 | hsl(45, 100%, 71%) 0%, 23 | hsla(36, 100%, 69%, 0) 50% 24 | ); 25 | --bg-gradient-yellow-2: linear-gradient( 26 | 135deg, 27 | hsla(45, 100%, 71%, 0.251) 0%, 28 | hsla(35, 100%, 68%, 0) 59.86% 29 | ), hsl(240, 2%, 13%); 30 | --border-gradient-onyx: linear-gradient( 31 | to bottom right, 32 | hsl(0, 0%, 25%) 0%, 33 | hsla(0, 0%, 25%, 0) 50% 34 | ); 35 | --text-gradient-yellow: linear-gradient( 36 | to right, 37 | hsl(45, 100%, 72%), 38 | hsl(35, 100%, 68%) 39 | ); 40 | 41 | /* solid */ 42 | 43 | --jet: hsl(0, 0%, 22%); 44 | --onyx: hsl(240, 1%, 17%); 45 | --eerie-black-1: hsl(240, 2%, 13%); 46 | --eerie-black-2: hsl(240, 2%, 12%); 47 | --smoky-black: hsl(0, 0%, 7%); 48 | --white-1: hsl(0, 0%, 100%); 49 | --white-2: hsl(0, 0%, 98%); 50 | --orange-yellow-crayola: hsl(45, 100%, 72%); 51 | --vegas-gold: hsl(45, 54%, 58%); 52 | --light-gray: hsl(0, 0%, 84%); 53 | --light-gray-70: hsla(0, 0%, 84%, 0.7); 54 | --bittersweet-shimmer: hsl(0, 43%, 51%); 55 | 56 | /** 57 | * typography 58 | */ 59 | 60 | /* font-family */ 61 | --ff-poppins: 'Poppins', sans-serif; 62 | 63 | /* font-size */ 64 | --fs-1: 24px; 65 | --fs-2: 18px; 66 | --fs-3: 17px; 67 | --fs-4: 16px; 68 | --fs-5: 15px; 69 | --fs-6: 14px; 70 | --fs-7: 13px; 71 | --fs-8: 11px; 72 | 73 | /* font-weight */ 74 | --fw-300: 300; 75 | --fw-400: 400; 76 | --fw-500: 500; 77 | --fw-600: 600; 78 | 79 | /** 80 | * shadow 81 | */ 82 | 83 | --shadow-1: -4px 8px 24px hsla(0, 0%, 0%, 0.25); 84 | --shadow-2: 0 16px 30px hsla(0, 0%, 0%, 0.25); 85 | --shadow-3: 0 16px 40px hsla(0, 0%, 0%, 0.25); 86 | --shadow-4: 0 25px 50px hsla(0, 0%, 0%, 0.15); 87 | --shadow-5: 0 24px 80px hsla(0, 0%, 0%, 0.25); 88 | 89 | /** 90 | * transition 91 | */ 92 | 93 | --transition-1: 0.25s ease; 94 | --transition-2: 0.5s ease-in-out; 95 | 96 | } 97 | 98 | /* project of kavya trivedi */ 99 | 100 | /*-----------------------------------*\ 101 | #RESET 102 | \*-----------------------------------*/ 103 | 104 | *, *::before, *::after { 105 | margin: 0; 106 | padding: 0; 107 | box-sizing: border-box; 108 | } 109 | 110 | a { text-decoration: none; } 111 | 112 | li { list-style: none; } 113 | 114 | img, ion-icon, a, button, time, span { display: block; } 115 | 116 | button { 117 | font: inherit; 118 | background: none; 119 | border: none; 120 | text-align: left; 121 | cursor: pointer; 122 | } 123 | 124 | input, textarea { 125 | display: block; 126 | width: 100%; 127 | background: none; 128 | font: inherit; 129 | } 130 | 131 | ::selection { 132 | background: var(--orange-yellow-crayola); 133 | color: var(--smoky-black); 134 | } 135 | 136 | :focus { outline-color: var(--orange-yellow-crayola); } 137 | 138 | html { font-family: var(--ff-poppins); } 139 | 140 | body { background: var(--smoky-black); } 141 | 142 | 143 | 144 | 145 | /* project of kavya trivedi */ 146 | /*-----------------------------------*\ 147 | #REUSED STYLE 148 | \*-----------------------------------*/ 149 | 150 | .sidebar, 151 | article { 152 | background: var(--eerie-black-2); 153 | border: 1px solid var(--jet); 154 | border-radius: 20px; 155 | padding: 15px; 156 | box-shadow: var(--shadow-1); 157 | z-index: 1; 158 | } 159 | 160 | .separator { 161 | width: 100%; 162 | height: 1px; 163 | background: var(--jet); 164 | margin: 16px 0; 165 | } 166 | 167 | .icon-box { 168 | position: relative; 169 | background: var(--border-gradient-onyx); 170 | width: 30px; 171 | height: 30px; 172 | border-radius: 8px; 173 | display: flex; 174 | justify-content: center; 175 | align-items: center; 176 | font-size: 16px; 177 | color: var(--orange-yellow-crayola); 178 | box-shadow: var(--shadow-1); 179 | z-index: 1; 180 | } 181 | 182 | .icon-box::before { 183 | content: ""; 184 | position: absolute; 185 | inset: 1px; 186 | background: var(--eerie-black-1); 187 | border-radius: inherit; 188 | z-index: -1; 189 | } 190 | 191 | .icon-box ion-icon { --ionicon-stroke-width: 35px; } 192 | 193 | article { display: none; } 194 | 195 | article.active { 196 | display: block; 197 | animation: fade 0.5s ease backwards; 198 | } 199 | 200 | @keyframes fade { 201 | 0% { opacity: 0; } 202 | 100% { opacity: 1; } 203 | } 204 | 205 | .h2, 206 | .h3, 207 | .h4, 208 | .h5 { 209 | color: var(--white-2); 210 | text-transform: capitalize; 211 | } 212 | 213 | .h2 { font-size: var(--fs-1); } 214 | 215 | .h3 { font-size: var(--fs-2); } 216 | 217 | .h4 { font-size: var(--fs-4); } 218 | 219 | .h5 { 220 | font-size: var(--fs-7); 221 | font-weight: var(--fw-500); 222 | } 223 | 224 | .article-title { 225 | position: relative; 226 | padding-bottom: 7px; 227 | } 228 | 229 | .article-title::after { 230 | content: ""; 231 | position: absolute; 232 | bottom: 0; 233 | left: 0; 234 | width: 30px; 235 | height: 3px; 236 | background: var(--text-gradient-yellow); 237 | border-radius: 3px; 238 | } 239 | 240 | .has-scrollbar::-webkit-scrollbar { 241 | width: 5px; /* for vertical scrollbar */ 242 | height: 5px; /* for horizontal scrollbar */ 243 | } 244 | 245 | .has-scrollbar::-webkit-scrollbar-track { 246 | background: var(--onyx); 247 | border-radius: 5px; 248 | } 249 | 250 | .has-scrollbar::-webkit-scrollbar-thumb { 251 | background: var(--orange-yellow-crayola); 252 | border-radius: 5px; 253 | } 254 | 255 | .has-scrollbar::-webkit-scrollbar-button { width: 20px; } 256 | 257 | .content-card { 258 | position: relative; 259 | background: var(--border-gradient-onyx); 260 | padding: 15px; 261 | padding-top: 45px; 262 | border-radius: 14px; 263 | box-shadow: var(--shadow-2); 264 | cursor: pointer; 265 | z-index: 1; 266 | } 267 | 268 | .content-card::before { 269 | content: ""; 270 | position: absolute; 271 | inset: 1px; 272 | background: var(--bg-gradient-jet); 273 | border-radius: inherit; 274 | z-index: -1; 275 | } 276 | 277 | /* project of kavya trivedi */ 278 | /*-----------------------------------*\ 279 | #MAIN 280 | \*-----------------------------------*/ 281 | 282 | main { 283 | margin: 15px 12px; 284 | margin-bottom: 75px; 285 | min-width: 259px; 286 | } 287 | 288 | /*-----------------------------------*\ 289 | #SIDEBAR 290 | \*-----------------------------------*/ 291 | 292 | .sidebar { 293 | margin-bottom: 15px; 294 | max-height: 112px; 295 | overflow: hidden; 296 | transition: var(--transition-2); 297 | } 298 | 299 | .sidebar.active { max-height: 405px; } 300 | 301 | .sidebar-info { 302 | position: relative; 303 | display: flex; 304 | justify-content: flex-start; 305 | align-items: center; 306 | gap: 15px; 307 | } 308 | 309 | .avatar-box { 310 | background: var(--bg-gradient-onyx); 311 | border-radius: 20px; 312 | } 313 | 314 | .info-content .name { 315 | color: var(--white-2); 316 | font-size: var(--fs-3); 317 | font-weight: var(--fw-500); 318 | letter-spacing: -0.25px; 319 | margin-bottom: 10px; 320 | } 321 | 322 | .info-content .title { 323 | color: var(--white-1); 324 | background: var(--onyx); 325 | font-size: var(--fs-8); 326 | font-weight: var(--fw-300); 327 | width: max-content; 328 | padding: 3px 12px; 329 | border-radius: 8px; 330 | } 331 | 332 | .info_more-btn { 333 | position: absolute; 334 | top: -15px; 335 | right: -15px; 336 | border-radius: 0 15px; 337 | font-size: 13px; 338 | color: var(--orange-yellow-crayola); 339 | background: var(--border-gradient-onyx); 340 | padding: 10px; 341 | box-shadow: var(--shadow-2); 342 | transition: var(--transition-1); 343 | z-index: 1; 344 | } 345 | 346 | .info_more-btn::before { 347 | content: ""; 348 | position: absolute; 349 | inset: 1px; 350 | border-radius: inherit; 351 | background: var(--bg-gradient-jet); 352 | transition: var(--transition-1); 353 | z-index: -1; 354 | } 355 | 356 | .info_more-btn:hover, 357 | .info_more-btn:focus { background: var(--bg-gradient-yellow-1); } 358 | 359 | .info_more-btn:hover::before, 360 | .info_more-btn:focus::before { background: var(--bg-gradient-yellow-2); } 361 | 362 | .info_more-btn span { display: none; } 363 | 364 | .sidebar-info_more { 365 | opacity: 0; 366 | visibility: hidden; 367 | transition: var(--transition-2); 368 | } 369 | 370 | .sidebar.active .sidebar-info_more { 371 | opacity: 1; 372 | visibility: visible; 373 | } 374 | 375 | .contacts-list { 376 | display: grid; 377 | grid-template-columns: 1fr; 378 | gap: 16px; 379 | } 380 | 381 | .contact-item { 382 | min-width: 100%; 383 | display: flex; 384 | align-items: center; 385 | gap: 16px; 386 | } 387 | 388 | .contact-info { 389 | max-width: calc(100% - 46px); 390 | width: calc(100% - 46px); 391 | } 392 | 393 | .contact-title { 394 | color: var(--light-gray-70); 395 | font-size: var(--fs-8); 396 | text-transform: uppercase; 397 | margin-bottom: 2px; 398 | } 399 | 400 | .contact-info :is(.contact-link, time, address) { 401 | color: var(--white-2); 402 | font-size: var(--fs-7); 403 | } 404 | 405 | .contact-info address { font-style: normal; } 406 | 407 | .social-list { 408 | display: flex; 409 | justify-content: flex-start; 410 | align-items: center; 411 | gap: 15px; 412 | padding-bottom: 4px; 413 | padding-left: 7px; 414 | } 415 | 416 | .social-item .social-link { 417 | color: var(--light-gray-70); 418 | font-size: 18px; 419 | } 420 | 421 | /* project of kavya trivedi */ 422 | .social-item .social-link:hover { color: var(--light-gray); } 423 | 424 | /*-----------------------------------*\ 425 | #NAVBAR 426 | \*-----------------------------------*/ 427 | 428 | .navbar { 429 | position: fixed; 430 | bottom: 0; 431 | left: 0; 432 | width: 100%; 433 | background: hsla(240, 1%, 17%, 0.75); 434 | backdrop-filter: blur(10px); 435 | border: 1px solid var(--jet); 436 | border-radius: 12px 12px 0 0; 437 | box-shadow: var(--shadow-2); 438 | z-index: 5; 439 | } 440 | 441 | .navbar-list { 442 | display: flex; 443 | flex-wrap: wrap; 444 | justify-content: center; 445 | align-items: center; 446 | padding: 0 10px; 447 | } 448 | 449 | .navbar-link { 450 | color: var(--light-gray); 451 | font-size: var(--fs-8); 452 | padding: 20px 7px; 453 | transition: color var(--transition-1); 454 | } 455 | /* project of kavya trivedi */ 456 | .navbar-link:hover, 457 | .navbar-link:focus { color: var(--light-gray-70); } 458 | 459 | .navbar-link.active { color: var(--orange-yellow-crayola); } 460 | 461 | 462 | /*-----------------------------------*\ 463 | #ABOUT 464 | \*-----------------------------------*/ 465 | 466 | .about .article-title { margin-bottom: 15px; } 467 | 468 | .about-text { 469 | color: var(--light-gray); 470 | font-size: var(--fs-6); 471 | font-weight: var(--fw-300); 472 | line-height: 1.6; 473 | } 474 | 475 | .about-text p { margin-bottom: 15px; } 476 | 477 | /** 478 | * #service 479 | */ 480 | /* project of kavya trivedi */ 481 | .service { margin-bottom: 35px; } 482 | 483 | .service-title { margin-bottom: 20px; } 484 | 485 | .service-list { 486 | display: grid; 487 | grid-template-columns: 1fr; 488 | gap: 20px; 489 | } 490 | 491 | .service-item { 492 | position: relative; 493 | background: var(--border-gradient-onyx); 494 | padding: 20px; 495 | border-radius: 14px; 496 | box-shadow: var(--shadow-2); 497 | z-index: 1; 498 | } 499 | 500 | .service-item::before { 501 | content: ""; 502 | position: absolute; 503 | inset: 1px; 504 | background: var(--bg-gradient-jet); 505 | border-radius: inherit; 506 | z-index: -1; 507 | } 508 | /* project of kavya trivedi */ 509 | .service-icon-box { margin-bottom: 10px; } 510 | 511 | .service-icon-box img { margin: auto; } 512 | 513 | .service-content-box { text-align: center; } 514 | 515 | .service-item-title { margin-bottom: 7px; } 516 | 517 | .service-item-text { 518 | color: var(--light-gray); 519 | font-size: var(--fs-6); 520 | font-weight: var(--fw-3); 521 | line-height: 1.6; 522 | } 523 | 524 | /*-----------------------------------*\ 525 | #RESUME 526 | \*-----------------------------------*/ 527 | 528 | .article-title { margin-bottom: 30px; } 529 | /* project of kavya trivedi */ 530 | 531 | /** 532 | * skills 533 | */ 534 | 535 | .skills-title { margin-bottom: 20px; } 536 | 537 | .skills-list { padding: 20px; } 538 | 539 | 540 | .skills-item:not(:last-child) { margin-bottom: 15px; } 541 | 542 | .skill .title-wrapper { 543 | display: flex; 544 | align-items: center; 545 | gap: 5px; 546 | margin-bottom: 8px; 547 | } 548 | 549 | .skill .title-wrapper data { 550 | color: var(--light-gray); 551 | font-size: var(--fs-7); 552 | font-weight: var(--fw-300); 553 | } 554 | 555 | .skill-progress-bg { 556 | background: var(--jet); 557 | width: 100%; 558 | height: 8px; 559 | border-radius: 10px; 560 | } 561 | /* project of kavya trivedi */ 562 | .skill-progress-fill { 563 | background: var(--text-gradient-yellow); 564 | height: 100%; 565 | border-radius: inherit; 566 | } 567 | 568 | 569 | 570 | .contact-form { margin-bottom: 10px; } 571 | 572 | /* project of kavya trivedi */ 573 | textarea.form-input::-webkit-resizer { display: none; } 574 | 575 | .form-input:focus:invalid { border-color: var(--bittersweet-shimmer); } 576 | 577 | /*-----------------------------------*\ 578 | #RESPONSIVE 579 | \*-----------------------------------*/ 580 | 581 | /** 582 | * responsive larger than 450px screen 583 | */ 584 | 585 | @media (min-width: 450px) { 586 | 587 | /* project of kavya trivedi */ 588 | /** 589 | * responsive larger than 580px screen 590 | */ 591 | 592 | @media (min-width: 580px) { 593 | 594 | /** 595 | * CUSTOM PROPERTY 596 | */ 597 | 598 | :root { 599 | 600 | /** 601 | * typography 602 | */ 603 | 604 | --fs-1: 32px; 605 | --fs-2: 24px; 606 | --fs-3: 26px; 607 | --fs-4: 18px; 608 | --fs-6: 15px; 609 | --fs-7: 15px; 610 | --fs-8: 12px; 611 | 612 | } 613 | 614 | /** 615 | * #REUSED STYLE 616 | */ 617 | 618 | .sidebar, article { 619 | width: 520px; 620 | margin-inline: auto; 621 | padding: 30px; 622 | } 623 | 624 | .article-title { 625 | font-weight: var(--fw-600); 626 | padding-bottom: 15px; 627 | } 628 | 629 | .article-title::after { 630 | width: 40px; 631 | height: 5px; 632 | } 633 | 634 | .icon-box { 635 | width: 48px; 636 | height: 48px; 637 | border-radius: 12px; 638 | font-size: 18px; 639 | } 640 | 641 | /** 642 | * #MAIN 643 | */ 644 | 645 | main { 646 | margin-top: 60px; 647 | margin-bottom: 100px; 648 | } 649 | 650 | /** 651 | * #SIDEBAR 652 | */ 653 | 654 | .sidebar { 655 | max-height: 180px; 656 | margin-bottom: 30px; 657 | } 658 | 659 | .sidebar.active { max-height: 584px; } 660 | 661 | .sidebar-info { gap: 25px; } 662 | 663 | .avatar-box { border-radius: 30px; } 664 | 665 | .avatar-box img { width: 120px; } 666 | 667 | .info-content .name { margin-bottom: 15px; } 668 | 669 | .info-content .title { padding: 5px 18px; } 670 | 671 | .info_more-btn { 672 | top: -30px; 673 | right: -30px; 674 | padding: 10px 15px; 675 | } 676 | 677 | .info_more-btn span { 678 | display: block; 679 | font-size: var(--fs-8); 680 | } 681 | 682 | .info_more-btn ion-icon { display: none; } 683 | 684 | .separator { margin: 32px 0; } 685 | 686 | .contacts-list { gap: 20px; } 687 | 688 | .contact-info { 689 | max-width: calc(100% - 64px); 690 | width: calc(100% - 64px); 691 | } 692 | 693 | /** 694 | * #NAVBAR 695 | */ 696 | 697 | .navbar { border-radius: 20px 20px 0 0; } 698 | 699 | .navbar-list { gap: 20px; } 700 | 701 | .navbar-link { --fs-8: 14px; } 702 | 703 | /** 704 | * #ABOUT 705 | */ 706 | 707 | .about .article-title { margin-bottom: 20px; } 708 | 709 | .about-text { margin-bottom: 40px; } 710 | 711 | /* service */ 712 | 713 | .service-item { 714 | display: flex; 715 | justify-content: flex-start; 716 | align-items: flex-start; 717 | gap: 18px; 718 | padding: 30px; 719 | } 720 | 721 | .service-icon-box { 722 | margin-bottom: 0; 723 | margin-top: 5px; 724 | } 725 | 726 | .service-content-box { text-align: left; } 727 | 728 | .skills-item:not(:last-child) { margin-bottom: 25px; } 729 | 730 | /** 731 | * responsive larger than 768px screen 732 | */ 733 | 734 | @media (min-width: 768px) { 735 | 736 | /** 737 | * REUSED STYLE 738 | */ 739 | 740 | .sidebar, article { width: 700px; } 741 | 742 | .has-scrollbar::-webkit-scrollbar-button { width: 100px; } 743 | 744 | /* project of kavya trivedi */ 745 | /** 746 | * SIDEBAR 747 | */ 748 | 749 | .contacts-list { 750 | grid-template-columns: 1fr 1fr; 751 | gap: 30px 15px; 752 | } 753 | 754 | /** 755 | * NAVBAR 756 | */ 757 | 758 | .navbar-link { --fs-8: 15px; } 759 | 760 | /** 761 | * PORTFOLIO 762 | */ 763 | 764 | .article-title { padding-bottom: 20px; } 765 | 766 | /* project of kavya trivedi */ 767 | /** 768 | * responsive larger than 1024px screen 769 | */ 770 | 771 | @media (min-width: 1024px) { 772 | 773 | /** 774 | * CUSTOM PROPERTY 775 | */ 776 | 777 | :root { 778 | 779 | /** 780 | * shadow 781 | */ 782 | 783 | --shadow-1: -4px 8px 24px hsla(0, 0%, 0%, 0.125); 784 | --shadow-2: 0 16px 30px hsla(0, 0%, 0%, 0.125); 785 | --shadow-3: 0 16px 40px hsla(0, 0%, 0%, 0.125); 786 | 787 | } 788 | 789 | /** 790 | * REUSED STYLE 791 | */ 792 | 793 | .sidebar, article { 794 | width: 950px; 795 | box-shadow: var(--shadow-5); 796 | } 797 | 798 | /** 799 | * MAIN 800 | */ 801 | 802 | main { margin-bottom: 60px; } 803 | 804 | .main-content { 805 | position: relative; 806 | width: max-content; 807 | margin: auto; 808 | } 809 | 810 | /** 811 | * NAVBAR 812 | */ 813 | 814 | .navbar { 815 | position: absolute; 816 | bottom: auto; 817 | top: 0; 818 | left: auto; 819 | right: 0; 820 | width: max-content; 821 | border-radius: 0 20px; 822 | padding: 0 20px; 823 | box-shadow: none; 824 | } 825 | 826 | .navbar-list { 827 | gap: 30px; 828 | padding: 0 20px; 829 | } 830 | 831 | .navbar-link { font-weight: var(--fw-500); } 832 | 833 | /* project of kavya trivedi */ 834 | /** 835 | * ABOUT 836 | */ 837 | 838 | /* service */ 839 | 840 | .service-list { 841 | grid-template-columns: 1fr 1fr; 842 | gap: 20px 25px; 843 | } 844 | 845 | /** 846 | * responsive larger than 1250px screen 847 | */ 848 | 849 | @media (min-width: 1250px) { 850 | 851 | /** 852 | * RESET 853 | */ 854 | 855 | body::-webkit-scrollbar { width: 20px; } 856 | 857 | body::-webkit-scrollbar-track { background: var(--smoky-black); } 858 | 859 | body::-webkit-scrollbar-thumb { 860 | border: 5px solid var(--smoky-black); 861 | background: hsla(0, 0%, 100%, 0.1); 862 | border-radius: 20px; 863 | box-shadow: inset 1px 1px 0 hsla(0, 0%, 100%, 0.11), 864 | inset -1px -1px 0 hsla(0, 0%, 100%, 0.11); 865 | } 866 | 867 | body::-webkit-scrollbar-thumb:hover { background: hsla(0, 0%, 100%, 0.15); } 868 | 869 | body::-webkit-scrollbar-button { height: 60px; } 870 | 871 | /** 872 | * REUSED STYLE 873 | */ 874 | 875 | .sidebar, article { width: auto; } 876 | 877 | article { min-height: 100%; } 878 | 879 | /** 880 | * MAIN 881 | */ 882 | 883 | main { 884 | max-width: 1200px; 885 | margin-inline: auto; 886 | display: flex; 887 | justify-content: center; 888 | align-items: stretch; 889 | gap: 25px; 890 | } 891 | 892 | .main-content { 893 | min-width: 75%; 894 | width: 75%; 895 | margin: 0; 896 | } 897 | 898 | /** 899 | * SIDEBAR 900 | */ 901 | 902 | .sidebar { 903 | position: sticky; 904 | top: 60px; 905 | max-height: max-content; 906 | height: 100%; 907 | margin-bottom: 0; 908 | padding-top: 60px; 909 | z-index: 1; 910 | } 911 | 912 | .sidebar-info { flex-direction: column; } 913 | /* project of kavya trivedi */ 914 | .avatar-box img { width: 150px; } 915 | 916 | .info-content .name { 917 | white-space: nowrap; 918 | text-align: center; 919 | } 920 | 921 | .info-content .title { margin: auto; } 922 | 923 | .info_more-btn { display: none; } 924 | 925 | .sidebar-info_more { 926 | opacity: 1; 927 | visibility: visible; 928 | } 929 | 930 | .contacts-list { grid-template-columns: 1fr; } 931 | 932 | .contact-info :is(.contact-link) { 933 | white-space: nowrap; 934 | overflow: hidden; 935 | text-overflow: ellipsis; 936 | } 937 | 938 | .contact-info :is(.contact-link, time, address) { 939 | --fs-7: 14px; 940 | font-weight: var(--fw-300); 941 | } 942 | 943 | .separator:last-of-type { 944 | margin: 15px 0; 945 | opacity: 0; 946 | } 947 | /* project of kavya trivedi */ 948 | .social-list { justify-content: center; } 949 | 950 | } 951 | } 952 | } 953 | } 954 | } 955 | --------------------------------------------------------------------------------