/*
==========================================
Projectpedia Workshop
==========================================
*/

:root{

--pp-primary:#2563EB;

--pp-primary-dark:#1E40AF;

--pp-success:#10B981;

--pp-warning:#F59E0B;

--pp-danger:#EF4444;

--pp-text:#111827;

--pp-muted:#6B7280;

--pp-border:#E5E7EB;

--pp-bg:#F5F7FB;

--pp-white:#fff;

--pp-radius:18px;

--pp-shadow:
0 12px 40px rgba(15,23,42,.08);

--pp-transition:.25s ease;

--pp-container:1280px;

}

.single-workshop .site-content .ast-container {
    display: block !important;
}

body.single-workshop{

background:var(--pp-bg);

}

.pp-workshop-page{

padding-bottom:80px;

}

.pp-container{

max-width:var(--pp-container);

margin:auto;

padding:0 20px;

}

.pp-workshop-container{

display:grid;

grid-template-columns:2fr 380px;

gap:40px;

max-width:1300px;

margin:auto;

padding:50px 20px;

align-items:start;

}

.pp-workshop-content{

display:flex;

flex-direction:column;

gap:30px;

}

.pp-workshop-sidebar{

position:sticky;

top:30px;

}


.pp-card{

	background:#fff;

	border-radius:18px;

	padding:35px;

	box-shadow:var(--pp-shadow);

	transition:.25s;

	margin-bottom: 30px;

}

.related-card{

    background:transparent;

    border-radius:18px;

    padding:15px;

/*    box-shadow:var(--pp-shadow);*/

    transition:.25s;

    margin-bottom: 30px;

}

.download-card{

    background:#fff;

    border-radius:18px;

    padding:15px;

   box-shadow:var(--pp-shadow);

    transition:.25s;

    margin-bottom: 30px;
}

.pp-card:hover{

transform:translateY(-2px);

}

.pp-card h2{

font-size:26px;

margin-bottom:22px;

font-weight:700;

color:var(--pp-text);

}

.pp-card h3{

font-size:22px;

margin-bottom:18px;

}

.pp-card p{

line-height:1.8;

font-size:17px;

color:#4B5563;

}

.pp-card ul{

padding-left:0px;

}

.pp-card li{

margin-bottom:12px;

}

.pp-btn{

display:inline-flex;

align-items:center;

justify-content:center;

width:100%;

padding:16px;

border-radius:12px;

background:#2563EB;

color:#fff;

font-weight:700;

text-decoration:none;

transition:.25s;

cursor:pointer;

border:none;

}

.pp-btn:hover{

background:#1E40AF;

transform:translateY(-2px);

}

.pp-btn.disabled{

opacity:.5;

pointer-events:none;

}

.pp-editor{

font-size:17px;

line-height:1.9;

color:#444;

}

.pp-badge{

display:inline-flex;

align-items:center;

padding:8px 14px;

border-radius:40px;

font-size:14px;

font-weight:600;

background:#EEF4FF;

color:#2563EB;

}

img{

max-width:100%;

height:auto;

display:block;

}

.pp-card{

opacity:0;

transform:translateY(20px);

animation:ppFade .5s forwards;

}


/*==============================
Hero
===============================*/

.pp-workshop-hero{

margin-bottom:50px;

}

.pp-workshop-hero-bg{

height:520px;

background-size:cover;

background-position:center;

background-repeat:no-repeat;

border-radius:0 0 30px 30px;

overflow:hidden;

position:relative;

}

.pp-hero-overlay{

height:100%;

display:flex;

align-items:flex-end;

padding:70px 0;

background:linear-gradient(

180deg,

rgba(0,0,0,.15),

rgba(0,0,0,.75)

);

}

.pp-container{

width:1200px;

margin:auto;

padding:0 20px;

}

.pp-workshop-hero h1{

color:#fff;

font-size:46px;

font-weight:700;

margin-bottom:15px;

line-height:1.2;

}

.pp-workshop-hero .subtitle{

font-size:20px;

color:#eee;

max-width:700px;

margin-bottom:25px;

}

.pp-meta{

display:flex;

gap:30px;

color:#fff;

font-weight:500;

}

.pp-badges{

display:flex;

gap:10px;

margin-bottom:20px;

}

.badge{

padding:8px 18px;

border-radius:50px;

font-size:14px;

font-weight:600;

}

.badge-status {
    background: #2563eb;
    color: #fff;
    position: relative !important;
}
.badge-mode{

background:#fff;

color:#111;

position: relative !important;

}

/*==============================
Registration Card
===============================*/

.pp-registration-card{

background:#fff;

border-radius:24px;

padding:30px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

margin-bottom: 30px;

}

.pp-price-box{

text-align:center;

margin-bottom:30px;

}

.pp-old-price{

font-size:22px;

color:#999;

text-decoration:line-through;

margin-bottom:6px;

}

.pp-new-price{

font-size:46px;

font-weight:700;

color:#2563eb;

}

.pp-free{

font-size:42px;

font-weight:700;

color:#10b981;

}

.pp-seat-wrapper{

margin-bottom:30px;

}

.pp-seat-text{

font-size:14px;

margin-bottom:10px;

font-weight:600;

}

.pp-seat-bar{

height:8px;

background:#ececec;

border-radius:100px;

overflow:hidden;

}

.pp-seat-bar span{

display:block;

height:100%;

background:#2563eb;

border-radius:100px;

}

.pp-card-meta{

list-style:none;

padding:0;

margin:0 0 30px;

}

.pp-card-meta li{

display:flex;

justify-content:space-between;

padding:14px 0;

border-bottom:1px solid #eee;

font-size:15px;

}

.pp-card-meta strong{

font-weight:600;

color:#333;

}

.pp-card-meta span{

color:#666;

}

.pp-btn{

display:block;

width:100%;

text-align:center;

padding:16px;

border:none;

border-radius:12px;

background:#2563eb;

color:#fff;

font-size:17px;

font-weight:600;

cursor:pointer;

transition:.25s;

text-decoration:none;

}

.pp-btn:hover{

background:#1d4ed8;

color:#fff;

}

.pp-btn.disabled{

background:#d1d5db;

cursor:not-allowed;

}

.pp-includes-list{

list-style:none;

padding:0;

margin:0;

}

.pp-includes-list li{

padding:12px 0;

border-bottom:1px solid #eee;

font-size:16px;

}

/*=========================================
Instructor Section
=========================================*/

.pp-section-title{

font-size:34px;

margin-bottom:35px;

font-weight:700;

}

.pp-instructors{

display:flex;

flex-direction:column;

gap:30px;

}

.pp-instructor{

display:flex;

gap:30px;

padding-bottom:30px;

border-bottom:1px solid #eee;

align-items:flex-start;

}

.pp-instructor:last-child{

border:none;

padding-bottom:0;

}

.pp-instructor-image{

width:150px;

flex-shrink:0;

}

.pp-instructor-image img{

width:150px;

height:150px;

border-radius:50%;

object-fit:cover;

box-shadow:0 8px 25px rgba(0,0,0,.08);

}

.pp-instructor-content{

flex:1;

}

.pp-instructor-content h3{

margin:0 0 8px;

font-size:28px;

font-weight:700;

}

.pp-designation{

font-size:16px;

color:#2563eb;

font-weight:600;

margin-bottom:20px;

}

.pp-bio{

line-height:1.8;

color:#555;

}

.pp-linkedin{

display:inline-block;

margin-top:20px;

padding:10px 20px;

border-radius:8px;

background:#0A66C2;

color:#fff;

text-decoration:none;

font-weight:600;

transition:.25s;

}

.pp-linkedin:hover{

background:#004182;

color:#fff;

}


/*-----------------------------------
Learn Section
-----------------------------------*/

.pp-learn-grid{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:24px;

margin-top:30px;

}

.pp-learn-card{

background:#fff;

border:1px solid #ececec;

border-radius:18px;

padding:28px;

transition:.3s;

}

.pp-learn-card:hover{

transform:translateY(-6px);

box-shadow:0 18px 40px rgba(0,0,0,.08);

}

.pp-learn-icon{

width:70px;

height:70px;

background:#f5f7fb;

border-radius:18px;

display:flex;

align-items:center;

justify-content:center;

margin-bottom:18px;

}

.pp-learn-icon img{

width:36px;

height:36px;

object-fit:contain;

}

.pp-learn-card h3{

margin-bottom:12px;

font-size:22px;

}

.pp-learn-card p{

color:#666;

line-height:1.8;

}



/*======================================
Benefits
======================================*/

.pp-benefits-grid{

display:grid;

grid-template-columns:repeat(2,minmax(0,1fr));

gap:18px;

margin-top:30px;

}

.pp-benefit-item{

display:flex;

align-items:flex-start;

gap:16px;

padding:20px;

background:#ffffff;

border:1px solid #edf0f5;

border-radius:16px;

transition:.25s;

}

.pp-benefit-item:hover{

border-color:#2563eb;

transform:translateY(-3px);

box-shadow:0 12px 28px rgba(0,0,0,.08);

}

.pp-benefit-icon{

width:42px;

height:42px;

flex-shrink:0;

border-radius:50%;

background:#2563eb;

color:#fff;

display:flex;

align-items:center;

justify-content:center;

font-size:20px;

font-weight:700;

}

.pp-benefit-content{

font-size:16px;

font-weight:500;

line-height:1.7;

color:#444;

}


/*=========================================
Requirements
=========================================*/

.pp-requirements{

margin-top:35px;

display:flex;

flex-direction:column;

gap:18px;

}

.pp-requirement{

display:flex;

align-items:flex-start;

gap:18px;

padding:22px;

border:1px solid #ececec;

border-radius:16px;

background:#fff;

transition:.3s;

}

.pp-requirement:hover{

border-color:#2563eb;

transform:translateX(6px);

box-shadow:0 10px 28px rgba(0,0,0,.08);

}

.pp-requirement-icon{

width:42px;

height:42px;

flex-shrink:0;

border-radius:50%;

background:#22c55e;

color:#fff;

display:flex;

align-items:center;

justify-content:center;

font-size:20px;

font-weight:bold;

}

.pp-requirement-text{

flex:1;

font-size:16px;

line-height:1.8;

color:#444;

}

/*==================================
Workshop Resources
==================================*/

.pp-resource-grid{

display:flex;

flex-direction:column;

gap:20px;

margin-top:30px;

}

.pp-resource-card{

display:flex;

align-items:center;

gap:20px;

padding:22px;

border:1px solid #ececec;

border-radius:18px;

background:#fff;

transition:.3s;

}

.pp-resource-card:hover{

box-shadow:0 15px 40px rgba(0,0,0,.08);

transform:translateY(-4px);

}

.pp-resource-icon{

width:70px;

height:70px;

border-radius:16px;

background:#f4f6fb;

display:flex;

align-items:center;

justify-content:center;

flex-shrink:0;

}

.pp-resource-icon img{

width:42px;

height:42px;

object-fit:contain;

}

.pp-resource-info{

flex:1;

}

.pp-resource-info h3{

margin-bottom:8px;

font-size:20px;

}

.pp-resource-info p{

color:#666;

line-height:1.7;

margin:0;

}

.pp-download-btn{

display:inline-block;

padding:12px 22px;

background:#2563eb;

color:#fff;

border-radius:10px;

text-decoration:none;

font-weight:600;

transition:.25s;

}

.pp-download-btn:hover{

background:#174dc7;

color:#fff;

}

.pp-resource-lock{

display:inline-block;

padding:10px 18px;

background:#f5f5f5;

border-radius:10px;

font-weight:600;

color:#666;

}

/*==================================
FAQ
==================================*/

.pp-faq-list{

margin-top:30px;

display:flex;

flex-direction:column;

gap:18px;

}

.pp-faq-item{

border:1px solid #ececec;

border-radius:18px;

overflow:hidden;

background:#fff;

transition:.3s;

}

.pp-faq-item:hover{

box-shadow:0 12px 30px rgba(0,0,0,.05);

}

.pp-faq-question{

width:100%;

display:flex;

justify-content:space-between;

align-items:center;

padding:22px 26px;

border:none;

background:#fff;

cursor:pointer;

font-size:18px;

font-weight:600;

text-align:left;

}

.pp-faq-icon{

width:34px;

height:34px;

border-radius:50%;

background:#2563eb;

color:#fff;

display:flex;

align-items:center;

justify-content:center;

font-size:22px;

transition:.3s;

flex-shrink:0;

}

.pp-faq-answer{

max-height:0;

overflow:hidden;

transition:max-height .35s ease;

}

.pp-faq-answer-inner{

padding:0 26px 24px;

line-height:1.8;

color:#666;

}

.pp-faq-item.active .pp-faq-answer{

max-height:600px;

}

.pp-faq-item.active .pp-faq-icon{

transform:rotate(45deg);

background:#1e40af;

}
/*=========================================
Workshop Gallery
=========================================*/

.pp-gallery-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:18px;

margin-top:35px;

}

.pp-gallery-item{

display:block;

overflow:hidden;

border-radius:18px;

position:relative;

background:#eee;

aspect-ratio:1;

}

.pp-gallery-item img{

width:100%;

height:100%;

object-fit:cover;

display:block;

transition:.45s;

}

.pp-gallery-item:hover img{

transform:scale(1.08);

}

.pp-gallery-item::after{

content:"";

position:absolute;

inset:0;

background:rgba(0,0,0,.18);

opacity:0;

transition:.3s;

}

.pp-gallery-item:hover::after{

opacity:1;

}

/*=====================================
Instructions
=====================================*/

.pp-instructions{

margin-top:35px;

display:flex;

flex-direction:column;

gap:24px;

}

.pp-instruction{

display:flex;

align-items:flex-start;

gap:24px;

padding:28px;

background:#fff;

border:1px solid #ececec;

border-radius:18px;

transition:.3s;

position:relative;

overflow:hidden;

}

.pp-instruction::before{

content:"";

position:absolute;

left:0;

top:0;

width:5px;

height:100%;

background:#2563eb;

}

.pp-instruction:hover{

transform:translateY(-5px);

box-shadow:0 18px 40px rgba(0,0,0,.08);

}

.pp-step-number{

width:58px;

height:58px;

flex-shrink:0;

border-radius:50%;

background:#2563eb;

color:#fff;

display:flex;

align-items:center;

justify-content:center;

font-size:22px;

font-weight:700;

}

.pp-step-content{

flex:1;

}

.pp-step-content h3{

margin:0 0 12px;

font-size:22px;

font-weight:700;

color:#222;

}

.pp-step-content p{

margin:0;

line-height:1.8;

color:#666;

font-size:16px;

}

.pp-download-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:18px;
margin-top:30px;
}

.pp-download-card{
display:flex;
align-items:center;
gap:18px;
padding:22px;
border-radius:14px;
background:#fff;
border:1px solid #ececec;
text-decoration:none;
transition:.3s;
}

.pp-download-card:hover{
transform:translateY(-4px);
box-shadow:0 12px 35px rgba(0,0,0,.08);
}

.pp-download-card .icon{
font-size:34px;
}

.pp-download-card strong{
display:block;
font-size:18px;
color:#222;
}

.pp-download-card span{
display:block;
margin-top:5px;
color:#777;
font-size:14px;
}

.pp-download-certificate{
background:#fff9e8;
border-color:#ffe08a;
}

.pp-locked-box{
text-align:center;
padding:60px 30px;
background:#fafafa;
border-radius:16px;
border:2px dashed #ddd;
}

.pp-locked-box .lock-icon{
font-size:48px;
margin-bottom:18px;
}

.pp-share{
text-align:center;
}

.pp-share h2{
margin-bottom:25px;
}

.share-links{
display:flex;
flex-wrap:wrap;
justify-content:center;
gap:15px;
}

.share-links a,
.share-links button{

display:flex;
align-items:center;
justify-content:center;
gap:10px;

padding:14px 24px;

border:none;
border-radius:10px;

font-size:15px;
font-weight:600;

cursor:pointer;

text-decoration:none;

transition:.25s;
}

.share-links i{
font-size:17px;
}

/* Facebook */

.share-facebook{
background:#1877F2;
color:#fff;
}

.share-facebook:hover{
background:#166fe5;
}

/* LinkedIn */

.share-linkedin{
background:#0A66C2;
color:#fff;
}

.share-linkedin:hover{
background:#0958a8;
}

/* WhatsApp */

.share-whatsapp{
background:#25D366;
color:#fff;
}

.share-whatsapp:hover{
background:#1ebe5b;
}

/* Twitter X */

.share-twitter{
background:#000;
color:#fff;
}

.share-twitter:hover{
background:#222;
}

/* Copy */

.share-copy{
background:#f5f5f5;
color:#333;
}

.share-copy:hover{
background:#e9e9e9;
}

.pp-related-workshops{
margin-top:0px;
}

.pp-related-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
gap:30px;
margin-top:35px;
}

.pp-related-card{
background:#fff;
border-radius:16px;
overflow:hidden;
border:1px solid #ececec;
box-shadow:0 8px 25px rgba(0,0,0,.06);
transition:.3s;
display:flex;
flex-direction:column;
}

.pp-related-card:hover{
transform:translateY(-6px);
box-shadow:0 18px 40px rgba(0,0,0,.12);
}

.pp-related-image{
position:relative;
display:block;
height:220px;
overflow:hidden;
}

.pp-related-image img{
width:100%;
height:220px;
object-fit:cover;
transition:.4s;
}

.pp-related-card:hover img{
transform:scale(1.05);
}

.pp-status-badge{
position:absolute;
top:16px;
left:16px;
background:#2563eb;
color:#fff;
padding:7px 14px;
border-radius:50px;
font-size:13px;
font-weight:600;
}

.pp-related-content{
padding:24px;
display:flex;
flex-direction:column;
flex:1;
}

.pp-related-content h3{
margin:0;
font-size:22px;
line-height:1.4;
}

.pp-related-content h3 a{
color:#222;
text-decoration:none;
}

.pp-related-content .subtitle{
margin:12px 0 18px;
color:#666;
font-size:15px;
line-height:1.6;
}

.pp-related-meta{
display: grid;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
    font-size: 15px;
    color: #444;
    grid-template-columns: 1fr 1fr;
}

.pp-related-meta div{
display:flex;
align-items:center;
gap:8px;
}

.pp-related-price{
margin-top:auto;
margin-bottom:20px;
}

.pp-related-price del{
display:block;
color:#999;
font-size:15px;
margin-bottom:5px;
}

.pp-related-price strong{
font-size:26px;
font-weight:700;
color:#2563eb;
}

.pp-related-price .free{
font-size:26px;
font-weight:700;
color:#16a34a;
}

.pp-related-btn{
display:block;
width:100%;
text-align:center;
padding:14px;
background:#2563eb;
color:#fff;
border-radius:10px;
font-weight:600;
text-decoration:none;
transition:.3s;
}

.pp-related-btn:hover{
background:#2563eb;
color:#fff;
}


.related-container{
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;
    max-width: 1400px;
    margin: auto;
    padding: 20px;
    align-items: start;
}

.pp-related-body a{
	color: #000!important;
}

/*==================================================
Registration Modal
==================================================*/

.pp-modal{
    position:fixed;
    inset:0;
    display:none;
    align-items:flex-start;
    justify-content:center;
    padding:40px 20px;
    z-index:2147483647;
}

.pp-modal.active{
    display:flex;
}

.pp-modal-overlay{

    position:absolute;
    inset:0;

    background:rgba(0,0,0,.55);

    backdrop-filter:blur(4px);

    -webkit-backdrop-filter:blur(4px);

}

.pp-modal-dialog{
    position:relative;
    width:95%;
    max-width:750px;
    max-height:calc(100vh - 80px);

    display:flex;
    flex-direction:column;

    overflow:hidden;

    background:#fff;
    border-radius:12px;
    box-shadow:0 20px 60px rgba(0,0,0,.25);

    animation:ppModal .25s ease;
}

@keyframes ppModal{

    from{

        opacity:0;
        transform:translateY(30px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

.pp-modal-header{

    display:flex;
    justify-content:space-between;
    align-items:flex-start;

    padding:25px;

    border-bottom:1px solid #ececec;

    flex-shrink:0;

}

.pp-modal-header h3{

    margin:0 0 10px;

}

.pp-modal-meta{

    font-size:14px;
    color:#666;

}

.pp-modal-body{

    padding:25px;

    overflow-y:auto;

    flex:1;

}

.pp-modal-close{

    width:40px;

    height:40px;

    border:none;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#f5f5f5;

    cursor:pointer;

    transition:.2s;

}

.pp-modal-close:hover{

    background:#e5e5e5;

}

body.pp-modal-open{

    overflow:hidden;

}

.pp-modal-footer{

    flex-shrink:0;

}

@keyframes ppFade{

to{

opacity:1;

transform:none;

}

}

@media(max-width:1024px){

.pp-workshop-container{

grid-template-columns:1fr;

}

.pp-workshop-sidebar{

position:relative;

top:0;

order:-1;

}

.pp-gallery-grid{

	grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

	.pp-card{

		padding:24px;

	}

	.pp-card h2{

		font-size:22px;

	}

	.pp-workshop-container{

		margin:30px auto;

		gap:24px;

	}

	.pp-instructor{

		flex-direction:column;

		text-align:center;

	}

	.pp-instructor-image{

		width:100%;

	}

	.pp-instructor-image img{

		margin:auto;

	}

	.pp-designation{

		justify-content:center;

	}

	.pp-learn-grid{

		grid-template-columns:1fr;

	}

	.pp-benefits-grid{

		grid-template-columns:1fr;

	}

	.pp-resource-card{

		flex-direction:column;

		align-items:flex-start;

	}

	.pp-resource-action{

		width:100%;

	}

	.pp-download-btn{

		width:100%;

		text-align:center;

	}

	.pp-gallery-grid{

		grid-template-columns:1fr;

	}

	.pp-instruction{

		flex-direction:column;

	}

	.pp-step-number{

		margin-bottom:10px;

	}

	.pp-related-grid{
        grid-template-columns:1fr;
    }

    .pp-related-content{
        padding:20px;
    }

    .pp-modal-dialog{

        width:95%;
        max-height:95vh;

    }

}