/* ============================================

   DELLEN AKADEMIE - STYLES

   Design: Premium Handwerk & Expertise

   Colors: Navy #1a3a52, Copper #d4714d

   ============================================ */



* {

    margin: 0;

    padding: 0;

    box-sizing: border-box;

}



:root {

    --primary: #244e6e;

    --copper: #d4714d;

    --navy: #244e6e;

    --dark: #14293d;

    --light: #f5f5f5;

    --text: #1a1a1a;

    --gray: #666666;

    --border: #d0d0d0;

    --white: #ffffff;

}



html {

    scroll-behavior: smooth;

}



body {

    font-family: 'Inter', sans-serif;

    color: var(--text);

    line-height: 1.6;

    background-color: var(--white);

}



.container {

    max-width: 1280px;

    margin: 0 auto;

    padding: 0 1rem;

}



@media (min-width: 768px) {

    .container {

        padding: 0 2rem;

    }

}



/* ============================================

   NAVIGATION

   ============================================ */



.navbar {

    position: sticky;

    top: 0;

    z-index: 1000;

    background-color: var(--white);

    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

}



.navbar .container {

    display: flex;

    justify-content: space-between;

    align-items: center;

    padding: 1rem;

}



.nav-brand {

    display: flex;

    align-items: center;

    gap: 0.75rem;

    text-decoration: none;

    color: var(--primary);

}



.logo {

    width: 300px;

    height: auto;

    display: block;

    margin-left: 2rem;

}



@media (max-width: 767px) {

    .logo {

        width: 180px;

        margin-left: 0.5rem;

    }

}



.brand-name {

    font-weight: bold;

    font-size: 1.25rem;

    color: var(--primary);

}



.nav-menu {

    display: none;

    gap: 2rem;

}



@media (min-width: 768px) {

    .nav-menu {

        display: flex;

    }

}



.nav-link {

    text-decoration: none;

    color: var(--text);

    transition: color 0.3s ease;

    font-weight: 500;

}



.nav-link:hover,

.nav-link.active {

    color: var(--copper);

}



.hamburger {

    display: flex;

    flex-direction: column;

    justify-content: center;

    gap: 0.375rem;

    background: none;

    border: none;

    cursor: pointer;

    padding: 0.5rem;

    position: relative;

    width: 40px;

    height: 40px;

}



@media (min-width: 768px) {

    .hamburger {

        display: none;

    }

}



.hamburger span {

    width: 24px;

    height: 3px;

    background-color: var(--primary);

    border-radius: 2px;

    transition: all 0.3s ease;

    position: absolute;

    left: 50%;

    transform: translateX(-50%);

}



.hamburger span:nth-child(1) {

    top: 10px;

}



.hamburger span:nth-child(2) {

    top: 18.5px;

}



.hamburger span:nth-child(3) {

    top: 27px;

}



.hamburger.active span:nth-child(1) {

    top: 18.5px;

    transform: translateX(-50%) rotate(45deg);

}



.hamburger.active span:nth-child(2) {

    opacity: 0;

}



.hamburger.active span:nth-child(3) {

    top: 18.5px;

    transform: translateX(-50%) rotate(-45deg);

}



/* Mobile Menu */

.nav-menu.mobile-open {

    display: flex;

    flex-direction: column;

    position: absolute;

    top: 100%;

    left: 0;

    right: 0;

    background-color: var(--white);

    border-top: 1px solid var(--border);

    padding: 1rem;

    gap: 0.5rem;

}



.nav-menu.mobile-open .nav-link {

    display: block;

    padding: 0.75rem;

    border-radius: 4px;

}



.nav-menu.mobile-open .nav-link:hover,

.nav-menu.mobile-open .nav-link.active {

    background-color: var(--light);

}



/* ============================================

   HERO SECTION

   ============================================ */



.hero {

    background: linear-gradient(to bottom, var(--light), var(--white));

    padding: 5rem 0 3rem 0;

}



.hero .container {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 3rem;

    align-items: center;

}



@media (max-width: 768px) {

    .hero .container {

        grid-template-columns: 1fr;

        gap: 2rem;

    }

}



.hero-text {

    display: flex;

    flex-direction: column;

    gap: 1.5rem;

}



.accent-line {

    width: 60px;

    height: 4px;

    background-color: var(--copper);

    border-radius: 2px;

}



.hero h1 {

    font-family: 'Playfair Display', serif;

    font-size: 3rem;

    font-weight: 700;

    line-height: 1.2;

    color: var(--primary);

}



@media (max-width: 768px) {

    .hero h1 {

        font-size: 2rem;

    }

}



.hero p {

    font-size: 1.125rem;

    color: var(--gray);

    line-height: 1.8;

}



.hero-buttons {

    display: flex;

    gap: 1rem;

    flex-wrap: wrap;

    margin-bottom: 3rem;

}



.hero-image {

    position: relative;

}



.hero-image img {

    width: 100%;

    border-radius: 12px;

    border: 3px solid var(--copper);

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);

}



/* ============================================

   BUTTONS

   ============================================ */



.btn {

    display: inline-block;

    padding: 0.875rem 2rem;

    border-radius: 6px;

    text-decoration: none;

    font-weight: 600;

    transition: all 0.3s ease;

    border: none;

    cursor: pointer;

    font-size: 1rem;

}



.btn-copper {

    background-color: var(--copper);

    color: var(--white);

}



.btn-copper:hover {

    background-color: #c25a3a;

    transform: translateY(-2px);

    box-shadow: 0 8px 16px rgba(212, 113, 77, 0.3);

}



.btn-navy {

    background-color: var(--navy);

    color: var(--white);

}



.btn-navy:hover {

    background-color: #0f1f2e;

    transform: translateY(-2px);

    box-shadow: 0 8px 16px rgba(26, 58, 82, 0.3);

}



/* ============================================

   SERVICES SECTION

   ============================================ */



   /* Scroll-Offset für Anker-Links wegen fixierter Navigation */

#services {

    scroll-margin-top: 100px; /* Höhe der Navigation + etwas Abstand */

}



.services {

    padding: 4rem 0;

    background-color: var(--white);

}



.section-header {

    text-align: center;

    margin-bottom: 3rem;

}



.accent-line-small {

    display: inline-block;

    width: 60px;

    height: 4px;

    background-color: var(--copper);

    border-radius: 2px;

    margin-bottom: 1rem;

}



.section-header h2 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    color: var(--primary);

    margin-bottom: 1rem;

}



.section-header p {

    font-size: 1.125rem;

    color: var(--gray);

}



.services-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));

    gap: 2rem;

}



.service-card {

    padding: 2rem;

    background-color: var(--light);

    border-radius: 8px;

    text-align: center;

    transition: all 0.3s ease;

}



.service-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);

}



.service-icon {

    font-size: 3rem;

    margin-bottom: 1rem;

}



.service-card h3 {

    font-size: 1.25rem;

    margin-bottom: 0.75rem;

    color: var(--primary);

}



.service-card p {

    color: var(--gray);

    line-height: 1.6;

}



/* ============================================

   BEFORE/AFTER SECTION

   ============================================ */



.before-after {

    padding: 4rem 0;

    background-color: var(--white);

}



.before-after h2 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    color: var(--primary);

    text-align: center;

    margin-bottom: 3rem;

}



.before-after-grid {

    display: grid;

    grid-template-columns: 1fr;

    gap: 2rem;

}



.before-after-item {

    text-align: center;

}



.before-after-item img {

    width: 100%;

    max-width: 900px;

    border-radius: 8px;

    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);

}



.before-after-item p {

    margin-top: 1rem;

    color: var(--gray);

    font-weight: 500;

}



/* ============================================

   COURSES SECTION

   ============================================ */



.courses {

    padding: 3rem 0;

    background-color: var(--white);

}



.courses-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

    gap: 2rem;

}



.course-card {

    padding: 2rem;

    background-color: var(--light);

    border-radius: 8px;

    border-left: 4px solid var(--copper);

    transition: all 0.3s ease;

}



.course-card:hover {

    transform: translateY(-8px);

    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);

}



.course-card h3 {

    font-size: 1.25rem;

    color: var(--primary);

    margin-bottom: 0.5rem;

}



.course-duration {

    color: var(--copper);

    font-weight: 600;

    margin-bottom: 1rem;

}



.course-features {

    list-style: none;

    margin-bottom: 1.5rem;

}



.course-features li {

    padding: 0.5rem 0 0.5rem 2rem;

    color: var(--gray);

    position: relative;

}



.course-features li::before {

    content: '✓';

    position: absolute;

    left: 0;

    top: 0.5rem;

    color: var(--copper);

    font-weight: bold;

    font-size: 1.25rem;

    line-height: 1;

}



.course-price {

    font-size: 1.125rem;

    color: var(--primary);

    margin-bottom: 1rem;

}



.course-price strong {

    color: var(--copper);

    font-size: 1.5rem;

}



.courses-info {

    text-align: center;

    margin-top: 3rem;

    padding: 1.5rem 2rem;

    background-color: #f9f9f9;

    border-left: 4px solid var(--copper);

    color: var(--primary);

    font-size: 1.125rem;

    line-height: 1.6;

    border-radius: 4px;

}



.company-link {

    text-align: center;

    margin-top: 2rem;

    margin-bottom: 1rem;

    font-size: 1.125rem;

    color: var(--gray);

}



.company-link a {

    color: var(--copper);

    text-decoration: none;

    font-weight: 600;

    transition: color 0.3s ease;

}



.company-link a:hover {

    color: var(--primary);

    text-decoration: underline;

}



.company-image {

    width: 100%;

    max-width: 900px;

    display: block;

    margin: 1.5rem auto;

    border-radius: 8px;

    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.1);

}



/* ============================================

   HERO DARK SECTION

   ============================================ */



.hero-dark {

    background: linear-gradient(to bottom, var(--primary), var(--dark));

    color: var(--white);

    padding: 4rem 0;

    text-align: center;

}



.hero-dark h1 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    margin-bottom: 1rem;

}



.hero-dark p {

    font-size: 1.125rem;

    opacity: 0.9;

}



/* ============================================

   STORY SECTION

   ============================================ */



.story {

    padding: 4rem 0;

    background-color: var(--white);

}



.story h2 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    color: var(--primary);

    margin-bottom: 2rem;

}



.story p {

    font-size: 1.125rem;

    color: var(--gray);

    line-height: 1.8;

    margin-bottom: 1.5rem;

}



.legal-content {

    max-width: 900px;

    margin: 0 auto;

}



.legal-content h2 {

    font-family: 'Playfair Display', serif;

    font-size: 1.75rem;

    color: var(--primary);

    margin-top: 2.5rem;

    margin-bottom: 1rem;

}



.legal-content h2:first-child {

    margin-top: 0;

}



.legal-content p {

    font-size: 1rem;

    color: var(--gray);

    line-height: 1.8;

    margin-bottom: 1.25rem;

}



.legal-content a {

    color: var(--copper);

    text-decoration: none;

    word-break: break-all;

}



.legal-content a:hover {

    text-decoration: underline;

}



.legal-content h3 {

    font-size: 1.25rem;

    color: var(--primary);

    margin-top: 2rem;

    margin-bottom: 0.75rem;

    font-weight: 600;

}



.legal-content ul,

.legal-content ol {

    margin-bottom: 1.25rem;

    padding-left: 1.5rem;

}



.legal-content li {

    font-size: 1rem;

    color: var(--gray);

    line-height: 1.8;

    margin-bottom: 0.5rem;

    word-wrap: break-word;

    overflow-wrap: break-word;

}



.legal-content code {

    background-color: #f4f4f4;

    padding: 0.2rem 0.4rem;

    border-radius: 3px;

    font-size: 0.9em;

    word-break: break-word;

    overflow-wrap: break-word;

}



.legal-content strong {

    word-wrap: break-word;

    overflow-wrap: break-word;

}



/* ============================================

   VALUES SECTION

   ============================================ */



.values {

    padding: 4rem 0;

    background-color: var(--light);

}



.values h2 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    color: var(--primary);

    text-align: center;

    margin-bottom: 3rem;

}



.values-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

    gap: 2rem;

}



.value-card {

    padding: 2rem;

    background-color: var(--white);

    border-radius: 8px;

    text-align: center;

    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);

}



.value-card h3 {

    font-size: 1.25rem;

    color: var(--primary);

    margin-bottom: 1rem;

}



.value-card p {

    color: var(--gray);

    line-height: 1.6;

}



/* ============================================

   TEAM SECTION

   ============================================ */



.team {

    padding: 4rem 0;

    background-color: var(--white);

}



.team h2 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    color: var(--primary);

    text-align: center;

    margin-bottom: 3rem;

}



.team-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

    gap: 2rem;

}



.team-member {

    text-align: center;

}



.member-avatar {

    width: 100px;

    height: 100px;

    background-color: var(--copper);

    border-radius: 50%;

    display: flex;

    align-items: center;

    justify-content: center;

    color: var(--white);

    font-weight: bold;

    font-size: 1.5rem;

    margin: 0 auto 1rem;

}



.member-photo {

    width: 200px;

    height: 200px;

    border-radius: 50%;

    object-fit: cover;

    margin: 0 auto 1rem;

    display: block;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);

}



.team-member h3 {

    font-size: 1.25rem;

    color: var(--primary);

    margin-bottom: 0.5rem;

}



.team-member .role {

    color: var(--copper);

    font-weight: 600;

    margin-bottom: 0.5rem;

}



.team-member p {

    color: var(--gray);

}



/* ============================================

   STATS SECTION

   ============================================ */



.stats {

    padding: 4rem 0;

    background: linear-gradient(to right, var(--primary), var(--dark));

    color: var(--white);

}



.stats-grid {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));

    gap: 2rem;

    text-align: center;

}



.stat-number {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    font-weight: 700;

    color: var(--copper);

}



.stat-label {

    font-size: 1.125rem;

    opacity: 0.9;

    margin-top: 0.5rem;

}



/* ============================================

   CONTACT SECTION

   ============================================ */



.contact {

    padding: 4rem 0;

    background-color: var(--white);

}



.contact-grid {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 3rem;

}



@media (max-width: 768px) {

    .contact-grid {

        grid-template-columns: 1fr;

    }

}



.contact-form h2,

.contact-info h2 {

    font-family: 'Playfair Display', serif;

    font-size: 1.75rem;

    color: var(--primary);

    margin-bottom: 2rem;

}



.form-group {

    margin-bottom: 1.5rem;

}



.form-group label {

    display: block;

    margin-bottom: 0.5rem;

    font-weight: 600;

    color: var(--primary);

}



.form-group input,

.form-group textarea {

    width: 100%;

    padding: 0.75rem;

    border: 1px solid var(--border);

    border-radius: 4px;

    font-family: 'Inter', sans-serif;

    font-size: 1rem;

}



.form-group input:focus,

.form-group textarea:focus {

    outline: none;

    border-color: var(--copper);

    box-shadow: 0 0 0 3px rgba(212, 113, 77, 0.1);

}



.info-item {

    margin-bottom: 2rem;

}



.info-item h3 {

    color: var(--primary);

    margin-bottom: 0.75rem;

}



.info-item p {

    color: var(--gray);

    line-height: 1.8;

}



.info-item a {

    color: var(--copper);

    text-decoration: none;

    font-weight: 600;

}



.info-item a:hover {

    text-decoration: underline;

}



/* ============================================
   MAP SECTION
   ============================================ */

.map-section {
    padding: 4rem 0;
    background: linear-gradient(to bottom, var(--light), var(--white));
}

.map-section h2 {
    font-family: 'Playfair Display', serif;
    font-size: 2.5rem;
    color: var(--primary);
    text-align: center;
    margin-bottom: 2rem;
}

.map-container {
    max-width: 900px;
    margin: 0 auto;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.map-container iframe {
    display: block;
    width: 100%;
}


/* ============================================

   FAQ SECTION

   ============================================ */



.faq {

    padding: 4rem 0;

    background-color: var(--light);

}



.faq h2 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    color: var(--primary);

    text-align: center;

    margin-bottom: 3rem;

}



.faq-items {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

    gap: 2rem;

}



.faq-item {

    padding: 2rem;

    background-color: var(--white);

    border-radius: 8px;

    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);

}



.faq-item h3 {

    color: var(--primary);

    margin-bottom: 1rem;

}



.faq-item p {

    color: var(--gray);

    line-height: 1.6;

}



/* ============================================

   REGISTRATION FORM SECTION

   ============================================ */



.registration-section {

    padding: 4rem 0;

    background-color: var(--light);

    scroll-margin-top: 80px; /* Offset für sticky navbar */

}



.registration-section h2 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    color: var(--primary);

    text-align: center;

    margin-bottom: 0.5rem;

}



.section-subtitle {

    text-align: center;

    color: var(--gray);

    font-size: 1.125rem;

    margin-bottom: 3rem;

}



.registration-form {

    max-width: 800px;

    margin: 0 auto;

    background-color: var(--white);

    padding: 2.5rem;

    border-radius: 8px;

    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

}



.form-row {

    display: grid;

    grid-template-columns: 1fr;

    gap: 1.5rem;

    margin-bottom: 1.5rem;

}



@media (min-width: 768px) {

    .form-row {

        grid-template-columns: 1fr 1fr;

    }

}



.form-group {

    margin-bottom: 1.5rem;

}



.form-group label {

    display: block;

    margin-bottom: 0.5rem;

    color: var(--primary);

    font-weight: 600;

    font-size: 0.95rem;

}



.form-group input,

.form-group select,

.form-group textarea {

    width: 100%;

    padding: 0.75rem;

    border: 2px solid var(--border);

    border-radius: 4px;

    font-family: 'Inter', sans-serif;

    font-size: 1rem;

    transition: border-color 0.3s ease;

}



.form-group input:focus,

.form-group select:focus,

.form-group textarea:focus {

    outline: none;

    border-color: var(--copper);

}



.form-group textarea {

    resize: vertical;

    min-height: 100px;

}



.checkbox-group-label {

    display: block;

    margin-bottom: 1.75rem;

    color: var(--primary);

    font-weight: 600;

    font-size: 0.95rem;

}



.checkbox-group {

    display: flex;

    flex-direction: column;

    gap: 1rem;

}



.checkbox-label {

    display: flex;

    align-items: center;

    gap: 1.5rem;

    cursor: pointer;

    color: var(--text);

    font-weight: normal;

    line-height: 1.5;

}



.checkbox-label input[type="checkbox"] {

    width: 20px;

    height: 20px;

    min-width: 20px;

    margin: 0;

    padding: 0;

    cursor: pointer;

    accent-color: var(--copper);

    flex-shrink: 0;

    vertical-align: middle;

}



.checkbox-label span {

    user-select: none;

    flex: 1;

}



.checkbox-label a {

    color: var(--copper);

    text-decoration: underline;

}



.checkbox-label a:hover {

    color: var(--primary);

}



.registration-form .btn {

    width: 100%;

    padding: 1rem 2rem;

    font-size: 1.125rem;

    margin-top: 1rem;

}



/* ============================================

   CTA SECTION

   ============================================ */



.cta {

    padding: 4rem 0;

    background: linear-gradient(to right, var(--primary), var(--dark));

    color: var(--white);

    text-align: center;

}



.cta h2 {

    font-family: 'Playfair Display', serif;

    font-size: 2.5rem;

    margin-bottom: 1rem;

}



.cta p {

    font-size: 1.125rem;

    margin-bottom: 2rem;

    opacity: 0.9;

}



.cta-buttons {

    display: flex;

    gap: 1rem;

    justify-content: center;

    flex-wrap: wrap;

}



/* ============================================

   FOOTER

   ============================================ */



.footer {

    background-color: #0B474B;

    color: var(--white);

    padding: 3rem 0 1rem;

}



.footer-content {

    display: grid;

    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

    gap: 2rem;

    margin-bottom: 2rem;

}



.footer h4 {

    color: var(--white);

    margin-bottom: 1rem;

    font-weight: 600;

}



.footer p {

    color: rgba(255, 255, 255, 0.8);

    line-height: 1.6;

}



.footer-legal-links {

    margin-top: 1rem;

    padding-top: 1rem;

    position: relative;

}



.footer-legal-links::before {

    content: '';

    position: absolute;

    top: 0;

    left: 0;

    width: 60px;

    height: 4px;

    background-color: var(--copper);

    border-radius: 2px;

}



.footer ul {

    list-style: none;

}



.footer li {

    margin-bottom: 0.5rem;

}



.footer a {

    color: rgba(255, 255, 255, 0.8);

    text-decoration: none;

    transition: color 0.3s ease;

}



.footer a:hover {

    color: var(--copper);

}



.footer-bottom {

    border-top: 1px solid rgba(255, 255, 255, 0.1);

    padding-top: 2rem;

    text-align: center;

    color: rgba(255, 255, 255, 0.6);

}



/* ============================================

   RESPONSIVE

   ============================================ */



@media (max-width: 768px) {

    .hero h1 {

        font-size: 2rem;

    }



    .section-header h2,

    .hero-dark h1,

    .story h2,

    .values h2,

    .team h2,

    .faq h2,

    .cta h2 {

        font-size: 1.75rem;

    }



    .hero-buttons {

        flex-direction: column;

    }



    .hero-buttons .btn {

        width: 100%;

        text-align: center;

    }



    .cta-buttons {

        flex-direction: column;

    }



    .cta-buttons .btn {

        width: 100%;

    }

}



/* ============================================

   COOKIE CONSENT BANNER

   ============================================ */



.cookie-consent-banner {

    position: fixed;

    bottom: 0;

    left: 0;

    right: 0;

    background-color: rgba(26, 58, 82, 0.98);

    color: var(--white);

    padding: 1.5rem;

    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.15);

    z-index: 10000;

    display: none;

    animation: slideUp 0.4s ease-out;

}



.cookie-consent-banner.show {

    display: block;

}



@keyframes slideUp {

    from {

        transform: translateY(100%);

        opacity: 0;

    }

    to {

        transform: translateY(0);

        opacity: 1;

    }

}



.cookie-consent-content {

    max-width: 1280px;

    margin: 0 auto;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 2rem;

    flex-wrap: wrap;

}



.cookie-consent-text {

    flex: 1;

    min-width: 300px;

}



.cookie-consent-text h3 {

    font-size: 1.25rem;

    margin-bottom: 0.5rem;

    color: var(--white);

}



.cookie-consent-text p {

    font-size: 0.95rem;

    line-height: 1.6;

    color: rgba(255, 255, 255, 0.9);

    margin-bottom: 0.5rem;

}



.cookie-consent-text a {

    color: var(--copper);

    text-decoration: underline;

}



.cookie-consent-text a:hover {

    color: #e08660;

}



.cookie-consent-buttons {

    display: flex;

    gap: 1rem;

    flex-wrap: wrap;

}



.cookie-consent-buttons .btn {

    padding: 0.75rem 1.5rem;

    font-size: 0.95rem;

    border: none;

    border-radius: 6px;

    cursor: pointer;

    font-weight: 600;

    transition: all 0.3s ease;

    white-space: nowrap;

}



.cookie-btn-accept {

    background-color: var(--copper);

    color: var(--white);

}



.cookie-btn-accept:hover {

    background-color: #c26342;

    transform: translateY(-2px);

}



.cookie-btn-decline {

    background-color: transparent;

    color: var(--white);

    border: 2px solid var(--white);

}



.cookie-btn-decline:hover {

    background-color: rgba(255, 255, 255, 0.1);

}



.cookie-btn-settings {

    background-color: transparent;

    color: rgba(255, 255, 255, 0.8);

    border: 1px solid rgba(255, 255, 255, 0.3);

    font-size: 0.9rem;

}



.cookie-btn-settings:hover {

    background-color: rgba(255, 255, 255, 0.05);

    color: var(--white);

}



@media (max-width: 768px) {

    .cookie-consent-content {

        flex-direction: column;

        align-items: stretch;

        gap: 1.5rem;

    }



    .cookie-consent-text {

        min-width: auto;

    }



    .cookie-consent-buttons {

        flex-direction: column;

    }



    .cookie-consent-buttons .btn {

        width: 100%;

        text-align: center;

    }

}

