/* 
    Theme Name: Nativa Beauty
    Theme URI: https://example.com/nativa-beauty
    Description: A WordPress theme designed for beauty and wellness businesses, featuring a clean and elegant design with customizable color schemes and responsive layouts.
    Author: Your Name
    Version: 1.0
    Tags: beauty, wellness, responsive, customizable, elegant
    Licence URI: https://example.com/nativa-beauty/license
*/

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

  :root {
    --nude: #e8d5c4;
    --nude-light: #f5ede5;
    --nude-dark: #c9b09a;
    --cream: #faf6f2;
    --warm-white: #fdf9f6;
    --charcoal: #17291c;
    --charcoal-mid: #4a3f38;
    --charcoal-light: #7a6e68;
    --gold: #a17e47;
    --gold-light: #cbaa6b;
    --serif: 'Urbanist', sans-serif;
    --sans: 'Cormorant Garmond', sans-serif;
  }

  html { scroll-behavior: smooth; }

  body {
    font-family: var(--sans);
    background: var(--warm-white);
    color: var(--charcoal);
    overflow-x: hidden;
  }

  /* NAV */
  nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 100;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.4rem 3rem;
  background: rgba(23, 41, 28, 0.88);
  backdrop-filter: blur(12px);
  border-bottom: 0.5px solid rgba(203, 170, 107, 0.25);
  transition: padding 0.3s ease;
}

.custom-logo-link {
  width: 70px;
  height: auto;

  img {
    width: 100%;
    height: auto;
    filter: brightness(0) invert(1);
  }
}

  .custom-logo-link span { color: var(--gold); font-style: italic; }

  .nav-menu {
    display: flex;
    gap: 2.5rem;
    list-style: none;
	  
	  li {
		  position: relative;
		  
		  svg {
			  transition: all .3s ease-in-out;
		  }
		  
		  .sub-menu {
			  position: absolute;
			  top: 30px;
			  left: 0;
			  height: fit-content;
			  padding: 20px;
			  min-height: 0;
			  width: 350px;
			  background: #fff;
			  visibility: hidden;
			  opacity: 0;
			  transition: all .3s ease-in-out;
			  list-style-type: none;
			  border-radius: 8px;
			  display: flex;
			  flex-direction: column;
			  gap: 12px;
			  
			  li {
				  transition: all .3s ease-in-out;
				  
				  &:hover {
					  opacity: 0.7;
				  }
			  }
			  
		  }
		  
		  &:hover {
			  svg {
				  transform: rotate(180deg);
			  }
			  .sub-menu {
				  min-height: 100%;
				  visibility: visible;
				  opacity: 1;
			  }
		  }
	  }
  }

  .nav-menu a {
    font-family: var(--sans);
    font-size:.9rem;
    font-weight: 400;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--charcoal-mid);
    text-decoration: none;
    transition: color 0.2s;
  }

  .nav-links a:hover { color: var(--gold); }

  .nav-cta {
    font-family: var(--sans);
    font-size:1.2rem;
    font-weight: 400;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--charcoal);
    background: none;
    border: 0.5px solid var(--charcoal);
    padding: 0.65rem 1.8rem;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.25s ease;
  }

  .nav-cta:hover {
    background: var(--charcoal);
    color: var(--cream);
  }

  /* HERO */
  .hero {
    min-height: 100vh;
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    padding-top: 80px;
  }

  .hero-left {
    padding: 6rem 4rem 6rem 4rem;
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
	height: 100%;
  }

  .hero-eyebrow {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.9rem;
    font-weight: 400;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: var(--gold);
  }

  .hero-eyebrow::before {
    content: '';
    display: block;
    width: 40px;
    height: 0.5px;
    background: var(--gold);
  }

  .hero-title {
    font-family: var(--serif);
    font-size: clamp(3rem, 5vw, 5rem);
    font-weight: 300;
    line-height: 1.1;
    color: var(--charcoal);
  }

  .hero-title em {
    font-style: italic;
    color: var(--gold);
  }

  .hero-tagline {
    font-size: 1.2rem;
    font-weight: 300;
    line-height: 1.9;
    color: var(--charcoal-light);
    letter-spacing: 0.02em;
    
  }

.btn-float {
	 font-family: var(--sans);
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--cream);
    background: var(--charcoal);
    border: none;
    padding: 1rem 2.5rem;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.25s ease;
    display: inline-block;
	position: fixed;
	bottom: 2rem;
	right: 2rem;
	z-index: 10;
}

  .btn-primary {
    font-family: var(--sans);
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--cream);
    background: var(--charcoal);
    border: none;
    padding: 1rem 2.5rem;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.25s ease;
    display: inline-block;
  }

  .btn-primary:hover { background: var(--charcoal-mid); }

  .btn-ghost {
    font-family: var(--sans);
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--charcoal-mid);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: color 0.2s;
  }

  .btn-ghost::after {
    content: '→';
    transition: transform 0.2s;
  }

  .btn-ghost:hover { color: var(--gold); }
  .btn-ghost:hover::after { transform: translateX(4px); }

  .hero-right {
    height: 100%;
    position: relative;
    overflow: hidden;
  }

  .hero-img {
    width: 100%;
    height: 100%;
	max-height: 110dvh;
    object-fit: cover;
    filter: brightness(0.92) saturate(0.85);
  }

  .hero-badge {
    position: absolute;
    bottom: 3rem;
    left: -2rem;
    background: var(--warm-white);
    border: 0.5px solid rgba(184, 155, 122, 0.3);
    padding: 1.5rem 5rem;
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    min-width: 180px;
  }

  .hero-badge-num {
    font-family: var(--serif);
    font-size: 2.8rem;
    font-weight: 300;
    color: var(--charcoal);
    line-height: 1;
  }

  .hero-badge-text {
    font-size: 0.95rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--charcoal-light);
  }

.hero-main {
	position: relative;
	height: 435px;
	width: 100%;
	
	figure {
		width: 100%;
		height: 100%;
		
		img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}
	
	h1 {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 1;
		color: #fff;
		font-size: 48px;
	}
}

  /* MARQUEE */
  .marquee-wrap {
    overflow: hidden;
    background: var(--nude-light);
    padding: 1rem 0;
	position: relative;
	  
	  &:before {
		  content: 'Најбарани третмани:';
		  position: absolute;
		  left: 0;
		  top: 0;
		  background: var(--charcoal);
		  z-index: 10;
		  font-family: var(--serif);
		  font-size: 1rem;
			font-weight: 500;
			font-style: italic;
			color: #fff;
			letter-spacing: 0.04em;
			padding: 0 3rem;
		  text-transform: uppercase;
		  width: 300px;
		  height: 100%;
		  display: flex;
		  justify-content: center;
		  align-items: center;
	  }
  }

  .marquee-track {
    display: flex;
    gap: 0;
    animation: marquee 24s linear infinite;
    white-space: nowrap;
    width: max-content;
  }

  .marquee-item {
    font-family: var(--serif);
    font-size: 1.3rem;
    font-weight: 300;
    font-style: italic;
    color: var(--charcoal-mid);
    letter-spacing: 0.04em;
    padding: 0 3rem;
    display: flex;
    align-items: center;
    gap: 3rem;
  }

  .marquee-item::after {
    content: '✦';
    font-size: 0.8rem;
    color: var(--gold);
    font-style: normal;
  }

  @keyframes marquee {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
  }

  /* SECTION COMMON */
  section { padding: 6rem 4rem; }

  .section-label {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.95rem;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: var(--gold);
    margin-bottom: 1rem;
  }

  .section-label::before {
    content: '';
    width: 30px;
    height: 0.5px;
    background: var(--gold);
  }

  .section-title {
    font-family: var(--serif);
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 300;
    line-height: 1.15;
    color: var(--charcoal);
  }

  .section-title em { font-style: italic; color: var(--gold); }

  /* ABOUT */
  .about {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6rem;
    align-items: center;
    background: var(--cream);
  }

  .about-img-wrap {
    position: relative;
  }

  .about-img {
    width: 100%;
    aspect-ratio: 3/4;
    object-fit: cover;
    filter: brightness(0.9) saturate(0.8);
  }

  .about-img-accent {
    position: absolute;
    bottom: -2rem;
    right: -2rem;
    width: 60%;
    aspect-ratio: 1;
    object-fit: cover;
    filter: brightness(0.88) saturate(0.75);
    border: 6px solid var(--warm-white);
  }

  .about-content {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    padding-right: 2rem;
  }

  .about-text {
    font-size: 1.2rem;
    font-weight: 300;
    line-height: 2;
    color: var(--charcoal-light);
  }

  .about-pillars {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    border-top: 0.5px solid rgba(184, 155, 122, 0.25);
    padding-top: 2rem;
  }

  .pillar {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.88rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    color: var(--charcoal-mid);
  }

  .pillar::before {
    content: '✦';
    color: var(--gold);
    font-size: 0.8rem;
    flex-shrink: 0;
  }

  /* TREATMENTS */
  .treatments { background: var(--cream); }

  .treatments-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 4rem;
  }

  .treatments-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
  }

  .treatment-card {
    background: var(--warm-white);
    display: flex;
    flex-direction: column;
    cursor: default;
    overflow: hidden;
    border: 0.5px solid rgba(184,155,122,0.15);
    transition: transform 0.35s ease, box-shadow 0.35s ease;
  }

  .treatment-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(42,36,32,0.08);
  }

  .treatment-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
    filter: brightness(0.92) saturate(0.8);
    transition: transform 0.5s ease, filter 0.4s ease;
  }

.treatment-image {
	width: 100%;
	height: 220px;
	
	img {
		object-fit: cover;
		width: 100%;
		height: 100%;
	}
}

.uslugi-link {
	text-decoration: none;
}

  .treatment-card:hover .treatment-img {
    transform: scale(1.04);
    filter: brightness(0.96) saturate(0.9);
  }

  .treatment-body {
    padding: 1.8rem 1.8rem 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    flex: 1;
  }

  .treatment-num {
    font-family: var(--serif);
    font-size: 1.02rem;
    color: var(--nude-dark);
    letter-spacing: 0.12em;
  }

  .treatment-name {
    font-family: var(--serif);
    font-size: 1.65rem;
    font-weight: 400;
    line-height: 1.2;
    color: var(--charcoal);
  }

  .treatment-desc {
    font-size:1rem;
    font-weight: 300;
    line-height: 1.85;
    color: var(--charcoal-light);
    flex: 1;
  }

  .treatment-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    padding-top: 0.4rem;
    border-top: 0.5px solid rgba(184,155,122,0.2);
  }

  .tag {
    font-size: .7rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--gold);
    border: 0.5px solid rgba(184, 155, 122, 0.35);
    padding: 0.22rem 0.65rem;
  }

  .treatment-link {
    font-size:.9rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--charcoal-mid);
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-top: 0.3rem;
    transition: color 0.2s;
  }

  .treatment-link:hover { color: var(--gold); }

  /* GALLERY */
  .gallery { background: var(--cream); }

  .gallery-title-wrap { margin-bottom: 3rem; }

  .gallery-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-rows: 280px 280px;
    gap: 1px;
    background: rgba(184, 155, 122, 0.15);
  }

  .gallery-item { overflow: hidden; }

  .gallery-item:first-child {
    grid-row: span 2;
  }

  .gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(0.9) saturate(0.75);
    transition: transform 0.6s ease, filter 0.4s ease;
  }

  .gallery-item:hover img {
    transform: scale(1.04);
    filter: brightness(0.95) saturate(0.85);
  }

  /* PROCESS */
  .process { background: var(--warm-white); }

  .process-header { margin-bottom: 4rem; }

  .process-steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    position: relative;
  }

  .process-steps::before {
    content: '';
    position: absolute;
    top: 1.5rem;
    left: 12.5%;
    right: 12.5%;
    height: 0.5px;
    background: rgba(184, 155, 122, 0.3);
    z-index: 0;
  }

  .process-step {
    padding: 0 2rem 0 0;
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
  }

  .step-dot {
    width: 3rem;
    height: 3rem;
    border: 0.5px solid rgba(184, 155, 122, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--serif);
    font-size: 1.3rem;
    color: var(--gold);
    background: var(--warm-white);
    position: relative;
    z-index: 1;
    flex-shrink: 0;
  }

  .step-title {
    font-family: var(--serif);
    font-size: 1.45rem;
    font-weight: 400;
    color: var(--charcoal);
  }

  .step-desc {
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.8;
    color: var(--charcoal-light);
  }

  /* FAQ */
  .faq { background: var(--nude-light); }

  .faq-grid {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 6rem;
    align-items: start;
  }

  .faq-sticky { position: sticky; top: 7rem; }

  .faq-list { display: flex; flex-direction: column; }

  .faq-item, .schema-faq-section {
    border-bottom: 0.5px solid rgba(184, 155, 122, 0.3);
    overflow: hidden;
  }

  .faq-q, .schema-faq-question {
    font-family: var(--sans);
    font-size: 1.6rem;
    font-weight: 400;
    color: var(--charcoal);
    padding: 1.5rem 0;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    transition: color 0.2s;
    letter-spacing: 0.01em;
    line-height: 1.5;
  }

  .faq-q:hover { color: var(--gold); }

  .faq-icon {
    width: 16px;
    height: 16px;
    position: relative;
    flex-shrink: 0;
    opacity: 0.5;
    transition: opacity 0.2s, transform 0.3s;
  }

  .faq-icon::before, .faq-icon::after {
    content: '';
    position: absolute;
    background: var(--charcoal);
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
  }

  .faq-icon::before { width: 12px; height: 0.5px; }
  .faq-icon::after { width: 0.5px; height: 12px; transition: transform 0.3s; }

  .faq-item.open .faq-icon::after { transform: translate(-50%, -50%) rotate(90deg); }
  .faq-item.open .faq-icon { opacity: 1; }
.faq-item.open .faq-icon::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.faq-item.open .faq-icon, .schema-faq-section.open .schema-faq-answer {
    opacity: 1;
}

.faq-a, .schema-faq-answer {
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.9;
    color: var(--charcoal-light);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.3s ease;
    padding-bottom: 0;
}

.faq-item.open .faq-a {
    max-height: 300px;
    padding-bottom: 1.5rem;
}

.schema-faq-section.open .shema-faq-answer {
	max-height: 300px;
    padding-bottom: 1.5rem;
}

  .faq-a {
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.9;
    color: var(--charcoal-light);
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease, padding 0.3s ease;
    padding-bottom: 0;
  }

  .faq-item.open .faq-a {
    max-height: 300px;
    padding-bottom: 1.5rem;
  }

  /* CONTACT */
  .contact {
    background: var(--charcoal);
    color: var(--cream);
  }

  .contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6rem;
    align-items: start;
  }

  .contact .section-label { color: var(--gold-light); }
  .contact .section-label::before { background: var(--gold-light); }

  .contact .section-title { color: var(--cream); }

  .contact-info {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-top: 2rem;
  }

  .contact-info-item {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
	  
	  .socials {
		  display: flex;
		  flex-direction: column;
		  gap: 10px;
	  }
  }

  .info-label {
    font-size: 1rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--gold);
  }

  .info-val {
    font-family: var(--serif);
    font-size: 1.1rem;
    font-weight: 300;
    color: var(--cream);
    text-decoration: none;
    transition: color 0.2s;
	width: fit-content;
  }

  a.info-val:hover { color: var(--gold-light); }

  .info-sub {
    font-size: 1rem;
    color: rgba(250, 246, 242, 0.45);
  }

  /* FORM */
  .contact-form {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
  }

  .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
  }

  .form-group {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
  }

  .form-label {
    font-size: 1rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: rgba(250, 246, 242, 0.5);
  }

  .form-input, .form-select, .form-textarea {
    font-family: var(--sans);
    font-size: 1.1rem;
    font-weight: 300;
    color: var(--cream) !important;
    background: rgba(255,255,255,0.05) !important;
    border: 0.5px solid rgba(255,255,255,0.15) !important;
    padding: 0.85rem 1rem !important;
    outline: none;
    transition: border-color 0.2s;
    appearance: none;
    -webkit-appearance: none;
    width: 100%;
  }

  .form-select option { background: var(--charcoal); color: var(--cream); }

  .form-input:focus, .form-select:focus, .form-textarea:focus {
    border-color: rgba(184, 155, 122, 0.6);
  }

  .form-textarea { resize: vertical; min-height: 100px; }

  .form-input::placeholder, .form-textarea::placeholder { color: rgba(250,246,242,0.25); }

  .btn-submit {
    font-family: var(--sans);
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--charcoal);
    background: var(--nude);
    border: none;
    padding: 1rem 2.5rem;
    cursor: pointer;
    transition: background 0.25s;
    margin-top: 0.5rem;
    align-self: flex-start;
  }

  .btn-submit:hover { background: var(--nude-dark); }

  /* FOOTER */
  footer {
    background: var(--charcoal);
    border-top: 0.5px solid rgba(255,255,255,0.06);
    padding: 2.5rem 4rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .footer-logo {
    font-family: var(--serif);
    font-size: 1.4rem;
    font-weight: 300;
    color: rgba(250,246,242,0.5);
    letter-spacing: 0.08em;
  }

  .footer-copy {
    font-size: 1rem;
    color: rgba(250,246,242,0.25);
    letter-spacing: 0.08em;
  }

  .footer-links {
    display: flex;
    gap: 2rem;
    list-style: none;
  }

  .footer-links a {
    font-size: 1rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: rgba(250,246,242,0.35);
    text-decoration: none;
    transition: color 0.2s;
  }

  .footer-links a:hover { color: var(--gold); }

  /* SOVETI / BLOG */
  .soveti { background: var(--nude-light); }

  .soveti-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 3.5rem;
  }

  .blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }

  .blog-card {
    background: var(--warm-white);
    border: 0.5px solid rgba(184,155,122,0.15);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
  }

  .blog-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(42,36,32,0.07);
  }

  .blog-card-img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    filter: brightness(0.9) saturate(0.8);
    transition: transform 0.5s ease;
  }

  .blog-card:hover .blog-card-img { transform: scale(1.04); }

  .blog-card-body {
    padding: 1.8rem;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    flex: 1;
  }

  .blog-cat {
    font-size: .8rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--gold);
    display: flex;
    align-items: center;
    gap: 0.6rem;
  }

  .blog-cat::before {
    content: '';
    width: 20px;
    height: 0.5px;
    background: var(--gold);
  }

  .blog-title {
    font-family: var(--serif);
    font-size: 1.55rem;
    font-weight: 400;
    line-height: 1.3;
    color: var(--charcoal);
  }

  .blog-excerpt {
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.85;
    color: var(--charcoal-light);
    flex: 1;
  }

  .blog-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 1rem;
    border-top: 0.5px solid rgba(184,155,122,0.2);
    margin-top: auto;
  }

  .blog-read {
    font-size: .8rem;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--charcoal-mid);
    display: flex;
    align-items: center;
    gap: 0.4rem;
    text-decoration: none;
    transition: color 0.2s;
  }

  .blog-read::after { content: '→'; transition: transform 0.2s; }
  .blog-read:hover { color: var(--gold); }
  .blog-read:hover::after { transform: translateX(4px); }

  .blog-time {
    font-size: .8rem;
    color: var(--nude-dark);
    letter-spacing: 0.05em;
  }

  /* MODAL */
  .blog-modal-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(42,36,32,0.65);
    z-index: 200;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    backdrop-filter: blur(4px);
  }

  .blog-modal-overlay.active { display: flex; }

  .blog-modal {
    background: var(--warm-white);
    max-width: 680px;
    width: 100%;
    max-height: 85vh;
    overflow-y: auto;
    position: relative;
  }

  .blog-modal-img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    filter: brightness(0.9) saturate(0.75);
  }

  .blog-modal-content {
    padding: 2.5rem 3rem;
  }

  .blog-modal-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 36px;
    height: 36px;
    background: var(--warm-white);
    border: 0.5px solid rgba(184,155,122,0.3);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: var(--charcoal);
    transition: background 0.2s;
  }

  .blog-modal-close:hover { background: var(--nude-light); }

  .blog-modal-cat {
    font-size: 1rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: var(--gold);
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 1rem;
  }

  .blog-modal-cat::before {
    content: '';
    width: 20px;
    height: 0.5px;
    background: var(--gold);
  }

  .blog-modal-title {
    font-family: var(--serif);
    font-size: 2rem;
    font-weight: 300;
    line-height: 1.2;
    color: var(--charcoal);
    margin-bottom: 1.5rem;
  }

  .blog-modal-body {
    font-size: 1rem;
    font-weight: 300;
    line-height: 2;
    color: var(--charcoal-light);
  }

  .blog-modal-body h3 {
    font-family: var(--serif);
    font-size: 1.3rem;
    font-weight: 400;
    color: var(--charcoal);
    margin: 1.5rem 0 0.5rem;
  }

  .blog-modal-body p { margin-bottom: 0.8rem; }

  .blog-modal-body ul {
    padding-left: 1.2rem;
    margin-bottom: 1rem;
  }

  .blog-modal-body li {
    margin-bottom: 0.4rem;
    list-style: none;
    padding-left: 0.8rem;
    position: relative;
  }

  .blog-modal-body li::before {
    content: '✦';
    position: absolute;
    left: -0.8rem;
    font-size: 0.8rem;
    color: var(--gold);
    top: 0.5rem;
  }

  .blog-modal-cta {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 0.5px solid rgba(184,155,122,0.2);
    display: flex;
    align-items: center;
    gap: 1.5rem;
  }

.uslugi {
	padding: 80px 0;
}

.za-nas {
	padding: 80px 0;
	
	.container {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 40px;
	}
}

.about {
	padding: 0;
	gap: 0;
	
	.about-content {
		padding-left: 3rem;
	}
}

.post-content {
	padding: 80px 0;
	max-width: 768px;
	
	h1,h2,h3,h4 {
		font-size: 2.5rem;
		font-family: var(--serif);
		font-style: italic;
	}
}

.post-hero {
	display: flex;
	flex-direction: column;
	gap: 30px;
	justify-content: center;
	align-items: center;
	
	img {
		height: 450px;
		width: 100%;
		object-fit: cover;
	}
}

div.wpforms-container-full, div.wpforms-container-full * {
	width: 100% !important;
	
	label {
		text-transform: uppercase;
		font-weight: 400 !important;
		color: #fff !important;
		font-family: var(--serif);
	}
	
	input, select, textarea {
		max-width: 100% !important;
		font-family: var(--sans);
		font-size: 1.1rem;
		font-weight: 300;
		color: var(--cream) !important;
		background: rgba(255,255,255,0.05) !important;
		border: 0.5px solid rgba(255,255,255,0.15) !important;
		outline: none;
		transition: border-color 0.2s;
		appearance: none;
		-webkit-appearance: none;
		width: 100%;
	}
	
	button[type=submit] {
		background: var(--gold) !important;
		
		&:hover {
			background: var(--gold-light) !important;
		}
	}
}

.mobile-menu {
	display: none;
	
	.hamburger-btn {
		display: flex;
		flex-direction: column;
		gap: 5px;
		position: relative;
		z-index: 9999;
		
		span {
			width: 40px;
			height: 2px;
			background: #000;
			opacity: 1;
			transform: rotate(0deg);
			transition: all .3s ease-in-out;
		}
		
		&.active {
			span:nth-child(1) {
				transform: rotate(45deg) translate(10px, 10px);
			}
			span:nth-child(2) {
				opacity: 0;
			}
			span:nth-child(3) {
				transform: rotate(-45deg);
			}
		}
	}
	
	.nav-mobile {
		position: fixed;
		transform: translateX(-900px);
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: #fff;
		transition: all .3s ease-in-out;
		display: flex;
		justify-content: center;
		align-items: center;
		
		ul {
			display: flex;
			flex-direction: column;
			padding-left: 0;
			justify-content: center;
			gap: 12px;
			
			li {
				a {
					font-size: 1.5rem;
				}
			}
		}
		
		&.active {
			transform: translateX(0);
		}
	}
}
  /* end soveti */
  @keyframes fadeUp {
    from { opacity: 0; transform: translateY(24px); }
    to { opacity: 1; transform: translateY(0); }
  }

  .hero-left > * {
    opacity: 0;
    animation: fadeUp 0.8s ease forwards;
  }

  .hero-eyebrow { animation-delay: 0.1s; }
  .hero-title { animation-delay: 0.25s; }
  .hero-tagline { animation-delay: 0.4s; }
  .hero-actions { animation-delay: 0.55s; }

  /* MOBILE */
  @media (max-width: 900px) {
    nav { padding: 1.2rem 1.5rem; }
    .nav-links { display: none; }
    section { padding: 4rem 1.5rem; }
    .hero { grid-template-columns: 1fr; min-height: auto; }
    .hero-left { padding: 7rem 1.5rem 3rem; }
    .hero-right { height: 60vw; }
    .hero-badge { left: 1rem; bottom: 1rem; }
    .about { grid-template-columns: 1fr; gap: 3rem; }
    .about-img-accent { display: none; }
    .about-content { padding-right: 0; }
    .treatments-header { flex-direction: column; align-items: flex-start; gap: 1rem; }
    .treatments-grid { grid-template-columns: 1fr; gap: 1rem; }
    .gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; }
    .gallery-item:first-child { grid-column: span 2; grid-row: span 1; height: 260px; }
    .process-steps { grid-template-columns: 1fr 1fr; }
    .process-steps::before { display: none; }
    .faq-grid { grid-template-columns: 1fr; gap: 2rem; }
    .faq-sticky { position: static; }
    .contact-grid { grid-template-columns: 1fr; gap: 3rem; }
    .form-row { grid-template-columns: 1fr; }
    footer { flex-direction: column; gap: 1rem; text-align: center; }
    .blog-grid { grid-template-columns: 1fr; }
    .blog-modal-content { padding: 1.5rem; }
    .blog-modal-img { height: 200px; }
	  .nav-primary {
		  display: none;
	  }
	  .mobile-menu {
		  display: flex;
		  align-items: start;
		  
		  .nav-mobile {
			  li {
				  &:hover {
					  .sub-menu {
						  max-height: 100%;
						  visibility: visible;
						  opacity: 1;
					  }
				  }
			  }
			  .sub-menu {
				  position: relative;
				  top: 0;
				  max-height: 0;
				  padding: 0;
				  
				  a {
					  font-size: 1rem;
				  }
			  }
		  }
	  }
  }