/* ==========================================================================
   Одиночна сторінка кейсу (single-case.php)
   ========================================================================== */

/* --- Спільні декоративні блики (Цілі/Етапи/Висновок сидять на темному фоні) --- */
.case-blob{
	position:absolute; pointer-events:none; z-index:0;
	background:linear-gradient(98.24deg, #39982A 58.33%, #E9601A 100%);
	box-shadow:0 4px 4px rgba(0,0,0,.25);
	filter:blur(105px);
}
.case-blob-tr{ width:455px; height:791px; left:806px; top:-330px; transform:rotate(124.29deg); }
.case-blob-bl{ width:384px; height:590px; left:-248px; top:358px; transform:rotate(-57.82deg); }
.case-noise{
	position:absolute; inset:0; z-index:0; pointer-events:none;
	opacity:.22; mix-blend-mode:overlay;
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");
	background-size:180px 180px;
}
.case-goals, .case-stages, .case-conclusion{ position:relative; background:#020A03; overflow:hidden; }
.case-goals .container, .case-stages .container, .case-conclusion .container{ position:relative; z-index:1; }
.case-stages .case-blob-tr{ left:764px; top:-309px; }
.case-stages .case-blob-bl{ left:-243px; top:513px; }
.case-conclusion .case-blob-tr{ left:768px; top:-523px; }
.case-conclusion .case-blob-bl{ left:-239px; top:299px; }

.case-heading{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:40px; line-height:48px; letter-spacing:-.8px; color:#191C1E; margin:0 0 40px; }
.case-heading-dark{ color:#fff; }
.case-heading-accent{ font-weight:600; font-size:40px; line-height:32px; color:#000000; padding-left:16px; border-left:4px solid var(--orange); margin-bottom:32px; }
.case-heading-underline{ position:relative; padding-bottom:20px; margin-bottom:48px; }
.case-heading-underline::after{ content:""; position:absolute; left:0; bottom:0; width:96px; height:4px; background:#096415; }
.case-heading-underline-blue::after{ background:#003EC7; }

/* --- Херо --- */
.case-hero{ position:relative; background:#020A03; overflow:hidden; padding:150px 0 120px; margin-top:-98px; padding-top:248px; }
.case-hero .case-blob-tr{ left:900px; top:-260px; }
.case-hero .case-blob-bl{ left:-260px; top:220px; }
.case-hero-inner{ position:relative; z-index:1; max-width:900px; }
.case-hero-eyebrow{ display:block; font-family:'Montserrat', sans-serif; font-weight:700; font-size:12px; letter-spacing:1.2px; text-transform:uppercase; color:#B7C4FF; margin-bottom:16px; }
.case-hero-inner h1{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:60px; line-height:60px; color:#fff; margin:0 0 15px; }
.case-hero-inner p{ font-family:'Montserrat', sans-serif; font-weight:400; font-size:18px; line-height:29px; color:#C3C5D9; max-width:672px; margin:0 0 24px; }
.case-hero-btn{
	display:inline-flex; align-items:center; justify-content:center;
	padding:20px 40px; background:#096415; border-radius:9999px;
	font-family:'Montserrat', sans-serif; font-weight:700; font-size:14px; letter-spacing:.7px; text-transform:uppercase; color:#fff;
}
.case-hero-btn:hover{ background:#0b7a1a; }

@media (max-width:760px){
	.case-hero{ padding:100px 0 60px; }
	.case-hero-inner h1{ font-size:34px; line-height:1.2; }
	.case-hero-inner p{ font-size:16px; line-height:1.6; }
	.case-hero-btn{ padding:16px 28px; width:100%; }
}

/* --- Про клієнта --- */
.case-client{ background:#FCFCFC; padding:120px 80px; }
.case-client-inner{ max-width:1280px; display:flex; align-items:flex-start; gap:24px; }
.case-client-inner .case-heading-accent{ flex:0 0 365.33px; margin-bottom:0; }
.case-client-text{ flex:1; }
.case-client-text p{ font-family:'Montserrat', sans-serif; font-weight:400; font-size:18px; line-height:29px; color:#444748; margin:0 0 24px; }

@media (max-width:860px){ .case-client-inner{ flex-direction:column; } .case-client-inner .case-heading-accent{ flex-basis:auto; } }
@media (max-width:760px){ .case-client{ padding-left:0; padding-right:0; } }

/* --- Цілі та завдання --- */
.case-goals{ padding:120px 0; }
.case-goals .case-heading{ margin-bottom:68px; }
.case-goals-grid{ display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.case-goal{ display:flex; gap:24px; }
.case-goal-icon{
	display:flex; align-items:center; justify-content:center; flex-shrink:0;
	width:48px; height:48px; border-radius:12px; background:rgba(109,207,19,.18); color:var(--orange); font-size:20px;
}
.case-goal-icon img{ width:24px; height:24px; object-fit:contain; }
.case-goal h3{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:20px; line-height:28px; color:#fff; margin:0 0 8px; }
.case-goal p{ font-family:'Montserrat', sans-serif; font-weight:400; font-size:18px; line-height:29px; color:#C3C5D9; margin:0; }

@media (max-width:860px){ .case-goals-grid{ grid-template-columns:1fr; } }

/* --- Вихідна ситуація --- */
.case-before{ background:#FFFFFF; padding:120px 0; }
.case-before-inner{ display:flex; gap:64px; align-items:flex-start; flex-wrap:wrap; }
.case-before-list-wrap{ flex:1; min-width:320px; }
.case-before-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:16px; }
.case-before-list li{ display:flex; align-items:flex-start; gap:16px; font-family:'Montserrat', sans-serif; font-weight:400; font-size:18px; line-height:29px; color:#434656; }
.case-before-dot{
	display:flex; align-items:center; justify-content:center; flex-shrink:0;
	width:18px; height:18px; margin-top:6px; border-radius:50%; background:#BA1A1A;
}
.case-before-quote{
	flex:1; min-width:320px; max-width:608px;
	background:#fff; border:2px dashed rgba(195,197,217,.3); border-radius:16px; padding:40px;
}
.case-quote-icon{
	display:flex; align-items:center; justify-content:center;
	width:36px; height:36px; color:#096415; margin-bottom:16px;
}
.case-before-quote p{ font-family:'Montserrat', sans-serif; font-style:italic; font-weight:400; font-size:18px; line-height:29px; color:#434656; margin:0; }

/* --- Етапи реалізації --- */
.case-stages{ padding:120px 0; }
.case-stages .case-heading{ margin-bottom:48px; }
.case-stages-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
/* Асиметрична сітка: широка+вузька картка в кожному ряду, ряди дзеркальні */
.case-stage:nth-child(1){ grid-column:1 / 3; }
.case-stage:nth-child(2){ grid-column:3 / 4; }
.case-stage:nth-child(3){ grid-column:1 / 2; }
.case-stage:nth-child(4){ grid-column:2 / 4; }
.case-stage{
	background:rgba(255,255,255,.05); border:2px solid rgba(16,110,0,.3);
	backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
	border-radius:16px; padding:34px;
}
.case-stage-num{ display:block; font-family:'Unbounded', sans-serif; font-weight:700; font-size:24px; color:var(--orange); margin-bottom:16px; }
.case-stage h3{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:24px; line-height:32px; color:#fff; margin:0 0 16px; }
.case-stage p{ font-family:'Montserrat', sans-serif; font-weight:400; font-size:18px; line-height:29px; color:#C3C5D9; margin:0; }

/* Мобільна версія — важливо: скидаємо всі grid-column, інакше картки
   з десктопної асиметричної сітки поламають однокол0нкове стекування */
@media (max-width:860px){
	.case-stages-grid{ grid-template-columns:1fr; }
	.case-stage:nth-child(1),
	.case-stage:nth-child(2),
	.case-stage:nth-child(3),
	.case-stage:nth-child(4){ grid-column:auto; }
}
@media (max-width:640px){
	.case-stage{ padding:24px; }
	.case-stage h3{ font-size:20px; line-height:28px; }
}

/* --- Результати в цифрах --- */
.case-results{ background:#FFFFFF; padding:120px 0; }
.case-results-stats{ display:flex; justify-content:center; gap:64px; flex-wrap:wrap; margin-bottom:48px; }
.case-result{ display:flex; flex-direction:column; gap:8px; }
.case-result-value{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:72px; line-height:72px; color:#096415; }
.case-result-label{ font-family:'Montserrat', sans-serif; font-weight:700; font-size:18px; line-height:29px; color:#191C1E; }
.case-chart{ position:relative; border-radius:32px; overflow:hidden; box-shadow:0 25px 50px -12px rgba(0,0,0,.25); }
.case-chart img{ width:100%; height:auto; display:block; }
.case-chart-caption{
	position:absolute; left:32px; bottom:32px; max-width:384px;
	background:rgba(255,255,255,.95); backdrop-filter:blur(4px); border-radius:12px; padding:32px;
	display:flex; flex-direction:column; gap:4px;
}
.case-chart-caption strong{ font-family:'Montserrat', sans-serif; font-weight:700; font-size:18px; color:#191C1E; }
.case-chart-caption span{ font-family:'Montserrat', sans-serif; font-weight:700; font-size:12px; letter-spacing:1.2px; text-transform:uppercase; color:#434656; }

@media (max-width:760px){ .case-results-stats{ gap:32px; } .case-result-value{ font-size:48px; line-height:48px; } }

/* --- Висновок --- */
.case-conclusion{ padding:120px 0; }
.case-conclusion-inner{ display:flex; justify-content:center; gap:64px; flex-wrap:wrap; }
.case-conclusion-text{ flex:1; min-width:320px; max-width:608px; }
.case-conclusion-text .case-heading{ margin-bottom:31px; }
.case-conclusion-text p{ font-family:'Montserrat', sans-serif; font-weight:400; font-size:18px; line-height:29px; color:#C3C5D9; margin:0; }
.case-testimonial{
	position:relative; flex:1; min-width:320px; max-width:608px;
	background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1);
	backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
	border-radius:40px; padding:47px 48px 48px;
}
.case-quote-icon-light{ position:absolute; top:25px; right:25px; background:rgba(0,62,199,.1); color:#fff; width:51px; height:36px; }
.case-testimonial p{ font-family:'Montserrat', sans-serif; font-style:italic; font-weight:400; font-size:18px; line-height:29px; color:#fff; margin:0 0 32px; }
.case-testimonial-author{ display:flex; align-items:center; gap:20px; }
.case-testimonial-avatar{ width:64px; height:64px; border-radius:9999px; overflow:hidden; background:#E0E3E5; border:2px solid rgba(0,62,199,.3); flex-shrink:0; }
.case-testimonial-avatar img{ width:100%; height:100%; object-fit:cover; }
.case-testimonial-author strong{ display:block; font-family:'Montserrat', sans-serif; font-weight:700; font-size:18px; color:#fff; }
.case-testimonial-author span{ display:block; font-family:'Unbounded', sans-serif; font-weight:700; font-size:12px; letter-spacing:1.2px; text-transform:uppercase; color:#096415; margin-top:4px; }

/* --- Інші успішні кейси --- */
.case-related{ background:#FFFFFF; padding:120px 0; }
.case-related-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:32px; }
.case-related-card{ display:block; }
.case-related-media{ aspect-ratio:405/198; border-radius:16px; overflow:hidden; box-shadow:0 10px 15px -3px rgba(0,0,0,.1), 0 4px 6px -4px rgba(0,0,0,.1); margin-bottom:16px; }
.case-related-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.case-related-card h3{ font-family:'Unbounded', sans-serif; font-weight:700; font-size:20px; line-height:28px; color:#191C1E; margin:0 0 8px; }
.case-related-stat{ display:block; font-family:'Montserrat', sans-serif; font-weight:700; font-size:10px; letter-spacing:2px; text-transform:uppercase; color:#434656; }

@media (max-width:960px){ .case-related-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:640px){ .case-related-grid{ grid-template-columns:1fr; } }

/* --- Загальний мобільний прохід: вертикальні відступи секцій, розмір заголовків --- */
@media (max-width:760px){
	.case-goals, .case-before, .case-stages, .case-results, .case-conclusion, .case-related{ padding-top:60px; padding-bottom:60px; }
	.case-heading{ font-size:28px; line-height:1.25; }
	.case-chart-caption{ left:16px; right:16px; bottom:16px; max-width:none; padding:20px; }
	.case-testimonial{ padding:32px 24px; }
	.case-conclusion-inner{ gap:32px; }
}

/* --- CTA (переюзує .cta-form-inner/.cta-info з style.css) --- */
.case-cta{ position:relative; overflow:hidden; }
