/* ==========================================================================
   dsgn.gr · Αρχική (και shortcodes που την αφορούν)
   Τιμές από previews/01-arxiki.html.
   ========================================================================== */

/* ---------- Hero: κολάζ ---------- */
.hero-collage{max-width:1080px;margin:24px auto 0;position:relative;height:370px}
.hero-collage .hero-obj{
	position:absolute;height:auto;max-width:none;
	filter:drop-shadow(0 34px 44px rgba(18,42,73,.32)) drop-shadow(0 8px 12px rgba(18,42,73,.18));
	pointer-events:none;user-select:none;
	animation:dsgn-hero-rise 1s cubic-bezier(.16,1,.3,1) both;
}
.hero-collage .t1{animation-delay:.25s}
.hero-collage .t2{animation-delay:.1s}
.hero-collage .t3{animation-delay:0s}
.hero-collage .t4{animation-delay:.15s}
.hero-collage .t5{animation-delay:.3s}
@keyframes dsgn-hero-rise{from{opacity:0;translate:0 160px}to{opacity:1;translate:0 0}}
@media (max-width:600px){
	.hero-collage{height:250px;margin-top:20px}
	.hero-collage .t1,.hero-collage .t5{display:none!important}
	.hero-collage .t2{left:-8%!important;width:54%!important;top:95px!important}
	.hero-collage .t3{left:24%!important;width:52%!important;top:20px!important}
	.hero-collage .t4{left:64%!important;width:46%!important;top:105px!important}
}

/* Πάνελ: μικρότερο padding στο κινητό (όπως .panel στην προεπισκόπηση) */
@media (max-width:600px){.dsgn-panel{--padding-top:28px!important;--padding-bottom:28px!important;--padding-left:20px!important;--padding-right:20px!important}}

/* ---------- Neon: πεδίο κειμένου ---------- */
.np-input{display:flex;flex-direction:column;gap:6px;max-width:420px}
.np-input label{font-size:14px;font-weight:600;color:#D3DCE8}
/* #id: κερδίζει το «.elementor-kit-N input:not(…)» του kit */
body #neon-text{
	min-height:50px;padding:0 16px;border-radius:12px;border:1.5px solid #3C5373;background:#0C1E36;color:#F7F3EC;
	font:inherit;font-size:17px;box-shadow:none;width:100%;box-sizing:border-box;
}
body #neon-text:focus{outline:none;border-color:#A5D4F1;box-shadow:0 0 0 3px rgba(165,212,241,.25)}
body .btn.np-open{align-self:flex-start;margin-top:18px;min-height:52px;padding:0 28px}
/* Σε ανοιχτό φόντο (hero σελίδας Neon, previews/03-neon-flex.html) */
.np-input.np-light label{color:#122A49}
body .np-light #neon-text{border:1px solid rgba(255,255,255,.85);background:rgba(255,255,255,.7);color:#122A49}
body .np-light #neon-text:focus{background:#fff;border-color:#4067B0;box-shadow:0 0 0 3px rgba(64,103,176,.22)}

/* ---------- Neon: τοίχος ---------- */
.np-wall{
	position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;
	height:360px;padding:28px 28px 76px;box-sizing:border-box;
	background:radial-gradient(120% 90% at 50% 40%,#2B2F37 0%,#14171D 55%,#0A0C10 100%);
	box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
}
.np-wall::after{
	content:"";position:absolute;inset:0;border-radius:inherit;
	background-image:url("img/grain.webp");background-size:160px 160px;opacity:.18;mix-blend-mode:overlay;pointer-events:none;
}
.np-board{
	position:relative;z-index:1;max-width:100%;text-align:center;padding:18px 26px;border-radius:22px;
	background:rgba(220,232,247,.08);border:1px solid rgba(255,255,255,.16);
	box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 18px 40px rgba(0,0,0,.35);
}
.np-text{
	display:inline-block;font-family:"Comfortaa",system-ui,sans-serif;font-weight:300;font-size:56px;line-height:1.15;
	white-space:nowrap;text-align:center;color:var(--core,#FFE3F3);letter-spacing:.01em;--nc:#FF3BA7;
	text-shadow:0 0 1px #fff,0 0 4px color-mix(in srgb,var(--nc) 70%,#fff),0 0 10px var(--nc),0 0 22px var(--nc),0 0 44px color-mix(in srgb,var(--nc) 75%,transparent),0 0 80px color-mix(in srgb,var(--nc) 45%,transparent);
	transition:font-size .25s cubic-bezier(.23,1,.32,1),color .3s;
}
.np-colors{
	position:absolute;z-index:2;left:50%;bottom:14px;transform:translateX(-50%);
	display:flex;flex-wrap:wrap;justify-content:center;gap:2px;width:max-content;max-width:calc(100% - 24px);padding:4px 6px;
	/* width:max-content: αλλιώς το απόλυτο στοιχείο (left:50%) χωράει μόνο στο μισό πλάτος και σπάει σε 2 σειρές */
	border-radius:18px 0 18px 18px;background:rgba(255,255,255,.12);
	-webkit-backdrop-filter:blur(14px) saturate(1.5);backdrop-filter:blur(14px) saturate(1.5);border:1px solid rgba(255,255,255,.2);
}
/* Τα χρώματα είναι <button>: ακυρώνουμε το στυλ κουμπιού του Elementor kit */
body .np-colors .np-sw,
body .np-colors .np-sw:hover,
body .np-colors .np-sw:focus{
	width:34px;height:34px;min-height:0;border:0;border-radius:50%;background:transparent;box-shadow:none;transform:none;
	display:grid;place-items:center;padding:0;font-size:0;line-height:0;
}
body .np-colors .np-sw[aria-pressed="true"]{background:rgba(255,255,255,.18)}
body .np-colors .np-sw:focus-visible{outline:2px solid #fff;outline-offset:1px}
.np-sw i{width:16px;height:16px;border-radius:50%;display:block;transition:transform .2s cubic-bezier(.23,1,.32,1)}
.np-sw[aria-pressed="true"] i{transform:scale(1.15)}
@media (hover:hover){.np-sw:hover i{transform:scale(1.2)}}
@media (max-width:600px){
	.np-wall{height:auto;min-height:300px;flex-direction:column;gap:22px;padding:40px 16px 16px}
	.np-colors{position:static;transform:none;max-width:100%;width:100%;display:grid;grid-template-columns:repeat(5,44px);justify-content:center;gap:4px;padding:6px}
	body .np-colors .np-sw,body .np-colors .np-sw:hover,body .np-colors .np-sw:focus{width:44px;height:44px}
}

/* ---------- Συχνές ερωτήσεις (Elementor Nested Accordion, κλάση dsgn-faq) ---------- */
.dsgn-faq .e-n-accordion{display:flex;flex-direction:column;gap:0}
.dsgn-faq .e-n-accordion-item{border:0;border-bottom:1px solid #DEDCD6;padding:16px 0;margin:0}
.dsgn-faq .e-n-accordion-item-title{
	display:flex;align-items:center;min-height:44px;padding:0;border:0;background:transparent;cursor:var(--dsgn-cursor-pointer);
	list-style:none;
}
.dsgn-faq .e-n-accordion-item-title::-webkit-details-marker{display:none}
.dsgn-faq{
	--n-accordion-title-font-size:19px;
	--n-accordion-title-normal-color:#122A49;
	--n-accordion-title-hover-color:#122A49;
	--n-accordion-title-active-color:#122A49;
	--n-accordion-item-title-space-between:0px;
	--n-accordion-item-title-distance-from-content:0px;
	--n-accordion-padding:0px;
	--n-accordion-border-width:0px;
}
.dsgn-faq .e-n-accordion-item-title-text{font-size:19px!important;font-weight:600!important;line-height:1.35!important;color:#122A49!important}
.dsgn-faq .e-n-accordion-item-title-icon{display:none}
.dsgn-faq .e-n-accordion-item > .e-con{padding:0;border:0;background:transparent}
.dsgn-faq .e-n-accordion-item p{margin:8px 0 0;font-size:16px;line-height:1.6;color:#34445A}

/* ---------- Viber / WhatsApp ---------- */
body .btn.vw-pill{padding:0 10px;gap:0;cursor:default}
body .btn.vw-pill a{display:inline-flex;align-items:center;min-height:48px;padding:0 12px;color:#122A49;text-decoration:none;font-weight:600}
body .btn.vw-pill .vw-sep{color:#8A93A0}
@media (hover:hover){body .btn.vw-pill a:hover{color:#4067B0}body .btn.vw-pill:hover{transform:none}}

/* ---------- Εικόνες σε πλακίδια (VM Liberis) ---------- */
.dsgn-tile img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.dsgn-tile.top img{object-position:top}
.dsgn-tile .elementor-widget-container,.dsgn-tile .elementor-image{height:100%}

/* ---------- Μικρά ---------- */
#prosfora{scroll-margin-top:100px}
.dsgn-mt-4{margin-top:4px}
.dsgn-tile{height:300px;overflow:hidden}

/* ---------- Λιγότερη κίνηση ---------- */
@media (prefers-reduced-motion:reduce){
	.hero-collage .hero-obj{animation:none}
	.np-text{transition:none}
}
