    :root{
      --gold:#d7a04a;
      --rose:#dca4a7;
      --rose-light:#f8eeee;
      --text:#5b5552;
      --dark:#3f3a38;
      --white:#ffffff;
      --bg:#fcfaf9;
      --shadow:0 10px 30px rgba(0,0,0,0.08);
      --radius:24px;
      --container:1200px;
    }

    *{
      margin:0;
      padding:0;
      box-sizing:border-box;
    }

    html{
      scroll-behavior:smooth;
    }

    body{
      font-family:'Montserrat', sans-serif;
      background:var(--bg);
      color:var(--text);
      line-height:1.7;
      overflow-x:hidden;
    }

	body{
	  padding-bottom:90px;
	}

	@media(min-width:768px){

	  body{
		padding-bottom:0;
	  }

	}

    img{
      max-width:100%;
      display:block;
    }

    a{
      text-decoration:none;
    }

    .container{
      width:min(92%, var(--container));
      margin:auto;
    }

    section{
      padding:80px 0;
    }

    h1,h2,h3{
      font-family:'Cormorant Garamond', serif;
      color:var(--dark);
      line-height:1.1;
    }

    h1{
      font-size:clamp(2rem,7vw,5rem);
      margin-bottom:20px;
    }

    h2{
      font-size:clamp(2.3rem,5vw,4rem);
      margin-bottom:24px;
    }

    p{
      margin-bottom:20px;
      font-size:1rem;
    }

    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      padding:16px 30px;
      border-radius:999px;
      background:linear-gradient(135deg,var(--gold),#e7bc73);
      color:white;
      font-weight:600;
      transition:.3s ease;
      box-shadow:var(--shadow);
    }

    .btn:hover{
      transform:translateY(-3px);
    }

	/* MENU BUTTON */

	.menu-toggle{
	  position:fixed;
	  top:20px;
	  right:20px;
	  width:60px;
	  height:60px;
	  border:none;
	  border-radius:50%;
	  background:white;
	  color:var(--dark);
	  font-size:2rem;
	  cursor:pointer;
	  z-index:2000;
	  box-shadow:var(--shadow);
	  transition:.3s ease;
	}

	.menu-toggle:hover{
	  transform:scale(1.05);
	}

	/* FULLSCREEN MENU */

	.fullscreen-menu{
	  position:fixed;
	  inset:0;
		background:linear-gradient(
		  135deg,
		  rgba(248,238,238,0.97),
		  rgba(255,250,245,0.98)
		);
	  backdrop-filter:blur(12px);
	  display:flex;
	  align-items:center;
	  justify-content:center;
	  opacity:0;
	  visibility:hidden;
	  transition:.4s ease;
	  z-index:3000;
	}

	.fullscreen-menu.active{
	  opacity:1;
	  visibility:visible;
	}

	.fullscreen-menu nav{
	  display:flex;
	  flex-direction:column;
	  gap:30px;
	  text-align:center;
	}

	.fullscreen-menu nav a{
	  font-family:'Cormorant Garamond', serif;
	  font-size:clamp(2.4rem,5vw,4rem);
	  color:var(--dark);
	  transition:.3s ease;
	  line-height:1.1;
	}

	.fullscreen-menu nav a:hover{
	  color:var(--gold);
	  transform:translateX(5px);
	}

	@media(min-width:992px){

	  .fullscreen-menu nav{
		gap:22px;
	  }

	  .fullscreen-menu nav a{
		font-size:3.2rem;
		letter-spacing:.5px;
	  }

	}

	/* CLOSE BUTTON */

	.close-menu{
	  position:absolute;
	  top:20px;
	  right:20px;
	  width:60px;
	  height:60px;
	  border:none;
	  border-radius:50%;
	  background:white;
	  font-size:2rem;
	  cursor:pointer;
	  box-shadow:var(--shadow);
	}

    /* HERO */

    .hero{
      min-height:100vh;
      display:flex;
      align-items:center;
      background:white;
      position:relative;
    }

    .hero-grid{
      display:grid;
      gap:60px;
      align-items:center;
    }

	.logo-wrap{
	  margin-bottom:30px;
	  width:100%;
	}

	.logo-wrap img{
	  width:100%;
	  height:auto;
	  display:block;
	}

	@media(min-width:768px){

	  .logo-wrap{
		width:320px;
	  }

	}

    .hero-subtitle{
      font-size:1.2rem;
      margin-bottom:30px;
      max-width:600px;
    }

    .hero-image{
      position:relative;
    }

    .hero-image img{
      border-radius:32px;
      box-shadow:var(--shadow);
      object-fit:cover;
      height:650px;
      width:100%;
    }

    .floating-card{
      position:absolute;
      bottom:20px;
      left:-20px;
      background:white;
      padding:20px;
      border-radius:20px;
      box-shadow:var(--shadow);
      max-width:260px;
    }

    .floating-card h3{
      font-size:1.6rem;
      margin-bottom:10px;
    }

    /* ABOUT */

    .about{
      background:var(--rose-light);
    }

    .about-grid{
      display:grid;
      gap:50px;
      align-items:center;
    }

    .about-image img{
      border-radius:var(--radius);
      height:100%;
      object-fit:cover;
      box-shadow:var(--shadow);
    }

    /* SERVICES */

    .services-grid{
      display:grid;
      gap:24px;
      margin-top:50px;
    }

	.services-grid{
	  overflow:hidden;
	}

	.service-card{
	  min-width:0;
	  width:100%;
	}

    .service-card{
      background:white;
      padding:35px;
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      transition:.3s ease;
    }

	@media(max-width:767px){

	  .services-grid{
		grid-template-columns:1fr;
	  }

	}

    .service-card:hover{
      transform:translateY(-5px);
    }

    .service-icon{
      width:60px;
      height:60px;
      border-radius:16px;
      background:var(--rose-light);
      display:flex;
      align-items:center;
      justify-content:center;
      margin-bottom:20px;
      font-size:1.5rem;
    }

    .service-card h3{
      font-size:2rem;
      margin-bottom:15px;
    }

    /* QUOTE */

    .quote{
      background:linear-gradient(135deg,#fdf7f5,#fff);
      text-align:center;
    }

    .quote blockquote{
      font-family:'Cormorant Garamond', serif;
      font-size:clamp(2rem,5vw,4rem);
      color:var(--dark);
      max-width:900px;
      margin:auto;
      line-height:1.3;
    }

    /* VISION */

    .vision-grid{
      display:grid;
      gap:50px;
      align-items:center;
    }

    .vision-image img{
      border-radius:var(--radius);
      box-shadow:var(--shadow);
      height:100%;
      object-fit:cover;
    }

    /* EXPERIENCE */

    .experience{
      background:var(--rose-light);
    }

    .timeline{
      margin-top:50px;
      display:grid;
      gap:24px;
    }

    .timeline-item{
      background:white;
      border-radius:24px;
      padding:30px;
      box-shadow:var(--shadow);
      border-left:5px solid var(--gold);
    }

    .timeline-item h3{
      margin-bottom:10px;
      font-size:2rem;
    }

    /* CONTACT */

    .contact{
      background:white;
    }

	.contact-photo{
	  margin-top:40px;
	}

	.contact-photo img{
	  width:100%;
	  border-radius:32px;
	  box-shadow:var(--shadow);
	  object-fit:cover;
	  max-height:650px;
	}
	
    .contact-grid{
      display:grid;
      gap:50px;
    }

    .contact-form{
      background:var(--rose-light);
      padding:40px;
      border-radius:32px;
    }

	.contact-links{
	  display:flex;
	  gap:16px;
	  margin-top:30px;
	  flex-direction:column;
	}

	.contact-link{
	  display:flex;
	  align-items:center;
	  gap:16px;
	  background:white;
	  padding:18px 20px;
	  border-radius:20px;
	  color:var(--text);
	  transition:.3s ease;
	  box-shadow:var(--shadow);
	}

	.contact-link:hover{
	  transform:translateY(-3px);
	}

	.contact-link span{
	  font-size:1.8rem;
	}

	.contact-link strong{
	  display:block;
	  color:var(--dark);
	}

	.contact-link small{
	  color:var(--text);
	}

	@media(min-width:1100px){

	  .contact-links{
		flex-direction:row;
	  }

	  .contact-link{
		flex:1;
	  }

	}

    .form-group{
      margin-bottom:20px;
    }

    input,
    textarea{
      width:100%;
      padding:18px;
      border:none;
      border-radius:16px;
      font-family:inherit;
      font-size:1rem;
      background:white;
    }

    textarea{
      min-height:160px;
      resize:vertical;
    }

    /* FOOTER */

	footer{
	  background:linear-gradient(
		135deg,
		#f8eeee,
		#fcf6f4
	  );
	  border-top:1px solid rgba(0,0,0,0.05);
	  padding:60px 0 30px;
	}

	.footer-grid{
	  display:flex;
	  flex-direction:column;
	  gap:40px;
	  margin-bottom:40px;
	}

	.footer-grid ul{
	  padding:0;
	}

	.footer-grid li{
	  list-style:none;
	  margin-bottom:14px;
	}

	.footer-grid a{
	  display:inline-flex;
	  align-items:center;
	  gap:12px;
	}

	.footer-grid i{
	  width:18px;
	  color:var(--gold);
	  font-size:.95rem;
	}

	@media(min-width:768px){

	  .footer-grid{
		flex-direction:row;
		justify-content:center;
		align-items:flex-start;
		gap:100px;
	  }

	}

    footer h4{
      margin-bottom:20px;
      font-size:1.4rem;
      color:var(--dark);
    }

    footer ul{
      list-style:none;
    }

    footer li{
      margin-bottom:12px;
    }

    footer a{
      color:var(--text);
      transition:.3s ease;
    }

    footer a:hover{
      color:var(--gold);
    }

    .copyright{
      text-align:center;
      padding-top:20px;
      border-top:1px solid #eee;
      font-size:.9rem;
    }

    /* MOBILE CTA */

    .mobile-cta{
      position:fixed;
      bottom:15px;
      left:50%;
      transform:translateX(-50%);
      width:92%;
      background:white;
      border-radius:20px;
      box-shadow:0 10px 30px rgba(0,0,0,0.15);
      display:flex;
      justify-content:space-between;
      padding:12px;
      z-index:999;
    }

	.contact a{
	  color:var(--gold);
	  font-weight:600;
	}

    .mobile-cta a{
      flex:1;
      margin:0 5px;
      text-align:center;
      padding:14px;
      border-radius:14px;
      font-weight:600;
      color:white;
      background:linear-gradient(135deg,var(--gold),var(--rose));
      font-size:.9rem;
    }

    /* RESPONSIVE */

    @media(min-width:768px){

      .hero-grid,
      .about-grid,
      .vision-grid,
      .contact-grid{
        grid-template-columns:1fr 1fr;
      }

      .services-grid{
        grid-template-columns:repeat(2,1fr);
      }

      .footer-grid{
        grid-template-columns:repeat(4,1fr);
      }

      .mobile-cta{
        display:none;
      }
    }

    @media(min-width:1100px){

      .services-grid{
        grid-template-columns:repeat(3,1fr);
      }

      .timeline{
        grid-template-columns:repeat(2,1fr);
      }
    }
	
	/* SUBPAGE HERO */

	.subpage-hero{
	  min-height:70vh;
	}

	.hero-side-image{
	  display:flex;
	  justify-content:center;
	  align-items:center;
	}

	.hero-side-image img{
	  width:100%;
	  max-width:420px;
	  border-radius:32px;
	  box-shadow:var(--shadow);
	  object-fit:cover;
	}
	
	.center-text-block{
	  max-width:900px;
	  margin:auto;
	  text-align:center;
	}

	.center-text-block p{
	  max-width:800px;
	  margin-left:auto;
	  margin-right:auto;
	}

	/* REVIEWS */

	.reviews-grid{
	  display:grid;
	  gap:24px;
	  margin-top:50px;
	}

	.review-card{
	  background:white;
	  padding:40px;
	  border-radius:32px;
	  box-shadow:var(--shadow);
	}

	.review-text{
	  font-size:1.1rem;
	  font-style:italic;
	}

	.review-author{
	  margin-top:20px;
	  font-weight:600;
	  color:var(--gold);
	}

	/* DIPLOMAS */

	.diploma-grid{
	  display:grid;
	  gap:24px;
	  margin-top:50px;
	}

	.diploma-card{
	  background:white;
	  padding:35px;
	  border-radius:24px;
	  box-shadow:var(--shadow);
	  text-align:center;
	}

	/* CV BLOCK */

	.cv-download-block{
	  max-width:800px;
	  margin:auto;
	  text-align:center;
	}

	.cv-download-block .btn{
	  margin-top:30px;
	}

	/* RESPONSIVE */

	@media(min-width:768px){

	  .reviews-grid,
	  .diploma-grid{
		grid-template-columns:repeat(2,1fr);
	  }

	}

	@media(min-width:1100px){

	  .reviews-grid{
		grid-template-columns:repeat(3,1fr);
	  }

	  .diploma-grid{
		grid-template-columns:repeat(4,1fr);
	  }

	}
		
	/* LINKEDIN BUTTON */

	.linkedin-btn{
	  display:inline-flex;
	  align-items:center;
	  gap:16px;
	  margin-top:30px;
	  padding:18px 34px;
	  border-radius:999px;
	  background:white;
	  color:var(--dark);
	  font-weight:600;
	  box-shadow:var(--shadow);
	  transition:.3s ease;
	}

	.linkedin-btn:hover{
	  transform:translateY(-3px);
	  color:#0A66C2;
	}

	.linkedin-icon{
	  width:38px;
	  height:38px;
	  border-radius:50%;
	  background:#0A66C2;
	  color:white;
	  display:flex;
	  align-items:center;
	  justify-content:center;
	  font-weight:700;
	  font-size:1rem;
	  font-family:Arial,sans-serif;
	}
	
	/* CONTACT PAGE */

	@media(max-width:767px){

	  .contact-page .hero-side-image{
		display:none;
	  }

	}

	@media(max-width:767px){

	  .contact-page .hero{
		min-height:auto;
		padding-top:120px;
		padding-bottom:60px;
	  }

	  .contact-page .hero-grid{
		display:block;
	  }

	  .contact-page .hero-side-image{
		display:none;
	  }

	}
	.contact-page-section{
	  background:var(--bg);
	}

	.contact-page-grid{
	  display:grid;
	  gap:40px;
	  align-items:start;
	}

	.large-contact-form{
	  padding:50px;
	}

	.contact-sidebar{
	  display:flex;
	  flex-direction:column;
	  gap:24px;
	}

	.contact-info-card{
	  background:white;
	  border-radius:32px;
	  padding:35px;
	  box-shadow:var(--shadow);
	}

	.contact-info-card h3{
	  margin-bottom:24px;
	  font-size:2rem;
	}

	.contact-info-item{
	  display:flex;
	  align-items:center;
	  gap:14px;
	  margin-bottom:18px;
	}

	.contact-info-item span{
	  font-size:1.3rem;
	}

	.contact-info-item a{
	  color:var(--dark);
	  font-weight:500;
	}

	.contact-info-item a:hover{
	  color:var(--gold);
	}

	.business-info div{
	  margin-bottom:22px;
	}

	.business-info strong{
	  display:block;
	  margin-bottom:6px;
	  color:var(--dark);
	}

	.business-info p{
	  margin-bottom:0;
	}

	select{
	  width:100%;
	  padding:18px;
	  border:none;
	  border-radius:16px;
	  font-family:inherit;
	  font-size:1rem;
	  background:white;
	  color:var(--text);
	}

	@media(min-width:992px){

	  .contact-page-grid{
		grid-template-columns:1.3fr .7fr;
	  }

	}	
	footer li a{
	  display:inline-flex;
	  align-items:center;
	  gap:10px;
	}

	footer li i{
	  font-size:.9rem;
	  color:var(--gold);
	  width:16px;
	}
	
	/* LEGAL CONTENT */

	.legal-content{
	  max-width:900px;
	  margin:auto;
	}

	.legal-content h2{
	  margin-top:60px;
	  margin-bottom:20px;
	}

	.legal-content ul{
	  margin:20px 0 30px 20px;
	}

	.legal-content li{
	  margin-bottom:12px;
	}

	.legal-content a{
	  color:var(--gold);
	  font-weight:600;
	}

	/* MOBILE REVIEWS CAROUSEL */

	@media(max-width:767px){

	  .reviews-grid{
		display:flex;
		gap:20px;
		overflow-x:auto;
		scroll-snap-type:x mandatory;
		padding-bottom:10px;

		scrollbar-width:none;
	  }

	  .reviews-grid::-webkit-scrollbar{
		display:none;
	  }

	  .review-card{
		min-width:85%;
		flex:0 0 85%;
		scroll-snap-align:start;
	  }

	}
	
	/* SERVICES */

	.services-grid{
	  display:grid;
	  gap:24px;
	  margin-top:50px;
	}

	.service-card{
	  background:white;
	  padding:40px;
	  border-radius:32px;
	  box-shadow:var(--shadow);
	}

	.service-icon{
	  width:50px;
	  height:50px;
	  border-radius:50%;
	  background:rgba(212,165,116,.12);

	  display:flex;
	  align-items:center;
	  justify-content:center;

	  color:var(--gold);
	  font-weight:700;

	  margin-bottom:24px;
	}

	/* PRICING */

	.pricing-block{
	  display:grid;
	  gap:24px;
	  margin-top:50px;
	}

	.pricing-card{
	  background:white;
	  padding:45px;
	  border-radius:32px;
	  box-shadow:var(--shadow);
	  text-align:center;
	}

	.pricing-card.featured{
	  background:linear-gradient(
		135deg,
		rgba(248,238,238,1),
		rgba(255,250,245,1)
	  );
	}

	.pricing-text{
	  font-size:2rem;
	  color:var(--gold);
	  margin:25px 0;
	  font-family:'Cormorant Garamond', serif;
	}

	.pricing-card ul{
	  margin-top:30px;
	}

	.pricing-card li{
	  margin-bottom:14px;
	}

	@media(min-width:768px){

	  .services-grid{
		grid-template-columns:repeat(2,1fr);
	  }

	  .pricing-block{
		grid-template-columns:repeat(2,1fr);
	  }

	}

	@media(min-width:1100px){

	  .services-grid{
		grid-template-columns:repeat(3,1fr);
	  }

	}
	
	/* STEPS */

	.steps-grid{
	  display:grid;
	  gap:24px;
	  margin-top:50px;
	}

	.step-card{
	  background:white;
	  padding:40px;
	  border-radius:32px;
	  box-shadow:var(--shadow);
	  position:relative;
	}

	.step-number{
	  width:54px;
	  height:54px;
	  border-radius:50%;
	  background:linear-gradient(
		135deg,
		var(--gold),
		var(--rose)
	  );

	  color:white;

	  display:flex;
	  align-items:center;
	  justify-content:center;

	  font-weight:700;
	  margin-bottom:24px;
	}

	@media(min-width:768px){

	  .steps-grid{
		grid-template-columns:repeat(2,1fr);
	  }

	}

	@media(min-width:1100px){

	  .steps-grid{
		grid-template-columns:repeat(4,1fr);
	  }

	}

	.form-success{
	  background:#f6faf6;
	  border:1px solid #d9ead9;
	  border-radius:24px;
	  padding:30px;
	  margin-bottom:30px;
	  text-align:center;
	}

	.form-success h3{
	  color:#2e7d32;
	  margin-bottom:10px;
	}

	.form-error{
	  background:#fff6f6;
	  border:1px solid #f0caca;
	  border-radius:24px;
	  padding:30px;
	  margin-bottom:30px;
	  text-align:center;
	}

	.form-error h3{
	  color:#c62828;
	  margin-bottom:10px;
	}

.success-card{
    background:linear-gradient(
        135deg,
        rgba(248,238,238,1),
        rgba(255,250,245,1)
    );

    padding:50px;
    border-radius:32px;
    text-align:center;

    box-shadow:var(--shadow);

    max-width:700px;
    margin:0 auto;
}

.success-icon{
    width:90px;
    height:90px;

    margin:0 auto 25px;

    border-radius:50%;

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:2.2rem;
    font-weight:700;

    color:white;

    background:linear-gradient(
        135deg,
        var(--gold),
        var(--rose)
    );
	}

	.success-card h2{
		margin-bottom:15px;
	}

	.success-card p{
		margin-bottom:10px;
	}

	.success-card .btn{
		margin-top:25px;
	}