/* Kremena Atanasova — one-pager customizations on top of the Avlon template */

html { scroll-behavior: smooth; }
section[id] { scroll-margin-top: 12px; }

/* Bulgarian is sentence-case: kill the template's Title Case on headings */
h1, h2, h3, h4, h5,
.heading-one, .heading-two, .heading-three, .heading-four, .heading-five,
.heading-six.change-text, .marquee-text, .marquee-text-2 {
  text-transform: none;
}

/* Text logo must not look like a default link */
.home-three-logo, .logo-link { text-decoration: none; }

/* Nav lockup: gold KA monogram above the stacked wordmark */
.home-three-logo {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}
.k-logo-mark { width: 44px; height: auto; display: block; }

/* Text wordmark replacing the AVLON SVG logo */
.k-logo {
  font-family: Marcellus, serif; /* aliased to Prata */
  font-size: 11px;
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: #fff;
  width: min-content; /* wraps to two stacked lines inside the bordered box */
  line-height: 1.75;
}

/* Hero CTA under the slide heading */
.k-hero-cta { display: flex; justify-content: center; margin-top: 2.4rem; }
.k-hero-cta .button-style {
  color: #fff;
  border-color: #fff;
  background-color: transparent;
}
.k-hero-cta .button-style:hover {
  background-color: #fff;
  color: #1a1a1a;
}

/* Hero headline: Bulgarian lines are long — cap line length so the h1
   wraps into balanced lines instead of spanning the whole viewport */
.home-three-slider-heading h1 {
  max-width: 24ch;
  margin-left: auto;
  margin-right: auto;
  text-wrap: balance;
}

/* Legibility scrim: slides 2-3 use light photos; demo assumed dark ones */
.home-three-slider-text {
  background: radial-gradient(ellipse 62% 55% at 50% 58%, rgba(24, 14, 9, 0.38), rgba(24, 14, 9, 0) 78%);
}
.home-three-slider-main-text-wrapper h1,
.home-three-slider-main-text-wrapper .heading-five {
  text-shadow: 0 2px 20px rgba(0, 0, 0, 0.4), 0 0 3px rgba(0, 0, 0, 0.25);
}
.k-hero-cta .button-style { box-shadow: 0 2px 16px rgba(0, 0, 0, 0.2); }

/* Mobile kicker: small enough to hold one line (no widow) */
@media (max-width: 991px) {
  .home-three-slider-main-text-wrapper .heading-five.chnage-style {
    font-size: 11px;
    letter-spacing: 0.3em;
    white-space: nowrap;
  }
}

/* The <picture> wrapper must be invisible to the template's layout */
.home-three-slider-image picture { display: contents; }

/* Single static hero: wide (21:9) extended studio image, subject centered */
.home-three-banner-slider .w-slide .home-three-slider-image img { object-position: 50% 38%; }

/* Desktop editorial composition: subject far right, delicate text low-left
   over the empty wall — quiet luxury, no overlap with the portrait. */
@media (min-width: 992px) {
  .home-three-banner-slider .w-slide .home-three-slider-image img {
    object-position: 0% 38%;
  }
  .home-three-slider-text {
    align-items: flex-end;
    justify-content: flex-start;
    padding-left: 9vw;
    padding-bottom: 13vh;
    padding-top: 110px;
    background: linear-gradient(90deg, rgba(24, 14, 9, 0.45) 0%, rgba(24, 14, 9, 0.16) 38%, rgba(24, 14, 9, 0) 62%);
  }
  .home-three-slider-main-text-wrapper { max-width: 620px; }
  .home-three-slider-main-text-wrapper .heading-five.chnage-style,
  .home-three-slider-heading h1 {
    text-align: left;
  }
  .home-three-slider-heading h1 {
    margin-left: 0;
    font-size: clamp(38px, 3.3vw, 60px);
    line-height: 1.3;
    letter-spacing: 0.014em;
    max-width: 21ch;
  }
  .home-three-slider-main-text-wrapper .heading-five.chnage-style {
    white-space: nowrap;
    font-size: 12px;
    letter-spacing: 0.42em;
    opacity: 0.82;
  }
  .home-three-slider-upper-text { justify-content: flex-start; }
  .home-three-slider-upper-text .heading-three-slider-line:first-child { display: none; }
  .home-three-slider-upper-text .heading-three-slider-line {
    flex: 0 0 48px;
    width: 48px;
    margin-left: 16px;
    opacity: 0.55;
  }
  .k-hero-cta { justify-content: flex-start; margin-top: 2rem; }
}

/* One slide — the slider chrome is off (re-enable if a second slide returns) */
.home-three-banner-left-arrow,
.home-three-banner-right-arrow { display: none !important; }

/* Subtle Ken Burns breathing so the static hero still feels alive */
@keyframes k-hero-zoom {
  from { transform: scale(1); }
  to   { transform: scale(1.05); }
}
.home-three-banner-slider .w-slide .home-three-slider-image img {
  animation: k-hero-zoom 20s ease-in-out infinite alternate;
  will-change: transform;
}
@media (prefers-reduced-motion: reduce) {
  .home-three-banner-slider .w-slide .home-three-slider-image img { animation: none; }
}

/* About cards: calm hover reveal for the Виж button and the marquee ribbon.
   (Replaces the template's IX2 cursor-follow, which lagged and looked glitchy.) */
.home-three-about-box,
.home-three-about-box * { cursor: pointer !important; } /* template hid the native cursor */
.home-three-about-box .home-three-image-view-button {
  opacity: 0;
  transform: scale(0.6);
  transition: opacity 0.3s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.home-three-about-box:hover .home-three-image-view-button {
  opacity: 1;
  transform: scale(1);
}
/* JS follow mode: the circle tracks the pointer (set via inline transform) */
.home-three-about-box.k-follow .home-three-about-view-button-wrapper,
.home-three-about-box.k-follow .home-three-image-view-button { pointer-events: none; }
.home-three-about-box.k-follow .home-three-about-view-button-wrapper {
  position: absolute;
  inset: 0;
  display: block;
}
.home-three-about-box.k-follow .home-three-image-view-button {
  position: absolute;
  left: 0;
  top: 0;
  margin: 0;
  transition: opacity 0.25s ease; /* transform is owned by the script */
}
.home-three-about-box .home-three-about-image-merquee-wrapper {
  opacity: 0;
  transition: opacity 0.35s ease;
}
.home-three-about-box:hover .home-three-about-image-merquee-wrapper { opacity: 1; }

/* За мен: снимките се преливат след портрета (data/about.ts -> slides) */
.home-three-about-image { position: relative; }
.home-three-about-image > img { opacity: 0; transition: opacity 0.7s ease, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1); }
.home-three-about-image > img.k-slide { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.home-three-about-image > img.is-on { opacity: 1; }
/* без JS / при reduced-motion: портретът остава видим, слайдовете са скрити */
.home-three-about-image > img:first-of-type { opacity: 1; }
.home-three-about-image > img.k-slide:not(.is-on) { opacity: 0; }

/* Lightbox със сертификатите */
.k-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1000000000;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  padding: clamp(1rem, 4vw, 3rem);
  background: rgba(24, 14, 9, 0.92);
}
.k-lightbox[hidden] { display: none; }
.k-lb-stage {
  position: relative;
  margin: 0;
  max-width: min(1100px, 88vw);
  width: 100%;
  text-align: center;
}
.k-lb-stage img {
  display: none;
  width: 100%;
  height: auto;
  max-height: 76vh;
  object-fit: contain;
  background: #fbf4f1;
}
.k-lb-stage img.is-on { display: block; }
.k-lb-caption {
  margin-top: 1rem;
  color: #f6ece6;
  font-family: Catamaran, sans-serif;
  font-size: 13px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}
.k-lb-close,
.k-lb-nav {
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(246, 236, 230, 0.5);
  background: transparent;
  color: #f6ece6;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease;
}
.k-lb-close:hover,
.k-lb-nav:hover { background: #f6ece6; color: #38211a; }
.k-lb-close { position: absolute; top: clamp(1rem, 3vw, 2rem); right: clamp(1rem, 3vw, 2rem); }
@media (max-width: 767px) {
  .k-lightbox { gap: 0.5rem; }
  .k-lb-close, .k-lb-nav { width: 44px; height: 44px; font-size: 18px; }
}

/* Gentle photo zoom on card hover (replaces the IX2 version) */
.home-three-about-image { overflow: hidden; }
.home-three-about-box:hover .home-three-about-image > img { transform: scale(1.045); }

/* „За мен“ — шапка над снимките */
.k-about-kicker {
  margin-top: 1.1rem;
  font-family: Catamaran, sans-serif;
  font-size: 12px;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: rgba(102, 58, 48, 0.72);
}
.k-about-lead {
  max-width: 34ch;
  margin: 1.5rem 0 0;
  font-family: Marcellus, serif;
  font-size: clamp(18px, 1.6vw, 23px);
  line-height: 1.45;
  color: #462720;
}

/* „За мен“ — дългият текст под снимките */
/* Дългият текст е в компактна двуколонна решетка, за да не разтяга секцията.
   80px повтаря padding-left на .home-three-about-wrapper (от шаблона). */
.k-story {
  margin: clamp(44px, 4.6vw, 64px) 0 0;
  padding-left: 80px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: clamp(36px, 4vw, 72px);
}
.k-story-block {
  padding: 26px 0 24px;
  border-top: 1px solid rgba(102, 58, 48, 0.16);
}
/* първият ред няма горна линия */
.k-story-block:nth-child(1),
.k-story-block:nth-child(2) { border-top: 0; padding-top: 0; }
/* последният блок е сам на реда — заема цялата ширина */
.k-story-block:last-child { grid-column: 1 / -1; }

.k-story-title {
  margin: 0 0 0.85rem;
  font-family: Marcellus, serif;
  font-size: clamp(18px, 1.55vw, 22px);
  line-height: 1.35;
  color: #462720;
  text-transform: none;
}
.k-story-p {
  margin: 0 0 0.7rem;
  font-size: 15px;
  line-height: 1.68;
}
.k-story-p:last-child { margin-bottom: 0; }
/* акцентното изречение на всеки блок */
.k-story-accent {
  font-family: Marcellus, serif;
  font-size: clamp(16px, 1.25vw, 18px);
  line-height: 1.55;
  color: #663a30;
  margin: 0.85rem 0;
}

.k-story-list {
  list-style: none;
  margin: 0 0 0.85rem;
  padding: 0;
  display: grid;
  gap: 0.5rem 1.6rem;
}
/* 6 точки = два спретнати реда по три, вместо един разпилян ред */
.k-story-block:last-child .k-story-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 991px) {
  .k-story-block:last-child .k-story-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.k-story-list li {
  position: relative;
  padding-left: 1.6rem;
  font-size: 14.5px;
  line-height: 1.5;
}
.k-story-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: -0.05em;
  font-size: 14px;
  color: #a9813f;   /* златистото на монограма, но четимо върху крем */
}
.k-story-list + .k-story-p { margin-top: 0; }

@media (max-width: 991px) { .k-story { padding-left: 0; } }
@media (max-width: 767px) {
  .k-story {
    margin-top: 40px;
    grid-template-columns: 1fr;
  }
  .k-story-block { padding: 22px 0; }
  .k-story-block:nth-child(2) { border-top: 1px solid rgba(102, 58, 48, 0.16); padding-top: 22px; }
  .k-story-block:last-child .k-story-list { grid-template-columns: 1fr; }
}
}

/* Inserted section headers (results, testimonials) */
.k-sec-head { padding-top: 3.5rem; }
.k-sec-head h2 { margin-top: 0.6rem; }
.k-sec-head-dark div,
.k-sec-head-dark h2 { color: #fff; }

/* Trust-card icons: keep them tidy at 81px */
.home-three-beauty-item img[src*="/icons/"] {
  width: 81px;
  height: 81px;
  object-fit: contain;
}

/* Golden-ratio motif replaces the template's makeup-prop backgrounds
   (brushes photo in Контакт; powder brush + lipstick smear in Процедури).
   Desktop-only, matching the template's own behavior. */
.home-three-help-slider { background-image: none; } /* lipstick smear, off theme */

/* Big slider photos: template stretched them (demo images matched the box
   natively); ours have varied aspects — cover-fit with an upper focal bias */
.home-three-help-left-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 50% 50%;
}

/* Slimmer services slider (desktop): the template reserved a 913px mask for
   925x793 photos, leaving a dead zone. Capped heights, tighter right column,
   arrows paired in their own strip right under the content. */
@media (min-width: 992px) {
  #proceduri-detail .home-three-help-slider,
  #proceduri-detail .w-slider-mask { height: auto; }
  #proceduri-detail .home-three-help-heading h2 { font-size: 42px; line-height: 1.25; }
  #proceduri-detail .home-three-help-slider { margin-top: -22px; }
  #proceduri-detail .w-slider-mask { padding-bottom: 78px; }
  #proceduri-detail .home-three-help-left-image-wrapper {
    height: 540px;
    background-color: #f4e9e3;
    padding: 26px;
  }
  #proceduri-detail .home-three-right-main-image-wrapper {
    height: 240px;
    overflow: hidden;
    background-color: #f4e9e3;
    padding: 14px;
  }
  #proceduri-detail .home-three-right-image-text .heading-five:first-child {
    font-size: 28px;
  }
  #proceduri-detail .home-three-right-image-text p {
    font-size: 15.5px;
    line-height: 1.6;
    margin-bottom: 12px;
  }
  #proceduri-detail .home-three-right-image-text .heading-five:last-child {
    font-size: 15px;
    letter-spacing: 0.08em;
    opacity: 0.72;
  }
  #proceduri-detail .home-three-right-main-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  #proceduri-detail .home-three-help-left-arrow,
  #proceduri-detail .home-three-help-right-arrow {
    top: auto;
    bottom: 20px;
    width: 72px;
    height: 54px;
  }
  #proceduri-detail .home-three-help-left-arrow { left: 60%; right: auto; }
  #proceduri-detail .home-three-help-right-arrow { left: calc(60% + 92px); right: auto; }
}

@media (min-width: 992px) {
  .home-three-makeup {
    background-image: url('/assets/kremena/icons/phi-motif.svg');
    background-position: -80px calc(100% + 70px);
    background-size: 580px auto;
    background-repeat: no-repeat;
  }
  .home-three-service {
    background-image: url('/assets/kremena/icons/phi-motif.svg');
    background-position: right -90px top 150px;
    background-size: 640px auto;
    background-repeat: no-repeat;
  }
}

/* Service slider: the curtain-wipe overlays are keyed to the template's original
   3 slides via IX2; with 8 slides they never wipe away — disable them. */
.home-three-help-slider .home-three-help-left-image-overlay { display: none !important; }

/* Testimonials: centered, visible prev/next controls under the review */
#otzivi .w-slider { padding-bottom: 96px; }
#otzivi .right-arrow-next {
  top: auto;
  bottom: 8px;
  width: auto;
  height: auto;
  border: 1px solid rgba(102, 58, 48, 0.45);
  padding: 13px 30px;
  transition: background-color 0.25s ease;
}
#otzivi .right-arrow-next.w-slider-arrow-left { left: calc(50% - 128px); right: auto; }
#otzivi .right-arrow-next.w-slider-arrow-right { left: calc(50% + 14px); right: auto; }
#otzivi .right-arrow-next .body-font {
  text-decoration: none;
  font-size: 13px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}
#otzivi .right-arrow-next:hover { background-color: #663a30; }
#otzivi .right-arrow-next:hover .body-font { color: #fff; }

/* Testimonials: drop the demo rotating badge (baked English circular text) */
.home-two-testimonial-design-wrapper { display: none !important; }

/* Contact CTA: keep the paragraph clear of the absolute collage photos */
.home-three-makeup .home-three-makeup-heading + p,
.home-three-makeup p.text-align-center {
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}


/* ============ Галерия ============ */
.k-gallery { background-color: #fbf4f1; padding: 110px 15px 120px; }
.k-gallery .k-sec-head { padding-top: 0; }
.k-gallery h2 { font-size: clamp(30px, 3.4vw, 46px); }

.k-gal-filters {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 2.6rem 0 3.4rem;
}
.k-gal-filter {
  border: 1px solid rgba(102, 58, 48, 0.32);
  background: transparent;
  color: #663a30;
  font-family: Catamaran, sans-serif;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  padding: 11px 22px;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
.k-gal-filter:hover { border-color: #663a30; }
.k-gal-filter.is-on { background: #663a30; border-color: #663a30; color: #fff; }

/* Зидана мрежа: снимките запазват естествените си пропорции — нищо не се реже.
   Колоните се редуват на височина, както разместените карти в „За мен“. */
.k-gal-grid {
  column-count: 4;          /* fallback без JS */
  column-gap: 22px;
}
/* JS подрежда снимките в колони с изравнена височина */
.k-gal-grid.k-masonry {
  column-count: auto;
  display: flex;
  align-items: flex-start;
}
.k-gal-col {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.k-gal-grid.k-masonry .k-gal-item { margin: 0; }
.k-gal-item {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  margin: 0 0 22px;
  background: #f4e9e3;
  cursor: pointer;
  overflow: hidden;
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  position: relative;
  line-height: 0;
}
.k-gal-item[hidden] { display: none; }
.k-gal-item img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.4s ease;
}
.k-gal-item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(102, 58, 48, 0);
  transition: background-color 0.4s ease;
  pointer-events: none;
}
.k-gal-item:hover img { transform: scale(1.04); }
.k-gal-item:hover::after { background: rgba(102, 58, 48, 0.09); }
.k-gal-item:focus-visible { outline: 2px solid #663a30; outline-offset: 3px; }

.k-gal-empty {
  text-align: center;
  color: #6b5427;
  padding: 2rem 0;
}

@media (max-width: 1199px) { .k-gal-grid { column-count: 3; } }
@media (max-width: 767px) {
  .k-gallery { padding: 70px 15px 80px; }
  .k-gal-grid { column-count: 2; column-gap: 12px; }
  .k-gal-item { margin-bottom: 12px; }
}
@media (max-width: 359px) { .k-gal-grid { column-count: 1; } }


/* ============ Често задавани въпроси ============ */
/* малко по-топъл тон от галерията отгоре и от контакта отдолу, за да се чете като отделен блок */
.k-faq { background-color: #f6ece6; padding: 110px 15px 120px; }
.k-faq .k-sec-head { padding-top: 0; }
.k-faq h2 { font-size: clamp(30px, 3.4vw, 46px); }

.k-faq-list {
  max-width: 860px;
  margin: 3rem auto 0;
  border-top: 1px solid rgba(102, 58, 48, 0.18);
}
.k-faq-item { border-bottom: 1px solid rgba(102, 58, 48, 0.18); }

.k-faq-q {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 26px 4px;
  cursor: pointer;
  list-style: none;
  font-family: Marcellus, serif;
  font-size: clamp(17px, 1.5vw, 21px);
  line-height: 1.45;
  color: #462720;
  transition: color 0.25s ease;
}
.k-faq-q::-webkit-details-marker { display: none; }
.k-faq-q:hover { color: #663a30; }
.k-faq-q:focus-visible { outline: 2px solid #663a30; outline-offset: 4px; }

/* + което става − при отворен въпрос */
.k-faq-icon {
  position: relative;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin-top: 0.35em;
}
.k-faq-icon::before,
.k-faq-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 16px;
  height: 1px;
  background: #663a30;
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
.k-faq-icon::after { transform: rotate(90deg); }
.k-faq-item[open] .k-faq-icon::after { transform: rotate(0deg); }

.k-faq-a { padding: 0 4px 28px; max-width: 68ch; }
.k-faq-a p {
  margin: 0;
  font-size: 15.5px;
  line-height: 1.72;
}
.k-faq-item[open] .k-faq-a { animation: k-faq-in 0.38s cubic-bezier(0.22, 1, 0.36, 1); }
@keyframes k-faq-in {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .k-faq-item[open] .k-faq-a { animation: none; }
}

.k-faq-cta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  margin-top: 3.4rem;
  text-align: center;
}
.k-faq-cta p { margin: 0; }

@media (max-width: 767px) {
  .k-faq { padding: 70px 15px 80px; }
  .k-faq-list { margin-top: 2.2rem; }
  .k-faq-q { padding: 20px 2px; gap: 1rem; }
  .k-faq-a { padding-bottom: 22px; }
}


/* ============ Сертификати (в „За мен“) ============
   Сертификатите са ХОРИЗОНТАЛНИ — в тесните вертикални карти се режеха,
   затова стоят в собствен ред, в естествените си пропорции. */
.k-certs {
  margin: clamp(40px, 4.4vw, 60px) 0 0;
  padding-left: 80px;
}
.k-certs-label {
  font-family: Catamaran, sans-serif;
  font-size: 12px;
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: rgba(102, 58, 48, 0.72);
  margin-bottom: 1.2rem;
}
.k-certs-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(12px, 1.4vw, 20px);
}
.k-cert {
  display: block;
  padding: 0;
  border: 1px solid rgba(102, 58, 48, 0.16);
  background: #fff;
  cursor: pointer;
  overflow: hidden;
  line-height: 0;
  transition: border-color 0.3s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
.k-cert img { width: 100%; height: auto; display: block; }
.k-cert:hover { border-color: rgba(169, 129, 63, 0.7); transform: translateY(-3px); }
.k-cert:focus-visible { outline: 2px solid #663a30; outline-offset: 3px; }

@media (max-width: 991px) { .k-certs { padding-left: 0; } }
@media (max-width: 767px) {
  .k-certs { margin-top: 34px; }
  .k-certs-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


/* ============ „Разгледай още“ (под галерията) ============ */
.k-gal-follow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: clamp(18px, 2.4vw, 34px);
  margin-top: clamp(44px, 5vw, 70px);
  padding-top: clamp(28px, 3.4vw, 44px);
  border-top: 1px solid rgba(102, 58, 48, 0.16);
}
.k-gal-follow-text p {
  margin: 0.7rem 0 0;
  font-family: Marcellus, serif;
  font-size: clamp(19px, 2vw, 26px);
  line-height: 1.35;
  color: #663a30;
}
.k-gal-follow-links { display: flex; flex-wrap: wrap; gap: 12px; }

@media (max-width: 767px) {
  .k-gal-follow { justify-content: flex-start; }
  .k-gal-follow-links { width: 100%; }
}


/* ============ Локация (футър) ============ */
.k-loc { margin: 0.35rem 0 0.15rem; }
.k-loc-label {
  font-family: Catamaran, sans-serif;
  font-size: 11px;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 0.45rem;
}
.k-loc-map {
  display: inline-block;
  margin-top: 0.35rem;
  text-decoration: underline;
  text-underline-offset: 4px;
  opacity: 0.85;
  transition: opacity 0.25s ease;
}
.k-loc-map:hover { opacity: 1; }

/* На телефон колоната „Контакт“ е центрирана — локацията да не стърчи вляво. */
@media (max-width: 991px) { .k-loc { text-align: center; } }


/* Долната навигация във футъра: с 6 елемента „За мен“ се пречупваше на два реда. */
.footer-three-bottom-wrapper a { white-space: nowrap; }


/* ============ Резултати — снимките да не се режат ============
   Рамката е пейзажна (704x620), а нейните нови PhiBrows композиции са
   портретни (900x1200 и 512x640). С object-fit:cover се отрязваха 15-34%,
   точно отдолу, където е водният знак „PhiBrows / Kremena Atanasova“.
   contain върху мат в кафявото на секцията показва цялата снимка и
   изглежда нарочно, а не като летърбокс. Важи и за двата акордеона
   (десктоп .home-three-effect и мобилен .home-three-image-effect). */
.home-three-effect img.auto-fit,
.home-three-image-effect img.auto-fit {
  object-fit: contain;
  background-color: #663a30;
}
