body {
    font-family: 'Poppins', sans-serif;
    box-sizing: border-box;
}

.hero-title {
    font-size: 2.8rem;
}

.hero-subtitle {
    font-size: 1.15rem;
}

.site-name {
    font-size: 1.8rem;
}

.section-title {
    font-size: 2.2rem;
}

@media (min-width: 768px) and (max-width: 1023px) {
    .hero-title {
        font-size: 3.5rem;
    }
    .hero-subtitle {
        font-size: 1.3rem;
    }
    .site-name {
        font-size: 2rem;
    }
    .section-title {
        font-size: 2.8rem;
    }
}

@media (min-width: 1024px) {
    .hero-title {
        font-size: 4.5rem;
    }
    .hero-subtitle {
        font-size: 1.5rem;
    }
    .site-name {
        font-size: 2.2rem;
    }
    .section-title {
        font-size: 3rem;
    }
}

@media (max-width: 767px) {
    .hero-title {
        font-size: 2.2rem; /* Mobile font size */
    }
    .hero-subtitle {
        font-size: 1rem;
    }
    .site-name {
        font-size: 1.1rem; /* Mobile font size */
    }
    .section-title {
        font-size: 1.8rem;
    }
    .footer .site-name {
        font-size: 1rem; /* Smaller for footer on mobile */
    }
}

.animation-delay-100 {
    animation-delay: 0.1s;
}
.animation-delay-200 {
    animation-delay: 0.2s;
}
.animation-delay-300 {
    animation-delay: 0.3s;
}
.animation-delay-400 {
    animation-delay: 0.4s;
}
.animation-delay-500 {
    animation-delay: 0.5s;
}

/* Animations */
@keyframes fade-in-up {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fade-in-slide-up {
    from {
        opacity: 0;
        transform: translateY(50px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in-up {
    animation: fade-in-up 0.8s ease-out forwards;
    opacity: 0; /* Hidden by default */
}

.animate-fade-in-slide-up {
    opacity: 0; /* Hidden by default */
}

/* Custom styles for the service detail modal */
#service-detail-modal .prose h4 {
    font-size: 1.5rem; /* Equivalent to text-2xl */
    font-weight: 600; /* Equivalent to font-semibold */
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
}

#service-detail-modal .prose ul {
    list-style-type: disc;
    margin-left: 1.5rem;
    padding-left: 0;
}

#service-detail-modal .prose li {
    margin-bottom: 0.5rem;
}

#cookie-banner {
    transform: translateX(110%); /* Start off-screen */
}

#cookie-banner.show {
    transform: translateX(0); /* Slide in */
}

/* Custom styles for FAQ question button icon rotation */
.faq-question i.heroicon-chevron-down.rotate-180 {
    transform: rotate(180deg);
}

.footer a {
    white-space: nowrap;
}

.contact-form .form-input {
    white-space: normal;
    word-break: break-word;
}

.contact-form button {
    white-space: normal;
    word-break: break-word;
}

.text-break-all {
    word-break: break-all;
}
/* Styles for the main container */
.policyOrbitalShell {
    padding: 30px; /* Padding for top and sides */
}

/* Heading styles */
.policyOrbitalShell h1 {
    font-size: 1.8em; /* Not too large, prominent */
    margin-top: 1.5em; /* Space above h1 */
    margin-bottom: 0.8em; /* Space below h1 */
    line-height: 1.2; /* Improved readability for headings */
    font-weight: bold;
}

.policyOrbitalShell h2 {
    font-size: 1.5em; /* Slightly smaller than h1 */
    margin-top: 1.4em;
    margin-bottom: 0.7em;
    line-height: 1.3;
    font-weight: bold;
}

.policyOrbitalShell h3 {
    font-size: 1.2em; /* Good for sub-sections */
    margin-top: 1.3em;
    margin-bottom: 0.6em;
    line-height: 1.4;
    font-weight: bold;
}

.policyOrbitalShell h4 {
    font-size: 1em; /* Standard paragraph size, but bold */
    margin-top: 1.2em;
    margin-bottom: 0.5em;
    line-height: 1.5;
    font-weight: bold;
}

.policyOrbitalShell h5 {
    font-size: 0.9em; /* Slightly smaller than paragraph, still bold */
    margin-top: 1.1em;
    margin-bottom: 0.4em;
    line-height: 1.5;
    font-weight: bold;
}

/* Paragraph styles */
.policyOrbitalShell p {
    font-size: 1em; /* Base font size for paragraphs */
    line-height: 1.6; /* Good line height for readability */
    margin-bottom: 1em; /* Space between paragraphs */
}

/* Unordered list styles */
.policyOrbitalShell ul {
    list-style-type: disc; /* Standard bullet points */
    margin-top: 1em; /* Space above the list */
    margin-bottom: 1em; /* Space below the list */
    padding-left: 1.5em; /* Indent for bullet points */
}

/* List item styles */
.policyOrbitalShell li {
    font-size: 1em; /* Consistent with paragraph text */
    line-height: 1.6; /* Consistent line height */
    margin-bottom: 0.5em; /* Space between list items */
}
.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: all 0.35s ease;
}

.faq-answer.active {
    max-height: 1000px; /* запас */
    padding: 1.25rem;
}
#main-header {
    background-color: rgba(17, 24, 39, 0.85);
}
.mob-menu {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding-top: 20px;
}