/* ==========================================================================
   Дъга — детски парти център
   Цветовете идват от theme.json; тук са продублирани като CSS променливи,
   за да работят и в редактора, и на фронтенда.
   ========================================================================== */

:root {
	/* Основни */
	--ink:        #1A1A2E;
	--body:       #6A6A77;
	--muted:      #A4ACB6;
	--label:      #AFAFB6;
	--nav:        #767682;
	--line:       #ECECF0;
	--white:      #FFFFFF;
	--surface:    #FBFBFB;
	--footer-bg:  #F9F9FB;
	--field-bg:   #F9F9FB;

	/* Марка */
	--pink:       #F587A8;
	--blue:       #67C7F2;
	--yellow:     #F5AA20;
	--pink-bg:    #FFE6EE;
	--blue-bg:    #EEFAFF;
	--yellow-bg:  #FFF1D6;
	--viber:      #7360F2;
	--viber-bg:   #ECE9FF;
	
	/* Акценти на пакетите */
	--pkg-pink:   #F472B6;
	--pkg-blue:   #3B82F6;
	--pkg-gold:   #D4980A;
	--pkg-teal:   #2A9D8F;

	/* Ширини */
	--w-header:   1280px;
	--w-content:  1080px;
	--w-narrow:   940px;
	--gutter:     24px;

	/* Форма */
	--radius-sm:  12px;
	--radius:     16px;
	--radius-lg:  20px;
	--pill:       999px;

	--shadow-sm:  0 1px 2px rgba(26, 26, 46, .04);
	--shadow:     0 4px 24px rgba(26, 26, 46, .06);

	/* Типография — стандартният текст се смалява на телефон */
	--text:      16px;
	--text-sm:   14.5px;

	/*
	 * Оптично центриране на иконите.
	 *
	 * Axiforma има силно асиметрични метрики: при 16px ascent е 21px, а
	 * descent само 5px. Затова видимите букви стоят по-ниско от центъра
	 * на line box-а и икона, центрирана по флексбокс, увисва нагоре.
	 * Тези стойности я смъкват до центъра на самите глифове.
	 *
	 * Разликата е почти постоянна в пиксели за 13–16px, затова е в px,
	 * а не в em — така важи и за мобилните размери.
	 */
	/*
	 * Axiforma е с несиметрични метрики и буквите не лягат в средата на
	 * реда. Бедата е, че платформите четат различни таблици: Windows взима
	 * usWin (1330/301 → текстът пада надолу), а Android и iOS — hhea
	 * (772/228 → текстът се вдига нагоре). Затова стойността не може да е
	 * фиксирана; `initOptical()` я измерва на място и я презаписва тук.
	 * Изважда се от горния падинг и се добавя към долния, така че кутията
	 * остава със същата височина, а съдържанието ѝ се мести.
	 */
	--optical: 0em;
	/*
	 * Тези нуджове компенсираха кривите метрики на шрифта. След като те се
	 * презаписват в @font-face, буквите са центрирани в реда и иконките,
	 * центрирани от flex, съвпадат сами. Оставени са като регулатор.
	 *
	 * Мерната единица е задължителна: стойността влиза в `calc()` заедно с
	 * px/em/%, а там събирането на голо число с дължина е невалидно и
	 * браузърът изхвърля цялата декларация. Затова `0px`, не `0`.
	 */
	--icon-nudge:       0px;
	--icon-nudge-caps:  -1px;
	--icon-nudge-num:   0px;

	--header-h:    112px;
	--header-h-sm:  74px;
	--logo-h:       58px;
	--logo-h-sm:    42px;
	--ease:        cubic-bezier(.4, 0, .2, 1);
	--ease-out:    cubic-bezier(.22, .61, .36, 1);

	--rainbow: linear-gradient(90deg, #F587A8 0%, #C79BE3 22%, #67C7F2 46%, #5FC9A4 72%, #F5AA20 100%);

	/* Икони като data URI — ползват се за ::before маски и фонове */
	--icon-check: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.55 17.6 4.4 12.45l1.4-1.42 3.75 3.74 8.65-8.65 1.4 1.42z'/%3E%3C/svg%3E");
	--check: var(--icon-check);
	--icon-clock: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.1v5.1l3.3 1.95'/%3E%3C/svg%3E");
	--icon-cake: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.2 20.6v-5.4a2 2 0 0 1 2-2h11.6a2 2 0 0 1 2 2v5.4z'/%3E%3Cpath d='M3 20.6h18M12 13.2V9.9'/%3E%3Cpath d='M12 7.4s1.3-1.2 1.3-2A1.3 1.3 0 0 0 12 4.1a1.3 1.3 0 0 0-1.3 1.3c0 .8 1.3 2 1.3 2z'/%3E%3C/svg%3E");
	/* Икони на добавките към пакетите */
	--icon-balloon: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='9.2' rx='5.3' ry='6'/%3E%3Cpath d='m10.9 15 1.1 1.6 1.1-1.6'/%3E%3Cpath d='M12 16.6c0 1.4 1.7 1.4 1.7 2.8s-1.7 1.4-1.7 0'/%3E%3C/svg%3E");
	--icon-drink: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.8 4.4h14.4L12 12.4z'/%3E%3Cpath d='M12 12.4v6.2M8.6 18.6h6.8'/%3E%3C/svg%3E");
	--icon-camera: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.6a2 2 0 0 1 2-2h2.4l1.3-2.2h6.6l1.3 2.2H19a2 2 0 0 1 2 2v8.8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'/%3E%3Ccircle cx='12' cy='12.6' r='3.5'/%3E%3C/svg%3E");
	--icon-smile: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8.2 13.9a4.5 4.5 0 0 0 7.6 0'/%3E%3Ccircle cx='9.2' cy='9.7' r='1' fill='%23000000' stroke='none'/%3E%3Ccircle cx='14.8' cy='9.7' r='1' fill='%23000000' stroke='none'/%3E%3C/svg%3E");
	--icon-star: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23F5AA20'%3E%3Cpath d='m12 2 3.1 6.26 6.9 1-5 4.87 1.18 6.87L12 17.77 5.82 21l1.18-6.87-5-4.87 6.9-1z'/%3E%3C/svg%3E");
	--icon-send: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none' stroke='%23ffffff' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9.08488 13.5534C9.10862 13.6125 9.1499 13.663 9.20317 13.6981C9.25645 13.7331 9.31916 13.751 9.3829 13.7494C9.44665 13.7478 9.50836 13.7267 9.55977 13.6889C9.61118 13.6512 9.64982 13.5987 9.6705 13.5384L13.733 1.66336C13.753 1.60798 13.7568 1.54805 13.744 1.49058C13.7312 1.43311 13.7023 1.38048 13.6606 1.33884C13.619 1.29721 13.5664 1.26829 13.5089 1.25548C13.4514 1.24266 13.3915 1.24648 13.3361 1.26648L1.46113 5.32898C1.40081 5.34967 1.34827 5.38831 1.31055 5.43971C1.27283 5.49112 1.25174 5.55284 1.2501 5.61658C1.24847 5.68032 1.26637 5.74304 1.30141 5.79631C1.33645 5.84958 1.38695 5.89086 1.44613 5.91461L6.40238 7.90211C6.55906 7.96484 6.70141 8.05865 6.82086 8.17788C6.9403 8.29711 7.03437 8.43929 7.09738 8.59586L9.08488 13.5534Z'/%3E%3Cpath d='M13.6588 1.3418L6.82129 8.17867'/%3E%3C/svg%3E");
	--icon-calendar: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A4ACB6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2.5'/%3E%3Cpath d='M3.4 9.6h17.2M8 3.2v3.4M16 3.2v3.4'/%3E%3C/svg%3E");
	--icon-clock-grey: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A4ACB6' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.1v5.1l3.3 1.95'/%3E%3C/svg%3E");
	--icon-clock-pink: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F587A8' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7.1v5.1l3.3 1.95'/%3E%3C/svg%3E");
	--icon-facebook: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' fill='none' stroke='%23000000' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11.25 1.25H9.375C8.5462 1.25 7.75134 1.57924 7.16529 2.16529C6.57924 2.75134 6.25 3.5462 6.25 4.375V6.25H4.375V8.75H6.25V13.75H8.75V8.75H10.625L11.25 6.25H8.75V4.375C8.75 4.20924 8.81585 4.05027 8.93306 3.93306C9.05027 3.81585 9.20924 3.75 9.375 3.75H11.25V1.25Z'/%3E%3C/svg%3E");
	--icon-instagram: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4.1'/%3E%3Ccircle cx='17.3' cy='6.7' r='.9' fill='%23000000'/%3E%3C/svg%3E");
	/* Звезда като маска — цветът идва от градиент отдолу, за да може
	   лентата да се пълни частично според оценката. */
	--icon-star-mask: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2 3.1 6.26 6.9 1-5 4.87 1.18 6.87L12 17.77 5.82 21l1.18-6.87-5-4.87 6.9-1z'/%3E%3C/svg%3E");
	--star-on:  #F5AA20;
	--star-off: #E2E2E8;

	--icon-chevron: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	--icon-help: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M9.4 9.3a2.7 2.7 0 1 1 3.6 2.5c-.7.3-1 .9-1 1.6v.4'/%3E%3Cpath d='M12 17.1h.01'/%3E%3C/svg%3E");
	--icon-arrow: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000000' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15'/%3E%3Cpath d='m13 6 6 6-6 6'/%3E%3C/svg%3E");
	--icon-google: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23EA4335' d='M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z'/%3E%3Cpath fill='%234285F4' d='M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z'/%3E%3Cpath fill='%23FBBC05' d='M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24s.92 7.54 2.56 10.78l7.97-6.19z'/%3E%3Cpath fill='%2334A853' d='M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z'/%3E%3C/svg%3E");

	/* Орнаменти в главите на пакетите */
	--orn-heart: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35 10.55 20C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54z'/%3E%3C/svg%3E");
	--orn-star: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m12 2 3.1 6.26 6.9 1-5 4.87 1.18 6.87L12 17.77 5.82 21l1.18-6.87-5-4.87 6.9-1z'/%3E%3C/svg%3E");
	--orn-sparkle: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1.6c.62 5.3 4.48 9.16 9.78 9.78-5.3.62-9.16 4.48-9.78 9.78-.62-5.3-4.48-9.16-9.78-9.78 5.3-.62 9.16-4.48 9.78-9.78z'/%3E%3C/svg%3E");
	--orn-dot: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3C/svg%3E");
}

/* --------------------------------------------------------------------------
   База
   -------------------------------------------------------------------------- */

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

body {
	margin: 0;
	background: var(--white);
	color: var(--body);
	font-family: Axiforma, Onest, "Nunito Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
	font-size: var(--text);
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

img, svg, video { max-width: 100%; display: block; }
img, video { height: auto; }

a { color: var(--pink); text-decoration: none; }
a:hover { color: var(--ink); }

h1, h2, h3, h4 {
	color: var(--ink);
	font-weight: 500;
	line-height: 1.14;
	letter-spacing: -.02em;
	margin: 0;
	text-wrap: balance;
}

p { margin: 0 0 1em; }
p:last-child { margin-bottom: 0; }

:focus-visible {
	outline: 3px solid var(--pink);
	outline-offset: 3px;
	border-radius: 4px;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
	white-space: nowrap; border: 0;
}

.daga-skip-link {
	position: absolute; left: 12px; top: -80px; z-index: 200;
	background: var(--ink); color: #fff;
	padding: 12px 20px; border-radius: var(--radius-sm);
	transition: top .2s;
}
.daga-skip-link:focus { top: 12px; color: #fff; }

/* --------------------------------------------------------------------------
   Оформление
   -------------------------------------------------------------------------- */

.daga-container { width: 100%; max-width: var(--w-content); margin-inline: auto; padding-inline: var(--gutter); }
.daga-container--narrow { max-width: var(--w-narrow); }
.daga-container--wide { max-width: var(--w-header); }

.daga-section { padding-block: clamp(56px, 7vw, 104px); scroll-margin-top: var(--header-h); }
.daga-section--tint { background: var(--surface); }

/* Заглавна група на секция */
.daga-head { text-align: center; max-width: 720px; margin: 0 auto clamp(32px, 4vw, 56px); }
.daga-eyebrow {
	display: block;
	font-size: 12px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase;
	color: var(--muted); margin: 0 0 18px;
}
.daga-head h2 { font-size: clamp(2rem, 1.1rem + 3vw, 3rem); margin: 0; }
.daga-head p {
	margin: 20px auto 0; max-width: 34ch;
	color: var(--muted); font-size: var(--text);
}
/* Бележката е по-дълга от подзаглавието — на 34ch се разтяга на пет реда. */
.daga-head p.daga-head__note { margin-top: 14px; max-width: 60ch; font-size: .9em; }
/* Надзаглавието също е <p> в .daga-head — трябва по-тежък селектор. */
.daga-head p.daga-eyebrow {
	font-size: 12px; font-weight: 700; letter-spacing: .25em;
	margin: 0 0 18px; max-width: none;
}

/* --------------------------------------------------------------------------
   Бутони
   -------------------------------------------------------------------------- */

.daga-btn {
	--btn-bg: var(--pink);
	--btn-fg: #fff;
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	background: var(--btn-bg); color: var(--btn-fg);
	font-family: inherit; font-size: 14px; font-weight: 500;
	padding: calc(10px - var(--optical)) 20px calc(10px + var(--optical));
	border: 0; border-radius: var(--pill);
	cursor: pointer; text-align: center;
	transition: filter .18s ease, transform .18s ease, box-shadow .18s ease;
}
.daga-btn:hover { color: var(--btn-fg); filter: brightness(.94); transform: translateY(-1px); }
.daga-btn:active { transform: translateY(0); }
.daga-btn .daga-icon { width: 18px; height: 18px; flex: none; transform: translateY(var(--icon-nudge)); }

.daga-btn--block { display: flex; width: 100%; padding-block: calc(17px - var(--optical)) calc(17px + var(--optical)); }

/* Текстов бутон „ВИЖ ОЩЕ" */
.daga-more { text-align: center; margin-top: 40px; }
.daga-more__btn {
	background: none; border: 0; padding: 6px 4px; cursor: pointer;
	font-family: inherit; font-size: 13px; font-weight: 700;
	letter-spacing: .16em; text-transform: uppercase;
	color: var(--ink);
	transition: color .18s ease;
}
.daga-more__btn:hover { color: var(--pink); }
.daga-more__count { display: block; margin-top: 8px; font-size: 13px; color: var(--muted); }

/* --------------------------------------------------------------------------
   Хедър
   -------------------------------------------------------------------------- */

.daga-header {
	position: sticky; top: 0; z-index: 100;
	background: rgba(255, 255, 255, .92);
	-webkit-backdrop-filter: saturate(180%) blur(12px);
	backdrop-filter: saturate(180%) blur(12px);
	border-bottom: 1px solid transparent;
	transition: border-color .2s ease, box-shadow .2s ease;
}
.daga-header.is-stuck { border-bottom-color: var(--line); box-shadow: 0 2px 16px rgba(26, 26, 46, .05); }

.daga-header__inner {
	max-width: var(--w-header); margin-inline: auto; padding-inline: var(--gutter);
	min-height: var(--header-h);
	display: flex; align-items: center; gap: 24px;
	transition: min-height .32s var(--ease);
}

.daga-brand { flex: none; display: block; line-height: 0; }
.daga-brand svg, .daga-brand img {
	width: auto; height: var(--logo-h);
	transition: height .32s var(--ease);
}

/* Смаляване при скролване */
.daga-header.is-shrunk .daga-header__inner { min-height: var(--header-h-sm); }
.daga-header.is-shrunk .daga-brand svg,
.daga-header.is-shrunk .daga-brand img { height: var(--logo-h-sm); }
.daga-header.is-shrunk .daga-btn { padding-block: 12px; }
.daga-header.is-shrunk .daga-header__phone { font-size: 14px; }

.daga-header .daga-btn,
.daga-header__phone { transition: padding .32s var(--ease), font-size .32s var(--ease), color .18s ease; }

.daga-nav { margin-inline: auto; }
.daga-nav ul { display: flex; align-items: center; gap: 44px; list-style: none; margin: 0; padding: 0; }
.daga-nav a {
	color: var(--nav); font-size: 14px; font-weight: 500;
	padding: 8px 0; position: relative; display: inline-block;
}
.daga-nav a::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 2px; height: 2px;
	background: var(--pink); border-radius: 2px; transform: scaleX(0); transform-origin: left;
	transition: transform .22s ease;
}
.daga-nav a:hover, .daga-nav a.is-active { color: var(--ink); }
.daga-nav a:hover::after, .daga-nav a.is-active::after { transform: scaleX(1); }

.daga-header__actions { flex: none; display: flex; align-items: center; gap: 22px; }
.daga-header__phone {
	display: inline-flex; align-items: center; gap: 9px;
	color: var(--nav); font-weight: 600; font-size: 14px;
	line-height: 1;
}
/* Иконата се подравнява по оптичния център на цифрите, не по line-box-а. */
.daga-header__phone .daga-icon {
	width: 18px; height: 18px; flex: none;
	color: var(--nav); display: block;
	transform: translateY(var(--icon-nudge-num));
}
.daga-header__phone > span { display: block; line-height: 1; color: #1A1A2E73; }
.daga-header__phone:hover { color: var(--pink); }
.daga-header__phone:hover .daga-icon { color: var(--pink); }

.daga-burger {
	display: none; width: 44px; height: 44px; padding: 0;
	background: none; border: 0; cursor: pointer;
	align-items: center; justify-content: center;
}
.daga-burger span {
	display: block; position: relative; width: 22px; height: 2px;
	background: var(--ink); border-radius: 2px; transition: background .2s;
}
.daga-burger span::before, .daga-burger span::after {
	content: ""; position: absolute; left: 0; width: 22px; height: 2px;
	background: var(--ink); border-radius: 2px; transition: transform .22s ease;
}
.daga-burger span::before { top: -7px; }
.daga-burger span::after  { top: 7px; }
.daga-burger[aria-expanded="true"] span { background: transparent; }
.daga-burger[aria-expanded="true"] span::before { transform: translateY(7px) rotate(45deg); }
.daga-burger[aria-expanded="true"] span::after  { transform: translateY(-7px) rotate(-45deg); }

/* --------------------------------------------------------------------------
   Hero
   -------------------------------------------------------------------------- */

/* Снимката, затъмняването и позиционирането ги прави core/cover — тук само
   размерът и типографията върху нея. */
.daga-hero {
	min-height: clamp(340px, 52vw, 720px);
	padding: clamp(56px, 7vw, 104px) var(--gutter);
	text-align: center;
}
.daga-hero .wp-block-cover__inner-container { max-width: 860px; }
.daga-hero h1 {
	margin: 0 0 18px; color: #fff;
	font-size: clamp(2.2rem, 1.1rem + 3.2vw, 4rem); line-height: 1.14;
	text-shadow: 0 2px 26px rgba(0, 0, 0, .3);
}
.daga-hero__text {
	margin: 0 auto; max-width: 660px;
	color: rgba(255, 255, 255, .94);
	text-shadow: 0 1px 16px rgba(0, 0, 0, .34);
}

/* --------------------------------------------------------------------------
   Пакети
   -------------------------------------------------------------------------- */

.daga-tabs { display: flex; justify-content: center; gap: 12px; margin-bottom: 44px; flex-wrap: wrap; }
.daga-tab {
	min-width: 170px; background: var(--white); color: var(--body);
	border: 1px solid var(--line); border-radius: var(--pill);
	/* Изрично, за да не зависи от `normal` — той се смени с метриките. */
	padding: calc(17px - var(--optical)) 30px calc(17px + var(--optical));
	font-family: inherit; font-size: 14px; font-weight: 600; line-height: 1.3;
	cursor: pointer; transition: background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.daga-tab:hover { color: var(--ink); border-color: #DDDDE4; }
.daga-tab[aria-selected="true"] {
	background: var(--pink); border-color: var(--pink); color: #fff; font-weight: 600;
	box-shadow: 0 6px 18px rgba(245, 135, 168, .32);
}

/*
 * Неселектираната опция диша с разсеян розов ореол — иначе мнозина не
 * забелязват, че пакетите са два вида. Само сянка, без промяна на размера,
 * за да не подскача редът. Пулсът се мести заедно с избора.
 */
@keyframes daga-tab-halo {
	0%, 100% { box-shadow: 0 0 0 0 rgba(245, 135, 168, 0); }
	50%      { box-shadow: 0 0 26px 8px rgba(245, 135, 168, .42); }
}

.daga-tabs.is-hinting .daga-tab[aria-selected="false"] {
	animation: daga-tab-halo 2.4s var(--ease) infinite;
}

/* Всички карти са с еднаква височина: редовете се делят поравно,
   а тялото на картата се разпъва, за да остане бутонът долепен долу. */
.daga-pkgs {
	display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px;
	align-items: stretch; grid-auto-rows: 1fr;
}
.daga-pkgs[hidden] { display: none; }
/* Панел с една карта — тя не се разлива на цялата ширина. */
.daga-pkgs--solo { grid-template-columns: minmax(0, 540px); justify-content: center; }

.daga-pkg {
	--accent: #F472B6;
	--accent-bg: #FEE5F3;
	--accent-soft: #FFF6FB;
	--accent-line: rgba(244, 114, 182, .28);
	--accent-dot: rgba(244, 114, 182, .22);
	--accent-chip: rgba(244, 114, 182, .16);
	border: 1px solid var(--accent-line);
	border-radius: var(--radius-lg);
	overflow: hidden;
	background: var(--white);
	display: flex; flex-direction: column;
}
.daga-pkg--pink {
	--accent: #F472B6; --accent-bg: #FEE5F3; --accent-soft: #FFF6FB;
	--accent-line: rgba(244, 114, 182, .28); --accent-dot: rgba(244, 114, 182, .22); --accent-chip: rgba(244, 114, 182, .16);
}
.daga-pkg--blue {
	--accent: #3B82F6; --accent-bg: #E0EDFE; --accent-soft: #F5F9FF;
	--accent-line: rgba(59, 130, 246, .28); --accent-dot: rgba(59, 130, 246, .22); --accent-chip: rgba(59, 130, 246, .14);
}
.daga-pkg--gold {
	--accent: #D4980A; --accent-bg: #FBF2D9; --accent-soft: #FFFCF4;
	--accent-line: rgba(212, 152, 10, .30); --accent-dot: rgba(212, 152, 10, .22); --accent-chip: rgba(212, 152, 10, .16);
}
.daga-pkg--teal {
	--accent: #2A9D8F; --accent-bg: #DFF2F0; --accent-soft: #F5FBFA;
	--accent-line: rgba(42, 157, 143, .28); --accent-dot: rgba(42, 157, 143, .22); --accent-chip: rgba(42, 157, 143, .14);
}
.daga-pkg--sky {
	--accent: #3FA9E0; --accent-bg: #E3F4FD; --accent-soft: #F4FBFE;
	--accent-line: rgba(63, 169, 224, .30); --accent-dot: rgba(63, 169, 224, .22); --accent-chip: rgba(63, 169, 224, .16);
}

/* — Класически пакет (Рожден ден) — */
.daga-pkg__head {
	position: relative; overflow: hidden;
	background: var(--accent-bg);
	padding: 34px 28px 30px;
	text-align: center;
	border-bottom: 1px solid var(--accent-line);
}
/* Точките зад съдържанието на главата. */
.daga-pkg__head::before {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background-image:
		radial-gradient(circle, var(--accent-dot) 46%, transparent 47%),
		radial-gradient(circle, var(--accent-chip) 46%, transparent 47%),
		radial-gradient(circle, var(--accent-dot) 46%, transparent 47%),
		radial-gradient(circle, var(--accent-chip) 46%, transparent 47%);
	background-repeat: no-repeat;
	background-size: 15px 15px, 11px 11px, 13px 13px, 9px 9px;
	background-position: 20% 62%, 12% 34%, 80% 62%, 88% 30%;
}

/* Сърчицата, звездичките и искриците от дизайна. Три слоя маска в
   цвета на пакета — по две едри фигури встрани и една малка. */
.daga-pkg__head::after {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background: var(--accent);
	opacity: .9;
	-webkit-mask-image: var(--orn), var(--orn), var(--orn);
	        mask-image: var(--orn), var(--orn), var(--orn);
	-webkit-mask-repeat: no-repeat, no-repeat, no-repeat;
	        mask-repeat: no-repeat, no-repeat, no-repeat;
	-webkit-mask-size: 26px 26px, 26px 26px, 15px 15px;
	        mask-size: 26px 26px, 26px 26px, 15px 15px;
	-webkit-mask-position: 5% 30%, 95% 23%, 15% 55%;
	        mask-position: 5% 30%, 95% 23%, 15% 55%;
}
.daga-pkg--pink .daga-pkg__head { --orn: var(--orn-heart); }
.daga-pkg--blue .daga-pkg__head { --orn: var(--orn-star); }
.daga-pkg--gold .daga-pkg__head { --orn: var(--orn-sparkle); }
.daga-pkg--teal .daga-pkg__head { --orn: var(--orn-dot); }
.daga-pkg--sky  .daga-pkg__head { --orn: var(--orn-star); }

.daga-pkg__rainbow { width: 62px; height: auto; margin: 0 auto 12px; position: relative; }
/* Отстоянието отдолу е в blocks.css — там, където се връща изяденото
   от нулирането на `.wp-block-heading`. */
.daga-pkg__title {
	position: relative;
	font-size: 1.375rem; font-weight: 600; color: var(--accent); margin: 0;
	letter-spacing: -.01em;
}
.daga-pkg__meta {
	position: relative;
	display: block; margin: 0;
	font-size: 11.5px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
	color: var(--accent);
}

.daga-pkg__body { padding: 26px 28px 28px; background: var(--accent-soft); flex: 1; display: flex; flex-direction: column; }

.daga-pkg__list { list-style: none; margin: 0 0 22px; padding: 0; display: grid; gap: 13px; }
.daga-pkg__list li {
	position: relative; padding-left: 32px;
	font-size: var(--text); line-height: 1.5; color: var(--ink);
}
.daga-pkg__list li::before {
	content: ""; position: absolute; left: 0;
	top: calc((1.5em - 20px) / 2 + var(--icon-nudge));
	width: 20px; height: 20px; border-radius: 50%;
	background: var(--accent-chip);
}
.daga-pkg__list li::after {
	content: ""; position: absolute; left: 4px;
	top: calc((1.5em - 12px) / 2 + var(--icon-nudge));
	width: 12px; height: 12px; background: var(--accent);
	-webkit-mask: var(--check) center / contain no-repeat;
	        mask: var(--check) center / contain no-repeat;
}

/* — Добавки по избор — */

p.daga-addons__title {
	margin: 0 0 12px;
	font-size: 11.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
	color: var(--accent);
}

/* Пунктиран борд в цвета на пакета — както при бележките в дизайна. */
.daga-addon {
	background: var(--white);
	border: 1px dashed color-mix(in srgb, var(--accent) 42%, transparent);
	border-radius: 14px; padding: 12px 14px; margin-bottom: 10px;
	transition: border-color .18s ease, background-color .18s ease;
}
.daga-addon:last-child { margin-bottom: 0; }
/* Избраната добавка остава по-светла от тялото на картата — иначе се
   слива с фона му и се губи. */
.daga-addon.is-picked {
	border-style: solid; border-color: var(--accent);
	background: color-mix(in srgb, var(--accent) 7%, var(--white));
}

/* Редът става избираем чак когато скриптът е сложил полето — дотогава
   стои като обикновен списък с цени. */
.daga-addon.is-ready .daga-addon__row { cursor: pointer; }
.daga-addon.is-ready:hover { border-color: var(--accent); }
.daga-addon__row { display: flex; align-items: flex-start; gap: 10px; }
.daga-addon__body { flex: 1; min-width: 0; }

.daga-addon p { margin: 0; }
p.daga-addon__name {
	display: flex; align-items: flex-start; gap: 8px;
	font-size: 14px; font-weight: 500; line-height: 1.45; color: var(--ink);
}
p.daga-addon__price {
	flex: none; margin-left: auto;
	font-size: 13.5px; font-weight: 700; color: var(--accent); white-space: nowrap;
}

/* Самото поле — кутийка и кръгче в цвета на пакета. */
.daga-addon__input {
	flex: none; -webkit-appearance: none; appearance: none;
	width: 18px; height: 18px; margin: 0; padding: 0;
	/* Оптически на височината на първия ред текст. */
	transform: translateY(1px);
	background: var(--field-bg, #F9F9FB);
	border: 1.5px solid color-mix(in srgb, var(--accent) 45%, transparent);
	border-radius: 6px; cursor: pointer;
	transition: background .18s ease, border-color .18s ease;
}
.daga-addon__input[type="radio"] { border-radius: 50%; }
.daga-addon__input:hover { border-color: var(--accent); }
.daga-addon__input:checked { background: var(--accent); border-color: var(--accent); }
.daga-addon__input[type="checkbox"]:checked::after {
	content: ""; display: block; width: 100%; height: 100%;
	background: var(--white);
	-webkit-mask: var(--icon-check) center / 14px 14px no-repeat;
	        mask: var(--icon-check) center / 14px 14px no-repeat;
}
/* Кръгчето се рисува като градиент върху цялата кутия: центърът му е
   центърът на полето, независимо какви полета му дава браузърът. */
.daga-addon__input[type="radio"]:checked::after {
	content: ""; display: block; width: 100%; height: 100%;
	background: radial-gradient(circle at 50% 50%, var(--white) 0 3px, transparent 3.5px);
}
.daga-addon__input:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

/* Нивата и допълненията излизат под реда, щом добавката е включена. */
.daga-addon__opts,
.daga-addon__subs {
	margin-top: 10px; padding-top: 10px;
	border-top: 1px dashed color-mix(in srgb, var(--accent) 32%, transparent);
	display: grid; gap: 8px;
}
.daga-addon__opts[hidden],
.daga-addon__subs[hidden] { display: none; }

.daga-addon__opt,
.daga-addon__sub { margin: 0; }
p.daga-addon__opt-name,
p.daga-addon__sub-name { font-size: 13px; font-weight: 600; color: var(--ink); line-height: 1.4; }
p.daga-addon__opt-desc { font-size: 12.5px; color: var(--body); line-height: 1.45; margin-top: 2px; }
p.daga-addon__opt-price,
p.daga-addon__sub-price {
	flex: none; margin-left: auto;
	font-size: 13px; font-weight: 700; color: var(--accent); white-space: nowrap;
}

/* — Цената над бутона — */

.daga-pkg__total {
	margin-top: auto; padding-top: 18px;
	border-top: 1px solid var(--accent-line);
	display: grid; grid-template-columns: 1fr auto; align-items: baseline; gap: 2px 14px;
}
p.daga-pkg__total-label {
	margin: 0;
	font-size: 11.5px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
	color: var(--accent);
}
p.daga-pkg__price {
	margin: 0; text-align: right;
	font-size: 1.75rem; font-weight: 600; line-height: 1.05; color: var(--accent);
}
p.daga-pkg__total-note {
	grid-column: 1 / -1; margin: 4px 0 0;
	font-size: 12.5px; color: var(--body);
}
p.daga-pkg__total-note[hidden] { display: none; }

.daga-pkg__cta { margin-top: 14px; padding-top: 0; }
.daga-pkg .daga-btn { --btn-bg: var(--accent); }

/* — Арт пакет — */
.daga-pkg--art .daga-pkg__head { text-align: left; padding: 26px 26px 24px; }
.daga-pkg--art .daga-pkg__head::before {
	background-size: 13px 13px, 9px 9px, 11px 11px, 7px 7px;
	background-position: 88% 64%, 81% 36%, 95% 46%, 78% 80%;
}
/* Арт картите са с точки по дизайн — без сърца и звезди. */
.daga-pkg--art .daga-pkg__head::after { display: none; }
.daga-pkg__badge {
	background: var(--accent); color: #fff;
	font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase;
	padding: 8px 14px; border-radius: 8px; white-space: nowrap;
}
/* В арт картите табелката стои в потока — вече няма цена до нея. */
.daga-pkg--art .daga-pkg__badge {
	position: relative; display: inline-block; margin: 0 0 14px;
}
.daga-pkg__name {
	position: relative;
	font-size: 1.1875rem; font-weight: 600; letter-spacing: .01em; text-transform: uppercase;
	color: var(--ink); margin: 0 0 4px;
}
.daga-pkg__for {
	position: relative;
	display: block; font-style: italic; font-weight: 600; font-size: 14px;
	color: var(--accent); margin: 0px;
}
.daga-pkg__chip {
	position: relative;
	display: inline-block; margin: 10px 0px;
	background: var(--accent-chip); color: var(--accent);
	font-size: 13px; font-weight: 600; border-radius: var(--pill);
	padding: calc(5px - var(--optical)) 14px calc(5px + var(--optical));
}
.daga-pkg__desc { position: relative; font-size: var(--text-sm); color: var(--body); margin: 0; }
.daga-pkg--art .daga-pkg__list li { font-size: var(--text-sm); }
.daga-pkg--art p.daga-addon__name { font-size: 13.5px; }

/* --------------------------------------------------------------------------
   Видео
   -------------------------------------------------------------------------- */

/* Уводът над видеото е отделна секция — вътре в `.daga-video` бутонът за
   пускане би се центрирал спрямо текста, а фонът е тъмен. */
.daga-section--video-intro { padding-bottom: 0; }

/* На десктоп върви хоризонталната (16:9) версия и запълва лентата от
   дизайна. На тесни екрани скриптът подменя източника с вертикалната. */
.daga-video {
	position: relative; overflow: hidden;
	background: var(--ink);
}
.daga-video__play {
	position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
	width: 84px; height: 84px; padding: 0;
	display: flex; align-items: center; justify-content: center;
	background: rgba(255, 255, 255, .16);
	-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
	border: 2px solid rgba(255, 255, 255, .85); border-radius: 50%;
	color: #fff; cursor: pointer;
	transition: background .2s ease, transform .2s ease, opacity .2s ease;
}
.daga-video__play .daga-icon { width: 26px; height: 26px; margin-left: 0px; }
.daga-video__play:hover { background: rgba(255, 255, 255, .3); transform: translate(-50%, -50%) scale(1.06); }
.daga-video.is-playing .daga-video__play { opacity: 0; pointer-events: none; }

/* --------------------------------------------------------------------------
   Галерия
   -------------------------------------------------------------------------- */

.daga-gallery { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.daga-gallery__item { margin: 0; aspect-ratio: 8 / 5; }
.daga-gallery__item--feature { grid-column: span 2; grid-row: span 2; aspect-ratio: auto; }
.daga-gallery__item[hidden] { display: none; }
.daga-gallery a { display: block; overflow: hidden; border-radius: var(--radius); height: 100%; }
.daga-gallery img {
	width: 100%; height: 100%; object-fit: cover;
	border-radius: var(--radius); display: block;
	transition: transform .4s ease;
}
.daga-gallery a:hover img { transform: scale(1.04); }

/* --------------------------------------------------------------------------
   Ревюта
   -------------------------------------------------------------------------- */

.daga-rating { display: flex; align-items: center; justify-content: center; gap: 12px; margin-top: 22px; }
.daga-stars { display: inline-flex; gap: 4px; }
.daga-stars .daga-icon { width: 17px; height: 17px; color: var(--yellow); }
.daga-rating__score { font-size: 1.375rem; font-weight: 600; color: var(--ink); line-height: 1; }
.daga-rating__count { font-size: 14px; color: var(--muted); }

.daga-reviews { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; }

.daga-review {
	background: var(--white); border: 1px solid var(--line);
	border-radius: var(--radius); padding: 24px 26px 26px;
	box-shadow: var(--shadow-sm);
}
.daga-review__top { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; }
.daga-review__avatar {
	flex: none; width: 44px; height: 44px; border-radius: 50%;
	display: flex; justify-content: center; align-items: center;
	color: #fff; font-size: 14px; font-weight: 600;
	/*
	 * Оптически на центъра, както при хапчетата: разликата се изважда от
	 * горния падинг и се добавя към долния. Едностранен падинг не върши
	 * работа — там, където поправката е отрицателна, браузърът реже
	 * отрицателния падинг до нула и инициалите остават изместени.
	 * Основата 4px само гарантира, че и двете страни остават положителни.
	 */
	padding-block: calc(4px - var(--optical)) calc(4px + var(--optical));
}
.daga-review__who { flex: 1; min-width: 0; }
.daga-review__name { display: block; font-size: 14px; font-weight: 600; color: var(--ink); line-height: 1.3; }
.daga-review__when { display: block; font-size: 12px !important; color: var(--muted); }
.daga-review__g { flex: none; width: 20px; height: 20px; }
.daga-review .daga-stars { margin-block: 4px 16px; }
.daga-review p { font-size: var(--text); line-height: 1.5; margin: 0; }
.daga-review[hidden] { display: none; }

/* --------------------------------------------------------------------------
   Контакт
   -------------------------------------------------------------------------- */

.daga-contact-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-bottom: 44px; }
.daga-contact-card {
	background: var(--surface); border: 1px solid var(--line);
	border-radius: var(--radius); padding: 26px 20px; text-align: center;
	transition: box-shadow .2s ease, transform .2s ease;
}
.daga-contact-card:hover { box-shadow: var(--shadow); transform: translateY(-2px); }
.daga-contact-card__icon {
	width: 46px; height: 46px; margin: 0 auto 14px; border-radius: 50%;
	display: grid; place-items: center;
}
.daga-contact-card__icon .daga-icon { width: 20px; height: 20px; }
.daga-contact-card--pink   .daga-contact-card__icon { background: var(--pink-bg);   color: var(--pink); }
.daga-contact-card--blue   .daga-contact-card__icon { background: var(--blue-bg);   color: var(--blue); }
.daga-contact-card--yellow .daga-contact-card__icon { background: var(--yellow-bg); color: var(--yellow); }
.daga-contact-card__label {
	display: block; font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
	color: var(--muted); margin-bottom: 8px;
}
.daga-contact-card__value { display: block; font-size: 16px; font-weight: 600; color: var(--ink); }
a.daga-contact-card:hover .daga-contact-card__value { color: var(--pink); }

.daga-contact-card--viber  .daga-contact-card__icon { background: var(--viber-bg);  color: var(--viber); }
a.daga-contact-card--viber:hover .daga-contact-card__value { color: var(--viber); }

.daga-form-card {
	position: relative; background: var(--white);
	border: 1px solid var(--line); border-radius: var(--radius-lg);
	padding: 40px; box-shadow: var(--shadow);
	overflow: hidden;
}
.daga-form-card::before {
	content: ""; position: absolute; inset: 0 0 auto; height: 6px; background: var(--rainbow);
}

/* Форма — важи и за Contact Form 7, и за резервния HTML вариант */
.daga-form { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px 22px; }
.daga-form__field { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.daga-form__field--full { grid-column: 1 / -1; }
.daga-form__field > label,
.daga-form__field > .daga-form__label {
	font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase;
	color: var(--label);
}
.daga-form__req { color: var(--pink); }

.daga-form input[type="text"],
.daga-form input[type="tel"],
.daga-form input[type="email"],
.daga-form input[type="date"],
.daga-form input[type="number"],
.daga-form select,
.daga-form textarea {
	width: 100%;
	background: var(--field-bg);
	border: 1px solid transparent;
	border-radius: var(--radius-sm);
	padding: 15px 17px;
	font-family: inherit; font-size: var(--text); color: var(--ink);
	/* Само цветът — `background` би анимирал и стрелката на дропдауна. */
	transition: border-color .18s ease, background-color .18s ease;
	-webkit-appearance: none; appearance: none;
}
.daga-form textarea { min-height: 132px; resize: vertical; line-height: 1.5; }
.daga-form select {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23A4ACB6'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 12px center;
	background-size: 22px;
	padding-right: 42px;
	/* Имената на пакетите са дълги — малко по-дребен шрифт ги побира. */
	font-size: 14px;
	text-overflow: ellipsis;
}
.daga-form select option { font-size: 14px; }
.daga-form ::placeholder { color: #C4C4CE; opacity: 1; }
.daga-form input:focus, .daga-form select:focus, .daga-form textarea:focus {
	/* `background` е съкращение и трие `background-image` — стрелката. */
	outline: none; background-color: var(--white); border-color: var(--pink);
}

.daga-form__actions {
	grid-column: 1 / -1;
	display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
	margin-top: 4px;
}
.daga-form__hint { display: inline-flex; align-items: center; gap: 8px; font-size: var(--text-sm); color: var(--muted); line-height: 1; }
.daga-form__hint .daga-icon { width: 16px; height: 16px; }

/*
 * Избраният пакет
 *
 * Кутията се пълни от скрипта при щракане на „Резервирайте сега" и е
 * жив образ на картата — затова стойностите ѝ отиват в скритите полета
 * `paket` и `dobavki`, а те заминават с писмото.
 */
.daga-form__selection { display: none; }

.daga-summary {
	grid-column: 1 / -1;
	background: var(--pink-bg); border: 1px solid rgba(245, 135, 168, .35);
	border-radius: var(--radius); padding: 18px 20px;
}
.daga-summary[hidden] { display: none; }

.daga-summary__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.daga-summary__eyebrow {
	margin: 0;
	font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
	color: var(--pink);
}
.daga-summary__clear {
	padding: 0; background: none; border: 0; cursor: pointer;
	font-family: inherit; font-size: 12.5px; font-weight: 600; color: var(--body);
	transition: color .18s ease;
}
.daga-summary__clear:hover { color: var(--pink); text-decoration: underline; text-underline-offset: 3px; }

.daga-summary__name { margin: 8px 0 0; font-size: 16px; font-weight: 600; color: var(--ink); }

.daga-summary__list { list-style: none; margin: 14px 0 0; padding: 0; display: grid; gap: 8px; }
.daga-summary__item {
	display: flex; align-items: baseline; gap: 10px;
	font-size: var(--text-sm); color: var(--body); line-height: 1.45;
}
.daga-summary__label { flex: 1; min-width: 0; }
.daga-summary__price { flex: none; font-weight: 600; color: var(--ink); white-space: nowrap; }
.daga-summary__item--base { color: var(--ink); }

.daga-summary__drop {
	flex: none; width: 22px; height: 22px; padding: 0;
	/* Редът се подравнява по базовата линия, но бутонът няма текстова
	   такава — затова го центрираме спрямо височината на самия ред. */
	align-self: flex-start;
	margin-top: calc((var(--text-sm) * 1.45 - 22px) / 2);
	display: grid; place-items: center;
	background: rgba(255, 255, 255, .7); border: 1px solid rgba(245, 135, 168, .4);
	border-radius: 50%; cursor: pointer;
	font-family: inherit; font-size: 14px; line-height: 1; color: var(--pink);
	transition: background .18s ease, color .18s ease;
}
.daga-summary__drop:hover { background: var(--pink); border-color: var(--pink); color: #fff; }

.daga-summary__total {
	display: flex; align-items: baseline; justify-content: space-between; gap: 12px;
	margin: 14px 0 0; padding-top: 12px;
	border-top: 1px dashed rgba(245, 135, 168, .5);
}
.daga-summary__total-label {
	font-size: 10px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
	color: var(--pink);
}
.daga-summary__total-sum { font-size: 1.375rem; font-weight: 700; color: var(--ink); }

/* Съгласие с Политиката за поверителност — отметката стои над бутона */
.daga-form__consent { margin-top: 4px; }
.daga-form__consent .wpcf7-list-item { margin: 0; }
.daga-form__consent label {
	display: flex; align-items: flex-start; gap: 11px; margin: 0;
	font-size: var(--text-sm); line-height: 1.55; color: var(--body);
	cursor: pointer;
}
.daga-form__consent input[type="checkbox"] {
	flex: none; -webkit-appearance: none; appearance: none;
	width: 19px; height: 19px; margin: 0;
	/* Оптически на височината на първия ред текст. */
	transform: translateY(1px);
	background: var(--field-bg);
	border: 1.5px solid #DDDDE4; border-radius: 6px;
	cursor: pointer;
	transition: background .18s ease, border-color .18s ease;
}
.daga-form__consent input[type="checkbox"]:hover { border-color: var(--pink); }
.daga-form__consent input[type="checkbox"]:checked { background: var(--pink); border-color: var(--pink); }
.daga-form__consent input[type="checkbox"]:checked::after {
	content: ""; display: block; width: 100%; height: 100%;
	background: var(--white);
	-webkit-mask: var(--icon-check) center / 15px 15px no-repeat;
	        mask: var(--icon-check) center / 15px 15px no-repeat;
}
.daga-form__consent input[type="checkbox"]:focus-visible { outline: 2px solid var(--pink); outline-offset: 2px; }
.daga-form__consent a { color: var(--pink); text-decoration: underline; text-underline-offset: 2px; }
.daga-form__consent a:hover { color: var(--ink); }
.daga-form__consent .wpcf7-not-valid-tip { margin-top: 6px; }

/* Съобщения на Contact Form 7 */
.wpcf7 form .wpcf7-response-output {
	grid-column: 1 / -1;
	margin: 8px 0 0; padding: 14px 18px;
	border: 1px solid var(--line); border-radius: var(--radius-sm);
	font-size: 14.5px;
}
.wpcf7 form.sent .wpcf7-response-output { border-color: #2A9D8F; background: #F0FAF8; color: #1F6F65; }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output { border-color: var(--pink); background: #FFF5F8; color: #B4436B; }
.wpcf7-not-valid-tip { font-size: 13px; color: #D6336C; margin-top: 2px; }
.wpcf7-spinner { margin: 0 0 0 10px; }
.daga-form .wpcf7-form-control-wrap { display: block; }

/* --------------------------------------------------------------------------
   Често задавани въпроси
   -------------------------------------------------------------------------- */

.daga-faq {
	background: var(--white); border: 1px solid var(--line);
	border-radius: var(--radius); overflow: hidden;
}
.daga-faq__item + .daga-faq__item { border-top: 1px solid var(--line); }

/* Въпросът е <h3>; скриптът слага бутон вътре в него. Двата селектора
   държат вида еднакъв и преди скриптът да се е намесил. */
.daga-faq__q,
.daga-faq__q > button {
	display: flex; align-items: flex-start; gap: 14px;
	width: 100%; margin: 0; padding: 20px 24px;
	font-family: inherit; font-size: 1.0625rem; font-weight: 600; line-height: 1.45;
	color: var(--ink); text-align: left;
}
/* Паддингът минава върху бутона чак когато скриптът го е създал. */
.daga-faq.is-ready .daga-faq__q { padding: 0; }
.daga-faq__q > button {
	background: none; border: 0; cursor: pointer;
	transition: color .18s ease, background .18s ease;
}
.daga-faq__q > button:hover { color: var(--pink); }
.daga-faq__q > button:focus-visible { outline: 2px solid var(--pink); outline-offset: -3px; }

/* Стрелката вдясно се завърта при отваряне. */
.daga-faq__q > button::after {
	content: ""; flex: none; margin-left: auto; width: 18px; height: 18px;
	transform: translateY(3px);
	background: var(--pink);
	-webkit-mask: var(--icon-chevron) center / 18px 18px no-repeat;
	        mask: var(--icon-chevron) center / 18px 18px no-repeat;
	transition: transform .28s var(--ease);
}
.daga-faq__item.is-open .daga-faq__q > button::after { transform: translateY(3px) rotate(180deg); }

.daga-faq__a { padding: 0 24px 22px; }
.daga-faq__a p {
	margin: 0; font-size: var(--text-sm); line-height: 1.5; color: var(--body);
}
.daga-faq__a p + p { margin-top: 12px; }

/* Свито състояние — само когато скриптът е поел контрола, за да остане
   всичко видимо, ако JavaScript не се зареди. */
.daga-faq.is-ready .daga-faq__a { display: none; }
.daga-faq.is-ready .daga-faq__item.is-open .daga-faq__a { display: block; }
.daga-faq.is-ready .daga-faq__item.is-animating .daga-faq__a { display: block; }

/* Подканата под въпросите */
.daga-faq-cta { text-align: center; }  /* отстоянието е в blocks.css */
.daga-faq-cta__title { margin: 0 0 8px; font-size: 1.25rem; font-weight: 600; color: var(--ink); }
.daga-faq-cta p { margin: 0 auto 20px; max-width: 620px; font-size: var(--text-sm); color: var(--body); line-height: 1.5; }
.daga-faq-cta__actions { justify-content: center; }

/* --------------------------------------------------------------------------
   Instagram
   -------------------------------------------------------------------------- */

.daga-insta { display: grid; grid-template-columns: repeat(6, 1fr); gap: 12px; }
.daga-insta a { display: block; overflow: hidden; border-radius: 14px; }
.daga-insta img { width: 100%; aspect-ratio: 1; object-fit: cover; transition: transform .4s ease; }
.daga-insta a:hover img { transform: scale(1.06); }
.daga-social-cta { text-align: center; margin-top: 36px; }

/* Facebook е в собствения си цвят — страницата им върви по-добре от
   Instagram, затова стои пръв и се разпознава от разстояние. */
.daga-btn--fb { --btn-bg: #1877F2; }

/* --------------------------------------------------------------------------
   Футър
   -------------------------------------------------------------------------- */

.daga-footer { background: var(--footer-bg); padding-top: 64px; }
.daga-footer__grid {
	display: grid; grid-template-columns: 1.5fr 1fr 1.25fr 1.25fr; gap: 40px;
	padding-bottom: 48px;
}
.daga-footer__brand svg, .daga-footer__brand img { height: 54px; width: auto; margin-bottom: 18px; }
.daga-footer__about { font-size: var(--text-sm); color: var(--body); max-width: 30ch; margin: 0; }

.daga-footer__title {
	font-size: 10px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase;
	color: #B7B7BE; margin: 0 0 20px;
}
.daga-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 13px; }
.daga-footer__nav a { color: #898994; font-size: var(--text-sm); }
.daga-footer__nav a:hover { color: var(--pink); }

.daga-footer__contact li { display: flex; align-items: flex-start; gap: 11px; font-size: var(--text-sm); color: #898994; }
.daga-footer__contact a { color: #898994; }
.daga-footer__contact a:hover { color: var(--pink); }
/* Адресът може да е на два реда — иконата се центрира по първия,
   затова тук е margin, а не transform. */
.daga-footer__contact .daga-icon {
	width: 17px; height: 17px; flex: none; color: var(--pink);
	align-self: flex-start;
	margin-top: calc((1.65em - 17px) / 2 + var(--icon-nudge));
}

.daga-footer__hours li { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; font-size: var(--text-sm); }
.daga-footer__hours span:first-child { color: #898994; }
.daga-footer__hours span:last-child { color: var(--ink); font-weight: 600; text-align: right; }

.daga-social { display: flex; gap: 10px; margin-top: 24px; }
.daga-social a {
	width: 38px; height: 38px; border-radius: 50%;
	display: grid; place-items: center;
	background: var(--pink-bg); color: var(--pink);
	transition: transform .2s ease, background .2s ease, color .2s ease;
}
.daga-social a:hover { transform: translateY(-2px); filter: brightness(.95); }
/* Селекторът включва `a`, за да бие `.daga-social a` по-горе. */
.daga-social a.daga-social__fb { background: #E7F0FE; color: #1877F2; }
.daga-social a.daga-social__ig { background: var(--pink-bg); color: var(--pink); }
.daga-social a.daga-social__viber { background: #EFECFE; color: #7360F2; }
.daga-social .daga-icon { width: 18px; height: 18px; }

.daga-footer__bar {
	border-top: 1px solid var(--line);
	padding-block: 22px;
	display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
	font-size: 13.5px; color: var(--muted);
}
.daga-footer__bar a { color: var(--muted); text-decoration: underline; text-underline-offset: 2px; }
.daga-footer__bar a:hover { color: var(--pink); }
.daga-footer__made { display: inline-flex; align-items: center; gap: 7px; }
.daga-footer__made .daga-icon { width: 14px; height: 14px; color: var(--pink); transform: translateY(var(--icon-nudge)); }

/* --------------------------------------------------------------------------
   Известие (Viber без инсталирано приложение)
   -------------------------------------------------------------------------- */

.daga-toast {
	position: fixed; left: 50%; bottom: 24px; z-index: 200;
	transform: translate(-50%, 16px);
	display: flex; align-items: center; gap: 14px;
	max-width: min(520px, calc(100vw - 32px));
	padding: 14px 16px 14px 20px;
	background: var(--ink); color: #fff;
	border-radius: var(--radius); box-shadow: 0 12px 34px rgba(26, 26, 46, .26);
	font-size: var(--text-sm); line-height: 1.45;
	opacity: 0; pointer-events: none;
	transition: opacity .28s var(--ease-out), transform .28s var(--ease-out);
}
.daga-toast.is-in { opacity: 1; transform: translate(-50%, 0); pointer-events: auto; }
.daga-toast__link {
	flex: none; color: #fff; font-weight: 600;
	text-decoration: underline; text-underline-offset: 3px;
}
.daga-toast__link:hover { color: var(--pink-bg); }
.daga-toast__close {
	flex: none; width: 26px; height: 26px; padding: 0;
	background: rgba(255, 255, 255, .14); border: 0; border-radius: 50%;
	color: #fff; font-size: 17px; line-height: 1; cursor: pointer;
	transition: background .18s ease;
}
.daga-toast__close:hover { background: rgba(255, 255, 255, .28); }

@media (max-width: 560px) {
	.daga-toast { flex-wrap: wrap; gap: 8px 12px; padding: 14px 16px; }
}

/* --------------------------------------------------------------------------
   Появяване
   -------------------------------------------------------------------------- */

/*
 * Само прозрачност и 14–16px нагоре. Без мащабиране и без размазване —
 * при нежна анимация окото трябва да усети движението, не да го забележи.
 * Блокът за `prefers-reduced-motion` по-горе изключва всичко това глобално.
 */
@keyframes daga-rise {
	from { opacity: 0; transform: translateY(14px); }
	to   { opacity: 1; transform: none; }
}

/* Hero — чист CSS, за да тръгне с първия кадър, без да чака скрипта. */
.daga-hero h1 { animation: daga-rise .85s var(--ease-out) both; }
.daga-hero__text { animation: daga-rise .85s var(--ease-out) .16s both; }

/* Секциите — класът идва от скрипта, за да остане всичко видимо без него. */
.daga-reveal {
	opacity: 0; transform: translateY(16px);
	transition: opacity .7s var(--ease-out), transform .7s var(--ease-out);
}
.daga-reveal.is-in { opacity: 1; transform: none; }

/* --------------------------------------------------------------------------
   Празни/системни страници
   -------------------------------------------------------------------------- */

.daga-page { padding-block: clamp(48px, 6vw, 88px); }
.daga-page article { max-width: 760px; }
.daga-page h1 { font-size: clamp(1.9rem, 1.2rem + 2.6vw, 2.8rem); margin-bottom: 24px; }
.daga-page h2 { font-size: clamp(1.2rem, 1rem + .7vw, 1.5rem); margin: 42px 0 14px; }
.daga-page h3 { font-size: 1.05rem; margin: 28px 0 10px; }
.daga-page p { margin: 0 0 16px; font-size: var(--text); line-height: 1.5; color: var(--body); }
.daga-page ul, .daga-page ol { margin: 0 0 22px; padding-left: 22px; list-style: disc; display: grid; gap: 9px; }
.daga-page ol { list-style: decimal; }
.daga-page li { font-size: var(--text); line-height: 1.5; color: var(--body); }
.daga-page li::marker { color: var(--pink); }
.daga-page strong { color: var(--ink); font-weight: 600; }
/* Само връзките в текста — бутоните пазят своя цвят. */
.daga-page a:not(.daga-btn):not(.wp-block-button__link) {
	color: var(--pink); text-decoration: underline; text-underline-offset: 2px;
}
.daga-page a:not(.daga-btn):not(.wp-block-button__link):hover { color: var(--ink); }
.daga-page .daga-btn { text-decoration: none; }
.daga-notice {
	border: 1px dashed var(--pink); background: #FFF7FA;
	border-radius: var(--radius-sm); padding: 18px 20px;
	font-size: 14.5px; color: #A64B6C;
}

/* --------------------------------------------------------------------------
   Отзивчивост
   -------------------------------------------------------------------------- */

@media (max-width: 1080px) {
	:root { --header-h: 96px; }
	.daga-nav ul { gap: 30px; }
	.daga-footer__grid { grid-template-columns: 1fr 1fr; gap: 36px 32px; }
}

@media (max-width: 900px) {
	.daga-burger { display: flex; }
	.daga-header__phone span { display: none; }

	/* Менюто става плаващо, затова спира да бута бутоните надясно —
	   правим го изрично, за да не залепнат за логото. */
	.daga-header__actions { margin-left: auto; }

	/* Закачено за долния ръб на хедъра, за да следва смаляването му. */
	.daga-nav {
		position: absolute; top: 100%; left: 0; right: 0; margin: 0;
		background: #fff; border-bottom: 1px solid var(--line);
		box-shadow: var(--shadow);
		transform: translateY(-8px); opacity: 0; visibility: hidden;
		transition: opacity .2s ease, transform .2s ease, visibility .2s;
	}
	.daga-nav.is-open { transform: translateY(0); opacity: 1; visibility: visible; }
	.daga-nav ul { flex-direction: column; align-items: stretch; gap: 0; padding: 8px 24px 20px; }
	.daga-nav li { border-bottom: 1px solid var(--line); }
	.daga-nav li:last-child { border-bottom: 0; }
	.daga-nav a { display: block; padding: 16px 0; font-size: 17px; }
	.daga-nav a::after { display: none; }

	/* Пакетите и ревютата остават в две колони — виж 700px по-долу. */
	.daga-insta { grid-template-columns: repeat(3, 1fr); }
	.daga-form { grid-template-columns: repeat(2, 1fr); }
	.daga-form-card { padding: 28px 22px; }
	.daga-contact-cards { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 781px) {
	:root { --gutter: 18px; --text: 14px; --text-sm: 13px; }
	.daga-faq__q > button { padding: 18px 18px; gap: 12px; font-size: 14px; }
	.daga-faq__a { padding: 0 18px 20px; }

	/* Тук пакетите и ревютата слизат в една колона. Тогава еднаквата
	   височина само добавя празно място, затова я изключваме. */
	.daga-pkgs { grid-template-columns: 1fr; grid-auto-rows: auto; align-items: start; }
	.daga-reviews { grid-template-columns: 1fr; }
	.daga-contact-cards { grid-template-columns: 1fr; gap: 12px; }
	.daga-contact-card { display: flex; align-items: center; gap: 16px; text-align: left; padding: 18px 20px; }
	.daga-contact-card__icon { margin: 0; }
	.daga-gallery { grid-template-columns: repeat(2, 1fr); }
	.daga-gallery__item--feature { grid-column: span 2; grid-row: span 1; aspect-ratio: 8 / 5; }
	.daga-form { grid-template-columns: 1fr; }
	.daga-footer__grid { grid-template-columns: 1fr; }
	.daga-footer__bar { justify-content: center; text-align: center; }
	.daga-contact-card__value { font-size: 14px; }
	.daga-contact-card__label { font-size: 10px; }
	.daga-form__field > label, .daga-form__field > .daga-form__label { font-size: 10px; }
}

/* Бутонът „Резервирай" в мобилното меню — на тесни екрани хедърът
   не побира логото, телефона, бутона и хамбургера едновременно.
   Селекторът е с .daga-nav, за да бие `.daga-nav a`. */
.daga-nav .daga-nav__cta { display: none; }

@media (max-width: 560px) {
	/* На телефон лентата отгоре и заглавията заемат твърде голяма част
	   от екрана — свиваме и двете, за да остане място за съдържанието. */
	:root { --header-h: 86px; --header-h-sm: 70px; }

	.daga-header__inner { gap: 12px; }
	.daga-header__actions { gap: 6px; }
	.daga-header__actions > .daga-btn { display: none; }
	.daga-brand svg, .daga-brand img { height: 44px; }
	.daga-header.is-shrunk .daga-brand svg,
	.daga-header.is-shrunk .daga-brand img { height: 38px; }
	.daga-header__phone { padding: 10px 6px; }

	.daga-hero h1 { font-size: clamp(2rem, 1.1rem + 2.8vw, 2.2rem); }
	.daga-head h2 { font-size: clamp(1.75rem, 1rem + 2.4vw, 2rem); }
	.daga-head p { margin-top: 16px; }
	.daga-head p.daga-eyebrow { margin-bottom: 12px; font-size: 10px;}
	.daga-page h1 { font-size: 1.9rem; }

	.daga-pkg__head { padding: 26px 20px 24px; }
	.daga-pkg__body { padding: 24px 20px 26px; }
	.daga-pkg__title { font-size: 1.3rem; }
	.daga-pkg__name { font-size: 1.125rem; }
	p.daga-pkg__price { font-size: 1.625rem; }
	.daga-summary { padding: 16px; }

	.daga-nav .daga-nav__cta {
		display: flex; margin: 14px 24px 22px;
		color: #fff; padding: 15px 30px;
	}
	.daga-nav .daga-nav__cta::after { display: none; }
	.daga-nav .daga-nav__cta:hover { color: #fff; }

}

/* Между 700 и 900px двете колони са тесни — свиваме отстоянията,
   за да остане повече място за самото съдържание. */
@media (min-width: 701px) and (max-width: 900px) {
	.daga-pkgs { gap: 16px; }
	.daga-reviews { gap: 16px; }
	.daga-pkg__head { padding-inline: 20px; }
	.daga-pkg__body { padding-inline: 20px; }
	.daga-review { padding: 20px 20px 22px; }
	.daga-pkg__title { font-size: 1.2rem; }
}

@media (max-width: 480px) {
	.daga-btn { padding: calc(14px - var(--optical)) 22px calc(14px + var(--optical)); font-size: 14px; }
	.daga-pkg__head, .daga-pkg__body { padding-inline: 20px; }
	.daga-insta { grid-template-columns: repeat(2, 1fr); }
	.daga-tab { padding: calc(15px - var(--optical)) 22px calc(15px + var(--optical)); font-size: 14px; }
}
