@import url('https://fonts.googleapis.com/css2?family=Pacifico&family=Raleway:ital,wght@0,100..900;1,100..900&display=swap');

* {
    box-sizing: border-box;
}

a{
    text-decoration: none !important;
}

h1{
    font-weight: 900;
    color: #fff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

img{
    width: 100%;
    height: auto;
}

body {
    font-family: "Raleway", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
}

.margin-top {
    margin-top: 1.5rem;
}

.margin-top-xl {
    margin-top: 3rem;
}

.slogan {
    font-family: "Pacifico", cursive;
    color: #fff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
}

.half-box {
    padding: 1.75rem;
    flex-direction: row;
    min-height: 90vh;
    width: 100%;
}

.hero {
    background-image: url('files/hero_bg.jpg');
    background-size: 100%;
    background-position: 50% 60%;
    position: relative;
}

.hero > * {
    position: relative;
    z-index: 1;
}

.hero:before{
    content: "";
    position: absolute;
    inset: 0;
    background: rgb(255 255 255 / .7);
    z-index: 0;
}

.text-center {
    text-align: center;
}

.slogan {
    font-size: 1.25rem;
    font-weight: 400;
}

.space-around {
    justify-content: space-around;
}

.space-between {
    justify-content: space-between;
}

.h-100 {
    height: 100%;
}

strong {
    font-weight: 600;
}

.item-list>* {
    background: rgba(256, 256, 256, 0.8);
    padding: 5px;
    display: inline-block;
    border-radius: 5px;
    margin-bottom: 3px;
}

.item-list > strong {
    border-left: 3px solid #7c3aed;
}

.cta-button {
  display: inline-block;
  padding: 14px 28px;
  font-size: 16px;
  font-weight: 600;
  color: #ffffff;
  text-decoration: none;
  border: none;
  border-radius: 999px;
  position: relative;
  cursor: pointer;
  background: linear-gradient(
    135deg,
    #667eea 0%,
    #764ba2 50%,
    #ff6a88 100%
  );
  background-size: 200% 200%;
  box-shadow:
    0 10px 25px rgba(118, 75, 162, 0.35),
    0 4px 10px rgba(0, 0, 0, 0.15);

  transition: all 0.35s ease;
}

/* Hover effect */
.cta-button:hover {
  background-position: right center;
  transform: translateY(-3px);
  box-shadow:
    0 14px 35px rgba(118, 75, 162, 0.45),
    0 6px 15px rgba(0, 0, 0, 0.2);
}

/* Active (click) effect */
.cta-button:active {
  transform: translateY(1px);
  box-shadow:
    0 6px 15px rgba(118, 75, 162, 0.3),
    0 3px 8px rgba(0, 0, 0, 0.15);
}

/* Optional subtle shine animation */
.cta-button::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 999px;
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0.2) 0%,
    rgba(255, 255, 255, 0.05) 40%,
    rgba(255, 255, 255, 0.2) 80%
  );
  opacity: 0;
  transition: opacity 0.4s ease;
}

.cta-button:hover::before {
  opacity: 1;
}


.cta-highlight {
  position: relative;
  padding: 5px 10px;
  border-radius: 5px;
  color: #ffffff;
  font-weight: 600;
  font-size: 18px;
  letter-spacing: 0.3px;
  background: linear-gradient(
    135deg,
    #4f46e5,
    #7c3aed,
    #ec4899
  );
  background-size: 200% 200%;
  box-shadow:
    0 20px 20px rgba(124, 58, 237, 0.35),
    0 8px 10px rgba(0, 0, 0, 0.15);

  overflow: hidden;
  display: inline-block;
}

.cta-highlight::before {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: 22px;
  background: linear-gradient(
    135deg,
    #ffffff40,
    #ffffff10,
    #ffffff40
  );
  z-index: -1;
  filter: blur(10px);
  opacity: 0.7;
}

input, textarea{
    display: block;
    width: 100%;
    padding: 7px;
    resize: none;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-family: inherit;
    color: #333;
}

textarea {
    min-height: 80px;
}

label{
    display: block;
    font-size: .75rem;
    font-weight: bold;
}

button[type="submit"]{
    text-transform: uppercase;
}

.form, .box {
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 1px 4px 13px rgba(0, 0, 0, 0.3);
}

.form{
    padding: 25px;
}

.box{
    padding: 10px;
}

.form-group {
    margin-bottom: 15px;
}

.form-group:hover label {
    color: #7c3aed;
    transition: color 0.5s ease;
}

input:focus, textarea:focus,
input:focus-visible, textarea:focus-visible,
input:focus-within, textarea:focus-within {
    outline: none;
    border-color: #7c3aed;
    box-shadow: 0 0 5px rgba(124, 58, 237, 0.5);
}

.highlight-right {
    font-weight: 300;
    display: block;
    padding: 14px 28px;
    text-align: center;
    margin: 0 auto;
}

ul, li{
    margin: initial;
    padding: initial;
    line-height: 2;
}

.circle_image{
    width: 100%;
    height: 350px;
    background-position: center;
    border-radius: 100px;
    background-size: cover;
}

.circle_image.image_a{
    background-image: url('files/circle_a.jpeg');
    background-size: 150%;
}

.circle_image.image_b{
    background-image: url('files/circle_b.jpeg');
    background-position: 70% 40%;
}

.circle_image.image_c{
    background-image: url('files/circle_c.jpeg');
}

.circle_image.image_d{
    background-image: url('files/circle_d.webp');
}

.flag {
    width: 40px;
    height: 40px;
    background-position: center;
    background-size: cover;
    border-radius: 50%;
    border: 5px solid #fff;
    box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.3);
    margin: auto;
}

.flag.portugal {
    background-image: url(data:image/png;base64,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);
}

.flag.ph{
    background-image: url(data:image/png;base64,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);
}

.flag.hungary{
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW8AAAC3CAMAAADq+C/QAAAAFVBMVEX////OKTlHcFD78vKInoxAbErJAA3+4NBaAAABO0lEQVR4nO3QAQ2DAADEwIcx/Euei0KyOwVNd1Da0wF/xu+W3y2/W363/G753fK75XfL75bfLb9bfrf8bvnd8rvld8vvlt8tv1t+t/xu+d3yu+V3y++W3y2/W363/G753fK75XfL75bfLb9bfrf8bvnd8rvld8vvlt8tv1t+t/xu+d3yu+V3y++W3y2/W363/G753fK75XfL75bfrd2U9qE0AAAAAAAAAAAAAAAAAAAAAAAAAAAA3umitC+lnZT8bvnd8rvld8vvlt8tv1t+t/xu+d3yu+V3y++W3y2/W363/G753fK75XfL75bfLb9bfrf8bvnd8rvld8vvlt8tv1t+t/xu+d3yu+V3y++W3y2/W363/G753fK75XfL75bfLb9bfrf8bvnd8rvld8vvlt8tv1t+t/xu+d36ARX7GQwFOGMlAAAAAElFTkSuQmCC);
}

.flag.il{
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQQAAAC9CAMAAABiZPMxAAAAbFBMVEX///8AOLgAIbTK0u3X2/AANrgAKrWVodkAM7cAI7QAL7YAHbMAJ7UALbYAFLLJz+vr7vj5+v3y9ftvfs2zvOQaPbmMmdZldsopSb0iQ7vk6PZVasabptuCkNM2Ub9BW8GptOG8xOd6iNFMZMS751jdAAADvklEQVR4nO2dW3eqMBBGMwiK4L3Weqva+v//45GZoMtW7Wq7jilx7zeWeRg+AnNLonMAAAAAAAAAAPB9WtByCSROQBBBEEFBBEEEBREEERREEERQEEEQQUEEQQQFEQQRFEQQRFAQQRBBQQRBBAURBBEURBBEUBBBEEGhF3nApZCGXhkAAACfGI9DW/AHmM1CWxCeyWAwCW1DcJ6K4im0DaFJE5Hy0UO2TS6Sb0JbEZZpWWVx5TS0HSEZP2eVCNnzI7vJWc8S+t4Du8nRoC5rDEahbQnGS1GLULyEtiUUw+RU4UqGoa0JxDzXr6J+G/N5aGvCsNOJkC0WqkKyC21PCCaiN9/d7boqhjxiCvHatongnE2F9mtoi+7P0txjefggDktzk8vQNt2dVXFyjeYq81Vom+6Nd48WJPmg6eHcpCUNdbhs4XP2HName7O2u577xGk8N03WYa36TywH2UWO8bJdHqPny6Ob/sl87V28rXMNPl+f0Wu68/Qh0W/IssaHUbvk69u8TQwB9Sb/nQZRVCBbfipk/bbhRcnaH/DvTe4v+/46jujB4sFs0THWW6srzjsfMDeZbdf+2lKKSMotI0sNuv6JTnK9ufLt47g3HZfl/jM41ORSykgKb+fx4FNfJ/3287itvih935A6jykbjy+sWzyY+jzhQtcpTXTcQH/yMWU8xXhrsWRFNbP9436/NO79NElGhb00EbVlNseJPrWaWnLxAY9tKiTT40sTg3usSc1Nlqkzx9e9kimtrdLWd2l59aVpLv7BrmZaU7teWrYCdHu2OvtGRsKktMK6ZY/l1fjHV9oKK8aXjU8azun0ToFwsb8+bl+cxvU697PvLowXp3S5e6M8sOyexs2jcY81Fg/qG3+zPGCV+MsxZfPZ14lT7+YDHh8TqRsvTWNJ/d11d7fHWUPqkGRG5R5rzO19GQj7IDvOLgQzwfFNqMA7HJgTJ/jywGNHjOQOjiyygnqCo7JUQY3xO9Vm/SnOajN9h293oOpG/NAii0g6UPQif96VbsfUlWZ9AitVKliz5Fi9VsE6xhs81IrWq7C22V1Z5R5fUfEL2O/g2PlisAfKsRvOYF9kBTtkHXulDXbNO85PMDhJw3GmisHpOhWcs+Ss6xRV2/VHcPaa4xQ+g/MYHSdzAgD8SUKfqP8X4P8dEv5rXkEEQQQFEQQRFEQQRFAQQRBBQQRBBAURBBEURBBEUBBBEEFBBEEEBREEERREEERQEEEQQUEEQQSFXuQB14JW6JUBAAAAAAAAAACN5B9OeoFOX5fttAAAAABJRU5ErkJggg==);
}


#slider {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.slide {
    width: 100%;
    height: 100%;
    display: none;
}

.slide.active {
    display: block;
}

.reviewer-image {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-size: cover;
    background-position: center;
    border: 5px solid #fff;
    box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.3);
}

.font-s {
    font-size: .5em;
}

.reviewer-platform a {
    color: #7c3aed;
    text-decoration: none !important;
}

.review_details {
    justify-content: center;
    align-items: center;
}

.reviewer-name {
    margin-bottom: 0;
}

.review-text {
    max-width: 768px;
    margin: 26px auto;
    font-style: italic;
}

.review-text::before,
.review-text::after {
    vertical-align: middle;
    margin: 0 10px;
    font-size: 2rem;
    color: #777;
}

.review-text::before {
    content: "❛❛";
}

.review-text::after {
    content: "❜❜";
}

.slider_controller {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.8);
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

.slider_controller:hover {
    background: rgba(255, 255, 255, 1);
}

.slider_controller#prev {
    left: 10px;
    right: initial;
}

.slider_controller#next {
    right: 10px;
    left: initial;
}

#reviews {
    min-height: 55vh;
    background: #f7f7f7;
    padding-top: 30px;
    padding-bottom: 30px;
}


div#footer {
    font-size: .75em;
    background: #000;
    padding: 10px;
}

div#footer a {
    color: #fff;
}

@media screen and (max-width: 1360px) {
    .circle_image.image_a {
        background-size: cover;
    }
}
@media screen and (max-width: 768px) {
    .hero{
        background-position: 0% 0%;
        background-repeat: no-repeat;
    }
    
    .hero h1 {
        font-size: 1.5em;
    }
    
    .hero .slogan{
        font-size: 1em;
    }
    
    .hero:before{
        background-image: linear-gradient(180deg, transparent 36%, #ffffff 50%);
        background-color: rgb(255 255 255 / .4);
    }

    .cta-highlight{
        font-size: 1em;
    }

    .circle_image{
        height: 30vh;
    }
}