/*Web-1024px & Above*/
html,body{background:#040404;margin:0;padding:0;max-width:100%;overflow-x:hidden}
html.white,body.white{background:#ffffff}
/*Fonts*/
@font-face {font-family:'BC_Regular';src: url('fonts/BarlowCondensed-Regular.ttf') format('truetype');}
@font-face {font-family:'BC_Medium';src: url('fonts/BarlowCondensed-Medium.ttf') format('truetype');}
@font-face {font-family:'BC_Bold';src: url('fonts/BarlowCondensed-Bold.ttf') format('truetype');}
@font-face {font-family:'BC_SemiBold';src: url('fonts/BarlowCondensed-SemiBold.ttf') format('truetype');}
@font-face {font-family:'Cormorant_SemiBold';src: url('fonts/Cormorant-SemiBold.ttf') format('truetype');}
@font-face {font-family:'Cormorant_Regular';src: url('fonts/Cormorant-Regular.ttf') format('truetype');}
@font-face {font-family:'Cormorant_Bold';src: url('fonts/Cormorant-Bold.ttf') format('truetype');}
/*End of Fonts*/

@media (max-width:1920px) {  
/* Basic Reset */
* {margin: 0;padding: 0;box-sizing: border-box;}
/*Flex Css*/
.flex-wrap{flex-wrap:wrap !important;}
.justify-content-center{justify-content:center !important;}
.flex{display:flex !important}
.text-decoration-none{text-decoration: none !important;}
.text_center{text-align: center;}
.mb_8{margin-bottom:3rem}
.no-scroll {overflow-y: hidden;height:100vh}
.img_container{width:100%;overflow:hidden;}
.img_container img{max-width:100%}
.position_relative{position:relative}
.full_width{width:100%}
/*End of Flex Css*/

/*Colors*/
.white{color:#ffffff;}
.grey{color:rgba(255,255,255,0.5)}
.gold{color:#FFD700 !important}
.gray{color:rgba(255,255,255,0.8)}
.invisible{color:rgba(255,255,255,0.2)}
/*End of Colors*/

/*Home Page*/

.container{max-width:1280px}

/* Header */
.header {display: flex;align-items: center;justify-content: space-between;padding: 12px 20px;background-color: #000;color: #fff;position: fixed;top: 0;left: 0;width: 100%;z-index: 1000;}
.header.white{background:rgba(0,0,0,0)}
.logo_container {overflow: hidden;float:left;cursor:pointer}
.logo { height: 40px;float:left;margin-right:12px;}
.brand_name {font-family: Cormorant_Bold;font-size: 28px;font-weight: bold;float:left;margin-top:6px}
.nav-menu {display:flex;gap:20px;}
.nav-menu ul {list-style: none;display: flex;gap: 20px;}
.nav-menu a {color: rgba(255, 255, 255, 0.7);text-decoration: none;font-size: 20px;transition: color 0.3s ease;font-family:BC_Regular}
.nav-menu li a.nav-link{position: relative;padding-bottom:12px;}
.nav-menu a.active{color: gold;font-family: BC_SemiBold;}
.nav-menu a:hover {color: white;}
.nav-menu a.nav-link::before{content: "";position: absolute;bottom: 4px;left:50%;width:0%;height: 2px;background-color: #ffffff;border-radius:2px;transition: width 0.3s ease, left 0.3s ease;transform-origin: center;}
.nav-menu li a.nav-link:hover::before{left:20%;width:60%;}
.nav-menu li a.nav-link.active::before {content: "";position: absolute;bottom: 4px;left:15%;width:70% !important;height: 2px;background-color: #FFD700;border-radius:2px;}
.hamburger {font-size: 28px;cursor: pointer;display: none;}
.back_button{padding:8px 24px 10px;border:1px solid #ffffff;color:#ffffff;background:rgba(0,0,0,0);border-radius:24px;font-size:20px;cursor: pointer;font-family:BC_SemiBold;}
.title {font-size: 32px;font-family:Cormorant_Bold;text-align: center;flex-grow: 1;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;color:white}
/*End of Header*/

/*Parallax*/
.parallax{display:flex;}
.parallax_profile{align-items:center;padding-top:64px}
/*End of Parallax*/

/*Profile*/
.profile_content{overflow: hidden;}
.profile_content .profile_title{font-size:24px;font-family: Cormorant_Regular;}
.profile_content .profile_intro span.highlight{color: gold;}
.profile_content .profile_intro{overflow:hidden;font-size:60px;color:#ffffff;font-family:BC_Medium;}
.profile_content .profile_text{font-size:28px;overflow: hidden;font-family: BC_Regular;margin-top:24px;line-height:40px;color:white}
.profile_description{font-size:32px;line-height:48px;font-family:BC_Regular;color:white;margin:120px 0;text-align: center;}
.profile_description span.quote{color:rgba(255,255,255,0.3);font-size:64px}
.profile_photo{overflow:hidden;padding:0;text-align: center;}
.profile_photo img{width:100%}
/*End of Profile*/

/*End of Home Page*/

/*Landing Page*/
.landing_bg{height:750px;background-image:url('../images/landing_bg_dlp.jpg');background-size:cover;background-repeat: no-repeat;background-position: center;background-attachment: fixed;
  width: 100%;}
/*End of Landing Page*/

/*Portfolio*/
.parallax.portfolio{margin-top:120px;}
.portfolio_header{color:white;font-size:24px;line-height:40px;font-family:BC_Regular;color:rgba(255,255,255,0.7);}
.portfolio_header span.highlight{color: white;font-family:BC_SemiBold}
.portfolio_card{position:relative;margin:72px 0 120px;cursor: pointer;}
.portfolio_card_desc{position:absolute;padding:16px 24px;width:328px;top: 50%;left:0%;transform: translate(-50%, -50%);}
.portfolio_card_desc_alt{position:absolute;padding:16px 24px;width:328px;top: 50%;left:100%;transform: translate(-50%, -50%);}
.portfolio_card_desc.dlp{background:#68ADC4; }
.portfolio_card_desc.design_system{background:#A88724; }
.portfolio_card_desc_alt.pwa{background:#424242; }
.portfolio_card_desc_alt.iv{background:#4F5663}
.portfolio_card_desc.service_design{background:#1F5B67}
.portfolio_card_header{font-family: Cormorant_Bold;font-size:32px;line-height:40px;color:white}
.portfolio_card_text{font-family:BC_Regular;font-size:20px;line-height:28px;color:white;margin-top:12px;color:rgba(255,255,255,0.8)}
.portfolio_card_link{margin:24px 0;}
.portfolio_card_link a{font-family: BC_Regular;font-size:24px;text-decoration: none;color:white}
.portfolio_card_link a:hover{font-family: BC_SemiBold;}
.portfolio_card_banner{position:relative;display:flex;justify-content: center;flex-direction: column;}
.portfolio_card_banner img{width:100%}
/*End of Portfolio*/

/*Section Header*/
h4.section_header{font-family:Cormorant_SemiBold;font-size:40px;line-height:48px;color:white;position:relative;padding-bottom:24px;width:100%}
h4.section_header.text_decoration::before{content: "";position: absolute;bottom: 0px;left:16px;width:5%;height: 2px;background-color:gold;border-radius:2px;transition: width 0.3s ease, left 0.3s ease;transform-origin: center;}
h4.sub_header{font-size:22px;font-family:BC_Regular;line-height:32px;margin-bottom:8px;color:white;letter-spacing: 0.2px;}
h5.text_highlight{font-size:24px;font-family:BC_Regular;line-height:40px;margin:12px 0;color:white}
.custom_margin_top{margin-top:40px}
.custom_margin_top_medium{margin-top:16px}
.custom_margin_top_large{margin-top:72px}
/*End of Section Header*/

/*Section text*/
.section_text, ul.disc{font-family:BC_Regular;font-size:22px;line-height:40px;color:rgba(255,255,255,0.7)}
.section_text ul li{margin-bottom:12px;}
.section_text span.highlight, ul li span.highlight{font-family:BC_Regular;color:white}
.section_text span.highlight_bold{font-family:Cormorant_Bold;font-size:32px;line-height:48px;margin:16px 0;overflow: hidden;float:left}
ul.disc{list-style-type: disc;margin-left:24px}
ul.numeric{list-style-type: numeric;margin-left:24px}
.section_text.custom_margin_top, ul.disc.custom_margin-top{margin-top:24px}
.image_container img{max-width:98%;margin:auto;border:2px solid rgba(255,255,255,0.2);padding:1%;box-sizing: border-box;}
.image_description{font-family:Cormorant_SemiBold;font-size:16px;color:white;margin-top:12px;line-height:28px}
.iconography{text-align: center;}
.iconography img{max-width:80%;}
ul.disc ul{list-style-type:circle;margin-left:48px;margin-top:16px;}
/*End of Section Text*/

/*Parallax Section*/
.parallax.case_study{margin:64px 0;position:relative;display: flex;}
/*End of Parallax Section*/

/*Role Section*/
.role_title{font-family: BC_SemiBold;font-size:22px;line-height:40px;color:white}
.role_text{font-family: BC_Regular;font-size:22px;line-height:40px;color:gray;}
/*End of Role Section*/

/*Design process*/
.research_order{position:absolute;left:0;top:0;color:rgba(255,255,255,0.2);font-size:72px;font-family:BC_Bold}
/*End of Design process*/

/*Persona*/
.persona_container{cursor:pointer;overflow: hidden;border:1px solid rgba(255,255,255,0.1);padding-bottom:32px;border-radius:48px;background: linear-gradient(180deg, #222, #000);box-shadow: 0 0 4px rgba(255, 255, 255, 0.3);transition: transform 0.5s ease-in-out; }
.persona_container .persona_img{overflow:hidden;margin:16px;text-align: center;}
.persona_container .persona_img img{max-width:200px;}
.persona_container .persona_desc{overflow:hidden}
.persona_container .persona_desc .persona_title{font-size:28px;line-height:40px;font-family:BC_Bold;overflow: hidden;text-align: center;color:white}
.persona_container .persona_desc .persona_text{font-family:BC_Regular;color:gray;font-size:20px;line-height:28px;text-align: center;}
.persona_container .persona_desc .persona_anecdote{font-family:BC_Regular;font-size:20px;line-height:32px;color:rgba(255,255,255,0.6);padding:24px 16px 16px;position:relative;}
.persona_container .persona_desc .persona_anecdote img.open_quote{position:absolute;left:4px;top:8px;height:40px;opacity:0.2}
.persona_container .persona_desc .persona_anecdote img.close_quote{position:absolute;right:8px;bottom:8px;height:40px;opacity:0.2;rotate: 180deg;}
.persona_container .persona_desc .persona_cta{text-align: center;display: flex;flex-direction: column;align-items: center;justify-content: center;}
.persona_container .persona_desc .persona_cta button.primary{cursor:pointer;background:#ffffff;color:#000000;font-family:BC_Bold;font-size:16px;line-height:24px;border:none;border-radius:36px;padding:12px 24px 14px;margin:16px 0 0}
.persona_container .persona_desc .persona_cta button.secondary{cursor:pointer;border:1px solid #ffffff;font-family:BC_Regular;font-size:16px;line-height:24px;border-radius:24px;background:none;padding:12px 24px 14px;color:#ffffff;margin:16px 0 0}
.persona_container:hover{margin-top:-12px;transform: translateY(-12px);border:2px solid rgba(255,255,255,0.2)}
/*End of Persona*/

/*Persona Overlay*/
.overlay {position: fixed;top: 0;left: 0;width: 100%;height: 100vh;background:#040404;flex-direction:column;display: none;justify-content: center;align-items: center;z-index:1001;}
.overlay-title{font-size: 28px;font-family:Cormorant_Bold;text-align: center;flex-grow: 1;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;color:white}
.overlay-content {background:#040404;width:100%;overflow: hidden;display: flex;flex-direction: column;height:100vh;color:#ffffff}
.overlay-header {background: #000000;color: white;width:100%;padding: 15px;display: flex;justify-content: space-between;align-items: center;position: sticky;top: 0;z-index: 1002;}
.overlay-header .btn-close{background:rgba(0,0,0,0);border:none;cursor:pointer}
.overlay-body {height:100vh;overflow-y: auto;padding: 16px;box-sizing: border-box;width:100%}
.overlay-body .row.flex_box{display: flex;overflow: hidden; border-bottom:1px solid #b4b4b4;border-top:1px solid #b4b4b4;padding:16px 0}
.overlay-body .persona_overlay_img{border-radius:50%;overflow: hidden;text-align: center;width:150px;height:150px;padding:4px;box-sizing: border-box;border-radius:50%;border:1px solid rgba(255,255,255,0.25)}
.overlay-body .persona_overlay_img img{width:100%;border-radius: 50%;}
.overlay-body .persona_overlay_desc{flex: 1;}
.overlay-body .persona_overlay_desc .persona_overlay_title{font-size:36px;font-family: BC_SemiBold;line-height:42px;color:gold}
.overlay-body .persona_overlay_desc .persona_overlay_designation{font-size:16px;font-family: BC_Regular;line-height:24px;color:rgba(255,255,255,0.7);}
.overlay-body .persona_overlay_desc .persona_overlay_personal_details{font-size:18px;font-family: BC_Regular;line-height:28px;color:rgba(255,255,255,0.9);margin-top:8px}
.overlay-body .persona_overlay_desc .persona_overlay_anecdote{font-family: Cormorant_Regular;font-size:22px;color:#ffffff;line-height:32px;margin-top:8px}
.overlay-body .persona_overlay_section_title img{float:left;width:32px;}
.overlay-body .persona_overlay_section_title{font-size:28px;line-height:32px;font-family:BC_SemiBold;color:rgba(255,255,255,1);padding:20px 0;box-sizing: border-box;}
.overlay-body .persona_overlay_section_desc{font-size:20px;font-family: BC_Regular;line-height:32px;color:#ffffff}
.overlay-body .persona_overlay_section_desc ul{list-style-type: none;}
.overlay-body .persona_overlay_section_desc ul li{margin-bottom:12px;color:#b4b4b4;font-size:18px}
.overlay-body .persona_overlay_section_desc ul li span.highlight{font-family: BC_Regular;color:rgba(255,255,255,1)}
.overlay-body .section_container{border:1px solid rgba(255,255,255,0.1);padding-bottom:32px;border-radius:24px;background: linear-gradient(180deg, #222, #000);box-shadow: 0 0 4px rgba(255, 255, 255, 0.3);box-sizing: border-box;padding:16px;margin-top:32px}
/*End of Persona Overlay*/

/*Section Image*/
.section_image img{width:100%}
.section_margin{margin-top:150px}
/*End of Section Image*/

/*About*/
.about_margin{margin-top:40px}
.about_heading{font-size:32px;font-family: Cormorant_Bold;margin:24px 0 12px;color:#FFD700}
.about_text{font-size:28px;font-family:BC_Regular;line-height:48px;color:rgba(255,255,255,0.7)}
/*End of About*/

/*Certification*/
.certification img{float:left;width:200px;margin-right:32px;}
/*End of Certification*/

/*Portfolio*/
.portfolio_content{position:absolute;left:12px;bottom:0;width:100%;padding:72px 0 40px;background: linear-gradient(0deg, rgba(1,1,1,1) 0%, rgba(1,1,1,0.7) 55%, rgba(44,44,44,0) 100%);}
.portfolio_title_header{font-family: Cormorant_Bold;font-size:28px;line-height:40px;padding:0 32px;text-shadow: 2px 2px #000000;box-sizing: border-box;color:#ffffff}
.portfolio_title_subheader{font-family:BC_Regular;font-size:20px;line-height:32px;padding:0 32px;color:rgba(255,255,255,0.6);box-sizing: border-box;}
/*End of Portfolio*/

/*Copyright*/
.copyright{font-size:20px;line-height:2px;color:rgba(255,255,255,0.6);font-family:BC_Regular;padding:24px 0 32px;border-top:1px solid #808080;text-align: center;margin-top:72px}
/*End of Copyright*/

/* Fade-in Animation */
.fade_in{opacity: 0;animation: fadeIn 1s ease-in-out 3s forwards;}
.fade_in_top, .fade_in_top_parallax {opacity: 0;transform: translateY(-20px);transition: opacity 1s ease, transform 1s ease;}
.fade_in_bottom, .fade_in_bottom_parallax {opacity: 0;transform: translateY(20px);transition: opacity 1s ease, transform 1s ease;}
.fade_in_left, .fade_in_left_parallax {opacity: 0;transform: translateX(-20px);transition: opacity 1s ease, transform 1s ease;}
.fade_in_right, .fade_in_right_parallax {opacity: 0;transform: translateX(20px);transition: opacity 1s ease, transform 1s ease;}
.visible{opacity: 1;transform: translateY(0);transform:translateX(0);}  
.delay_1{transition-delay: 1s; }
.delay_15{transition-delay: 1.5s; }
.delay_2{transition-delay: 2s; }
.delay_3{transition-delay: 3s; }
.delay_4{transition-delay: 4s; }
.delay_5{transition-delay: 5s; }
.delay_6{transition-delay: 6s; }
.delay_7{transition-delay: 7s; }
/*End of Fade-in Animation*/

.reveal-image {width:100%;opacity: 0;transform: translateX(-20px);animation: fadeInUp 1s ease-in-out forwards;}
@keyframes fadeInUp {
  0% {opacity: 0;transform: translateX(-20px);}
  100% {opacity: 1;transform: translateX(0);}
}
@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
@keyframes heartbeat {
  0% { transform: scale(1); }
  25% { transform: scale(1.2); }
  50% { transform: scale(1); }
  75% { transform: scale(1.2); }
  100% { transform: scale(1); }
}  
.heartbeat {animation: heartbeat 2s infinite ease-in-out;transform-origin: center;} 
}

/*WIP Animation*/
section.bg_white{background:#ffffff;margin-top:48px;padding-bottom:48px;color:#30b5b5}
.wip{text-align: center;}
.wip img{width:400px;}
/*End of WIP Animation*/

/* Slider */
.slider,.slider_design {position: relative;max-width:1280px;overflow: hidden;border-radius: 12px;box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);}
.slider .slides, .slider_design .slides_design {display: flex;width: 300%;transition: transform 0.5s ease-in-out;}
.slider .slide, .slider_design .slide_design {width: 100%;flex: 1 0 100%;overflow: hidden;}
.slider .slide img, .slider_design .slide_design img {max-width:1280px;display: block;}
.slider .prev, .slider .next, .slider_design .prev, .slider_design .next {position: absolute;top: 50%;transform: translateY(-50%);background: rgba(0, 0, 0, 0.5);color: white;border: none;padding: 10px 15px;cursor: pointer;font-size: 24px;border-radius: 5px;}
.slider .prev, .slider_design .prev { left: 10px; }
.slider .next, .slider_design .next { right: 10px; }
.slider .prev:hover, .slider .next:hover, .slider_design .prev:hover, .slider_design .next:hover {background: black;}
.slider_small{position:relative;max-width:100%;overflow:hidden;box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);}
.slider_small .slides_small {display: flex;width: 400%;transition: transform 0.5s ease-in-out;}
.slider_small .slide_small {width:100%;flex:1 0 100%;overflow: hidden;display: flex;align-items: center;}
.slider_small .slide_small img {max-width:636px;display:block;border-radius:12px;box-shadow:0 4px 10px rgba(0, 0, 0, 0.2)}
.slider_small .prev, .next {position: absolute;top: 50%;transform: translateY(-50%);background: rgba(0, 0, 0, 0.5);color: white;border: none;padding: 10px 15px;cursor: pointer;font-size: 24px;border-radius: 5px;}
.slider_small .prev { left: 10px; }
.slider_small .next { right: 10px; }
.slider_small .prev:hover, .slider_small .next:hover {background: black;}
/*End of Slider*/

/*About Page*/
.about_icon img{max-width:150px}
/*End of About Page*/

/*End of Web - 1024px & Above*/

/* Mobile Styles */
@media (max-width: 767px) {
  /*Header*/  
  body{padding-top: 60px;}
  .header {padding:10px 16px;}
  .logo_container{margin:auto}
  .hamburger {display: block;cursor: pointer;}
  .nav-menu {display: none;position: fixed;top: 60px;left: 0;width: 100%;background: rgba(0, 0, 0, 0.9);flex-direction: column;text-align: center;padding: 10px 0;height:100vh;}
  .nav-menu.active {display: flex;}
  .nav-menu ul {flex-direction: column;text-align: center;width: 100%;}
  .nav-menu li {padding: 15px 0;}
  .nav-menu a {font-size: 20px;color: white;}
  .title { max-width:75%;float:left;font-size:24px}
  /*End of Header*/

  /*Profile*/
  .profile_content .profile_intro{font-size:40px;margin-top:32px}
  .profile_content .profile_text{font-size:24px;}
  .profile_photo img{margin-left:15%;max-width:70%; margin-top:48px;}
  /*End of Profile*/

  /*Portfolio*/
  .portfolio_card{margin-bottom:64px;}
  .section_header{font-size:40px}
  .section_text, .section_subtext{font-size:24px}
  /*End of Portfolio*/

  /*About*/
  .certification img{float: none;margin-bottom:16px;width:150px}
  .about_heading, .about_text, .section_text, .certification, .portfolio_card, .profile_content,.section_header, .section_subtext, .contact_img {text-align: center;}
  .about_text{margin-bottom:48px;font-size:24px;line-height:40px}
  .about_icon img{max-width:150px}
  .contact_img{margin-top:32px}
  /*End of About*/

  /*Copyright*/
  .copyright{overflow:hidden;line-height:24px;padding:12px 0;margin-top:0px}
  /*End of Copyright*/
}
