/* ============================================================
   Drogosis — custom off-canvas header (matches legacy design)
   ============================================================ */

/* Transparent overlay header (raised specificity to beat customizer CSS) */
.jupiterx-site .jupiterx-header,
.jupiterx-header{
	background:transparent !important;
	background-color:transparent !important;
	box-shadow:none !important;
	border:0 !important;
	position:absolute !important;
	top:0; left:0; right:0;
	width:100%;
	z-index:1000;
	min-height:0 !important;
	padding:0 !important;
}
/* Offset the fixed header below the WP admin bar (logged-in only) */
body.admin-bar .jupiterx-site .jupiterx-header,
body.admin-bar .jupiterx-header{ top:32px; }
@media (max-width:782px){
	body.admin-bar .jupiterx-site .jupiterx-header,
	body.admin-bar .jupiterx-header{ top:46px; }
}

/* Remove the default Jupiter X navbar (fallback to server-side removal) */
.jupiterx-header .jupiterx-site-navbar,
.jupiterx-site-navbar{ display:none !important; }
/* Hide Jupiter X footer entirely (copyright lives in the off-canvas panel) */
.jupiterx-footer{ display:none !important; }

/* ---- shared vertical menu (lowercase, gold active) ---- */
.dg-vmenu{ display:block; }
.dg-vmenu > a{
	display:block; color:#eaeaea;
	text-transform:lowercase; letter-spacing:.3px;
	font-size:18px; line-height:1; padding:11px 0;
	text-decoration:none; transition:color .2s ease;
}
.dg-vmenu > a:hover{ color:#fff; }
.dg-vmenu > a.active{ color:#a28758; }          /* gold, as production */
.dg-vlang{ display:flex; gap:12px; margin-top:22px; }
.dg-vlang a{ display:inline-flex; opacity:.85; transition:opacity .2s ease; }
.dg-vlang a.active, .dg-vlang a:hover{ opacity:1; }
.dg-vlang img{ width:20px; height:auto; display:block; }
.dg-vcopy{ color:#7a7a7a; font-size:12px; letter-spacing:.3px; line-height:1.7; }
.dg-vcopy a{ color:#9a9a9a; text-decoration:none; }
.dg-vcopy a:hover{ color:#fff; }
.dg-copy-by{ white-space:nowrap; }

/* ---- mobile hamburger (default; hidden on desktop) ---- */
.dg-burger{
	position:fixed; top:26px; right:30px;
	width:26px; height:18px;
	background:none; border:0; cursor:pointer; padding:0;
	color:#cfcfcf; z-index:1050; transition:color .25s ease;
}
.dg-burger:hover{ color:#fff; }
.dg-burger span{
	position:absolute; left:0; right:0; height:2px;
	background:currentColor; transition:.25s ease;
}
.dg-burger span:nth-child(1){ top:0; }
.dg-burger span:nth-child(2){ top:8px; }
.dg-burger span:nth-child(3){ top:16px; }
body.admin-bar .dg-burger{ top:58px; }

/* ---- mobile off-canvas panel ---- */
.dg-overlay{
	position:fixed; inset:0; background:rgba(0,0,0,.55);
	opacity:0; visibility:hidden;
	transition:opacity .3s ease, visibility .3s ease; z-index:1099;
}
.dg-overlay.show{ opacity:1; visibility:visible; }
.dg-offcanvas{
	position:fixed; top:0; right:-360px;
	width:300px; max-width:85vw; height:100%;
	background:#1f1f1f; z-index:1100;
	transition:right .38s cubic-bezier(.4,0,.2,1);
	padding:92px 44px 40px; box-sizing:border-box;
	display:flex; flex-direction:column;
}
.dg-offcanvas.open{ right:0; }
.dg-offcanvas .dg-vcopy{ margin-top:auto; }
.dg-close{
	position:absolute; top:24px; right:32px;
	color:#8f8f8f; font-size:30px; line-height:1;
	text-decoration:none; transition:color .25s ease;
}
.dg-close:hover{ color:#fff; }

/* ---- desktop left sidebar (>=1024px), content offset right ---- */
.dg-sidebar{ display:none; }
@media (min-width:1024px){
	.dg-burger{ display:none !important; }
	.dg-sidebar{
		display:flex; flex-direction:column; justify-content:center;
		position:fixed; top:0; left:0;
		width:250px; height:100vh;
		padding:40px 42px; box-sizing:border-box; z-index:1000;
	}
	.dg-sidebar .dg-vcopy{ position:absolute; left:42px; bottom:34px; }
	body.admin-bar .dg-sidebar{ top:32px; height:calc(100vh - 32px); }
	.jupiterx-main{ margin-left:250px !important; }
}

/* ============================================================
   Dark theme baseline + Works (ΕΡΓΑ) grid
   ============================================================ */
body,
.jupiterx-main,
.jupiterx-site{ background:#272727 !important; }

/* Works page: Elementor boxes its section at the kit content-width on wide screens. Break the grid
   out to the full content area (viewport minus the 250px sidebar) so it fills like production. */
.page-id-4608 .elementor-section > .elementor-container,
.page-id-11250 .elementor-section > .elementor-container{ max-width:100% !important; width:100% !important; }

.dg-works{ padding:110px 40px 70px; max-width:none; margin:0; }
/* production = 3 columns that scale to fill the width (JS keeps row-first order) */
.dg-works-grid{ columns:3; column-gap:26px; position:relative; }
.dg-work{ display:block; width:100%; text-decoration:none; margin:0 0 30px; break-inside:avoid; }
@media (min-width:1024px){
	.page-id-4608 .dg-works, .page-id-11250 .dg-works{
		width:calc(100vw - 250px) !important; max-width:none !important;
		margin-left:calc(50% - 50vw + 125px) !important; margin-right:0 !important;
		box-sizing:border-box;
	}
}
@media (max-width:900px){ .dg-works-grid{ columns:2; } }
@media (max-width:560px){ .dg-works-grid{ columns:1; } .dg-works{ padding:96px 20px 50px; } }
.dg-work-thumb{
	position:relative; display:block; overflow:hidden;
	background:#1a1a1a;
}
.dg-work-thumb img{
	display:block; width:100%; height:auto;   /* natural aspect ratio, no crop */
	transition:transform .6s ease;
}
.dg-work-thumb::after{
	content:''; position:absolute; inset:0;
	background:rgba(18,18,18,.16); opacity:0; transition:opacity .3s ease;
}
.dg-work:hover .dg-work-thumb img{ transform:scale(1.04); }
.dg-work:hover .dg-work-thumb::after{ opacity:1; }
.dg-work-noimg{ display:block; width:100%; height:0; padding-bottom:72%; background:#1a1a1a; }
.dg-work-meta{ display:block; padding:10px 0 2px; }
.dg-work-title{
	display:block; color:#999;
	text-transform:none; letter-spacing:0;
	font-size:14px; line-height:1.5; text-align:left;
	transition:color .2s ease;
}
.dg-work:hover .dg-work-title{ color:#ccc; }

/* hide any residual comment UI (comments disabled site-wide) */
.jupiterx-comments, #comments, .comments-area, .comment-respond,
.jupiterx-post-comments, .comment-form, #respond, .comments-link{ display:none !important; }

/* home splash — set the logo image directly here (not via Elementor's generated CSS, which
   didn't reliably regenerate) + native size so it stays crisp (source is only 652px wide).
   Force full-height so the centered logo is always visible, incl. mobile where Elementor's
   height:full min-height wasn't applying and the section could collapse. */
.elementor-element-droghom1{
	background-color:#272727 !important;
	background-image:url(/wp-content/uploads/2024/01/antonis_drogosis_logo2024_bg_v7.jpg) !important;
	background-position:center center !important;
	background-repeat:no-repeat !important;
	background-size:min(600px,78vw) auto !important;
	min-height:100vh !important;
}
body.admin-bar .elementor-element-droghom1{ min-height:calc(100vh - 32px) !important; }

/* ============================================================
   Portfolio single — dark masonry gallery + lightbox
   ============================================================ */
/* strip Jupiter X default single chrome */
.single-portfolio .jupiterx-post-image,
.single-portfolio .jupiterx-social-share,
.single-portfolio .jupiterx-post-navigation,
.single-portfolio .jupiterx-post-header,
.single-portfolio .jupiterx-post-meta,
.single-portfolio .jupiterx-breadcrumb{ display:none !important; }
.single-portfolio .jupiterx-post-body,
.single-portfolio .jupiterx-post-content{ padding:0 !important; margin:0 !important; }
.single-portfolio .jupiterx-main-content .container{ max-width:none; padding:0; }

.dg-single{ padding:120px 40px 70px; max-width:none; margin:0; }
.dg-single-title{
	text-align:center; color:#cfcfcf;
	text-transform:uppercase; letter-spacing:3px;
	font-size:19px; font-weight:400; line-height:1.5;
	margin:0 0 42px;
}
/* fill the content area (viewport minus sidebar) on desktop, like the Works grid */
@media (min-width:1024px){
	.single-portfolio .dg-single{
		width:calc(100vw - 250px) !important; max-width:none !important;
		margin-left:calc(50% - 50vw + 125px) !important; margin-right:0 !important;
		box-sizing:border-box;
	}
}
.dg-gallery{ columns:3; column-gap:12px; }
@media (max-width:900px){ .dg-gallery{ columns:2; } }
@media (max-width:560px){ .dg-gallery{ columns:1; } }
.dg-gitem{
	display:block; margin:0 0 12px; break-inside:avoid;
	position:relative; overflow:hidden; background:#1a1a1a;
}
.dg-gitem img{ width:100%; height:auto; display:block; transition:opacity .35s ease, transform .6s ease; }
.dg-gitem:hover img{ opacity:.82; }
@media (max-width:900px){ .dg-gallery{ columns:2; } }
@media (max-width:560px){ .dg-gallery{ columns:1; } .dg-single{ padding:100px 18px 50px; } }

/* lightbox */
.dg-lightbox{
	position:fixed; inset:0; background:rgba(10,10,10,.95);
	z-index:2000; display:none; align-items:center; justify-content:center;
}
.dg-lightbox.open{ display:flex; }
.dg-lb-img{ max-width:88vw; max-height:86vh; object-fit:contain; box-shadow:0 12px 46px rgba(0,0,0,.6); }
.dg-lb-close{ position:absolute; top:22px; right:34px; color:#cfcfcf; font-size:40px; line-height:1; cursor:pointer; }
.dg-lb-prev, .dg-lb-next{
	position:absolute; top:50%; transform:translateY(-50%);
	color:#cfcfcf; font-size:56px; line-height:1; cursor:pointer;
	padding:0 26px; user-select:none;
}
.dg-lb-prev{ left:6px; } .dg-lb-next{ right:6px; }
.dg-lb-close:hover, .dg-lb-prev:hover, .dg-lb-next:hover{ color:#fff; }
@media (max-width:560px){ .dg-lb-prev,.dg-lb-next{ font-size:40px; padding:0 12px; } }

/* ============================================================
   Bio (ΒΙΟΓΡΑΦΙΚΟ) — 2-column
   ============================================================ */
.dg-bio{ display:flex; min-height:100vh; align-items:stretch; }
.dg-bio-left{
	flex:0 0 42%; max-width:42%;
	background:#272727; box-sizing:border-box;
	padding:130px 5% 70px;
}
.dg-bio-right{
	flex:1 1 auto;
	background:#343434; box-sizing:border-box;
	padding:130px 5% 70px;
}
.dg-bio-portrait{ width:250px; max-width:78%; }
.dg-bio-portrait img{ width:100%; height:auto; display:block; filter:grayscale(100%); }
.dg-bio-name{
	font-family:'Avant2','Avant',sans-serif;
	color:#dcdcdc; font-weight:400; font-size:36px;
	text-transform:lowercase; letter-spacing:1px;
	margin:34px 0 42px; line-height:1.2;
}
.dg-bio-text{ color:#9a9a9a; font-size:15px; line-height:1.95; max-width:520px; }
.dg-bio-text p{ margin:0; }
.dg-bio-works{
	font-family:'Avant2','Avant',sans-serif;
	color:#d0d0d0; font-weight:400; font-size:30px;
	text-transform:lowercase; letter-spacing:1px; margin:0 0 36px;
}
.dg-spec-list{ list-style:none; margin:0; padding:0; max-width:420px; }
.dg-spec-list li{ display:flex; align-items:center; gap:22px; padding:11px 0; }
.dg-spec-icon{
	flex:0 0 28px; width:28px; height:28px;
	color:#c7c7c7; display:inline-flex; align-items:center; justify-content:center;
}
.dg-spec-icon svg{ width:100%; height:100%; }
.dg-spec-label{
	color:#cbcbcb; text-transform:lowercase;
	letter-spacing:.4px; font-size:16px;
}
@media (max-width:860px){
	.dg-bio{ flex-direction:column; }
	.dg-bio-left, .dg-bio-right{ flex:none; max-width:none; width:100%; padding:100px 30px 50px; }
	.dg-bio-right{ padding-top:60px; }
}
/* full-width + no page title on Bio pages */
.page-id-20 .jupiterx-post-header, .page-id-11236 .jupiterx-post-header,
.page-id-20 .jupiterx-breadcrumb, .page-id-11236 .jupiterx-breadcrumb{ display:none !important; }
.page-id-20 .jupiterx-main-content .container, .page-id-11236 .jupiterx-main-content .container{ max-width:none !important; padding:0 !important; }
.page-id-20 .jupiterx-post-content, .page-id-11236 .jupiterx-post-content,
.page-id-20 .jupiterx-post-body, .page-id-11236 .jupiterx-post-body{ padding:0 !important; margin:0 !important; }
.page-id-20 #jupiterx-primary, .page-id-11236 #jupiterx-primary{ padding:0 !important; }

/* ============================================================
   Contact (ΕΠΙΚΟΙΝΩΝΙΑ) — map + dark 2-col (address | form)
   ============================================================ */
/* full-width + no page title on Contact pages */
.page-id-31 .jupiterx-post-header, .page-id-11242 .jupiterx-post-header,
.page-id-31 .jupiterx-breadcrumb, .page-id-11242 .jupiterx-breadcrumb{ display:none !important; }
.page-id-31 .jupiterx-main-content .container, .page-id-11242 .jupiterx-main-content .container{ max-width:none !important; padding:0 !important; }
.page-id-31 .jupiterx-post-content, .page-id-11242 .jupiterx-post-content,
.page-id-31 .jupiterx-post-body, .page-id-11242 .jupiterx-post-body{ padding:0 !important; margin:0 !important; }
.page-id-31 #jupiterx-primary, .page-id-11242 #jupiterx-primary{ padding:0 !important; }

.dg-map{ width:100%; height:520px; line-height:0; }
.dg-map iframe{ width:100%; height:100%; border:0; display:block; filter:grayscale(.35) contrast(1.05); }
.dg-contact-body{ background:#272727; }
.dg-contact-inner{ display:flex; gap:6%; max-width:1180px; margin:0 auto; padding:88px 34px; }
.dg-contact-addr{ flex:0 0 33%; }
.dg-contact-form{ flex:1 1 auto; }
.dg-contact h2{
	font-family:'Avant2','Avant',sans-serif;
	color:#d0d0d0; font-weight:400; font-size:26px;
	text-transform:lowercase; letter-spacing:1px; margin:0 0 30px;
}
.dg-contact-addr address{ font-style:normal; color:#9a9a9a; font-size:15px; line-height:2.15; }
.dg-contact-addr a{ color:#bdbdbd; text-decoration:none; transition:color .2s; }
.dg-contact-addr a:hover{ color:#fff; }

.dg-form-row{ display:flex; gap:16px; }
.dg-contact-form input[type=text], .dg-contact-form input[type=email], .dg-contact-form textarea{
	width:100%; background:transparent; border:1px solid #4a4a4a; color:#e2e2e2;
	padding:15px 16px; font-size:13px; letter-spacing:.8px;
	margin-bottom:16px; box-sizing:border-box; outline:none;
	transition:border-color .2s ease; font-family:inherit;
}
.dg-contact-form input:focus, .dg-contact-form textarea:focus{ border-color:#8f8f8f; }
.dg-contact-form textarea{ min-height:150px; resize:vertical; }
.dg-contact-form ::placeholder{ color:#888; text-transform:uppercase; letter-spacing:1px; font-size:12px; }
.dg-hp{ position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; opacity:0 !important; }
.dg-submit{
	background:transparent; border:1px solid #6a6a6a; color:#d0d0d0;
	padding:14px 46px; text-transform:uppercase; letter-spacing:2px;
	font-size:12px; cursor:pointer; transition:all .25s ease; margin-top:6px;
}
.dg-submit:hover{ background:#fff; color:#1e1e1e; border-color:#fff; }
.dg-form-msg{ padding:14px 18px; margin-bottom:22px; font-size:13.5px; letter-spacing:.4px; }
.dg-form-msg.ok{ background:rgba(70,120,70,.2); color:#c3e0c3; border:1px solid #4d7a4d; }
.dg-form-msg.err{ background:rgba(150,70,70,.2); color:#e6bcbc; border:1px solid #7a4a4a; }

@media (max-width:860px){
	.dg-map{ height:360px; }
	.dg-contact-inner{ flex-direction:column; gap:44px; padding:60px 26px; }
	.dg-contact-addr{ flex:none; }
	.dg-form-row{ flex-direction:column; gap:0; }
}
