/* Reset */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
*::before,*::after{pointer-events:none}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;line-height:1.6;color:#333;background:#fff}
img{max-width:100%;height:auto;display:block}
a{color:#2563eb;text-decoration:none;transition:color .3s}
a:hover{color:#1e40af}
ul{list-style:none}

/* Container */
.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}
.container--narrow{max-width:800px}

/* Header & Nav */
.header{background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.05);position:sticky;top:0;z-index:1000}
.nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem}
.nav__logo{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.25rem;color:#1e293b}
.nav__logo img{width:50px;height:50px}
.nav__menu{display:flex}
.nav__list{display:flex;gap:2rem}
.nav__link{color:#64748b;font-weight:500;padding:.5rem;position:relative}
.nav__link:hover,.nav__link.active{color:#2563eb}
.nav__toggle{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer}
.nav__toggle span{width:25px;height:3px;background:#333;transition:.3s;border-radius:3px}

/* Hero */
.hero{padding:4rem 0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}
.hero__container{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.hero__title{font-size:3rem;font-weight:800;line-height:1.2;margin-bottom:1rem}
.hero__description{font-size:1.25rem;margin-bottom:2rem;opacity:.95}
.hero__buttons{display:flex;gap:1rem}
.hero__image img{border-radius:1rem;box-shadow:0 20px 60px rgba(0,0,0,.3)}

/* Buttons */
.btn{display:inline-block;padding:.875rem 2rem;border-radius:.5rem;font-weight:600;text-align:center;transition:all .3s;cursor:pointer;border:none;font-size:1rem}
.btn--primary{background:#2563eb;color:#fff}
.btn--primary:hover{background:#1e40af;transform:translateY(-2px);box-shadow:0 10px 20px rgba(37,99,235,.3)}
.btn--secondary{background:#fff;color:#2563eb}
.btn--secondary:hover{background:#f1f5f9}
.btn--large{padding:1.125rem 2.5rem;font-size:1.125rem}
.btn--small{padding:.5rem 1rem;font-size:.875rem}
.btn--block{width:100%;display:block}

/* Sections */
.section__header{text-align:center;margin-bottom:3rem}
.section__title{font-size:2.5rem;font-weight:800;color:#1e293b;margin-bottom:1rem}
.section__description{font-size:1.25rem;color:#64748b;max-width:600px;margin:0 auto}

/* Services */
.services{padding:5rem 0;background:#f8fafc}
.services__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}
.service-card{background:#fff;border-radius:1rem;padding:2rem;box-shadow:0 4px 15px rgba(0,0,0,.05);transition:all .3s;position:relative}
.service-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:1rem 1rem 0 0;pointer-events:none}
.service-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px rgba(0,0,0,.15)}
.service-card__icon{color:#2563eb;margin-bottom:1.5rem}
.service-card__title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:#1e293b}
.service-card__description{color:#64748b;margin-bottom:1.5rem}
.service-card__link{color:#2563eb;font-weight:600}

/* Benefits */
.benefits{padding:5rem 0}
.benefits__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}
.benefit-card{padding:2rem;border-radius:1rem;background:#f8fafc;transition:.3s;position:relative}
.benefit-card__number{font-size:3rem;font-weight:800;color:#e0e7ff;margin-bottom:1rem}
.benefit-card__title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem}
.benefit-card__description{color:#64748b}

/* Stats */
.stats{padding:4rem 0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}
.stats__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}
.stat-card{text-align:center}
.stat-card__number{font-size:3rem;font-weight:800;margin-bottom:.5rem}
.stat-card__label{font-size:1.125rem;opacity:.9}

/* CTA */
.cta{padding:5rem 0;background:#1e293b;color:#fff;text-align:center}
.cta__title{font-size:2.5rem;font-weight:800;margin-bottom:1rem}
.cta__description{font-size:1.25rem;margin-bottom:2rem;opacity:.9}

/* Footer */
.footer{background:#1e293b;color:#cbd5e1;padding:4rem 0 2rem}
.footer__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}
.footer__logo{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;color:#fff;font-weight:700;font-size:1.25rem}
.footer__logo img{width:50px;height:50px}
.footer__description{color:#94a3b8;line-height:1.7}
.footer__title{color:#fff;font-weight:700;margin-bottom:1rem}
.footer__links li{margin-bottom:.5rem}
.footer__links a,.footer__contact a{color:#94a3b8;transition:.3s}
.footer__links a:hover,.footer__contact a:hover{color:#fff}
.footer__contact li{margin-bottom:.75rem;color:#94a3b8}
.footer__bottom{border-top:1px solid #334155;padding-top:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.footer__legal{display:flex;gap:1.5rem}

/* Cookie Banner */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:#1e293b;color:#fff;padding:1.5rem;box-shadow:0 -4px 20px rgba(0,0,0,.1);z-index:1001;display:none}
.cookie-banner.active{display:block}
.cookie-banner__content{display:flex;justify-content:space-between;align-items:center;gap:2rem;max-width:1200px;margin:0 auto;flex-wrap:wrap}
.cookie-banner__content p{margin:0}
.cookie-banner__content a{color:#93c5fd}

/* Page Header */
.page-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4rem 0;text-align:center}
.page-header__title{font-size:3rem;font-weight:800;margin-bottom:1rem}
.page-header__description{font-size:1.25rem;opacity:.95}

/* Blog */
.blog-grid{padding:5rem 0}
.blog-grid__items{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}
.blog-card{background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,.05);transition:.3s}
.blog-card:hover{transform:translateY(-8px);box-shadow:0 12px 30px rgba(0,0,0,.15)}
.blog-card__image{position:relative;overflow:hidden}
.blog-card__image img{transition:.3s}
.blog-card:hover .blog-card__image img{transform:scale(1.05)}
.blog-card__content{padding:2rem}
.blog-card__meta{display:flex;gap:1rem;margin-bottom:1rem;font-size:.875rem;color:#64748b}
.blog-card__category{color:#2563eb;font-weight:600}
.blog-card__title{font-size:1.5rem;font-weight:700;margin-bottom:1rem}
.blog-card__title a{color:#1e293b}
.blog-card__excerpt{color:#64748b;margin-bottom:1rem}
.blog-card__link{color:#2563eb;font-weight:600}

/* Article */
.article__header{padding:3rem 0;text-align:center}
.article__meta{display:flex;gap:1.5rem;justify-content:center;margin-bottom:1.5rem;color:#64748b;font-size:.875rem;flex-wrap:wrap}
.article__category{color:#2563eb;font-weight:600}
.article__title{font-size:3rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2}
.article__lead{font-size:1.25rem;color:#64748b;margin-bottom:2rem;max-width:700px;margin-left:auto;margin-right:auto}
.article__author{display:flex;align-items:center;gap:1rem;justify-content:center}
.article__author img{border-radius:50%;width:60px;height:60px}
.article__author-info strong{display:block}
.article__author-info span{color:#64748b;font-size:.875rem}
.article__featured-image{margin-bottom:3rem}
.article__featured-image img{width:100%;max-height:600px;object-fit:cover}
.article__content{padding:3rem 0}
.article__content h2{font-size:2rem;margin:2rem 0 1rem;color:#1e293b}
.article__content p{margin-bottom:1.5rem;line-height:1.8}
.article__content ul,.article__content ol{margin-bottom:1.5rem;padding-left:2rem}
.article__content li{margin-bottom:.5rem}
.article__related{padding:3rem 0;background:#f8fafc}
.related-articles{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}
.related-article{background:#fff;border-radius:1rem;overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,.05);transition:.3s}
.related-article:hover{transform:translateY(-4px)}
.related-article img{transition:.3s}
.related-article:hover img{transform:scale(1.05)}
.related-article h3{padding:1.5rem;font-size:1.25rem}
.related-article a{color:#1e293b}

/* Contact & Forms */
.contact{padding:4rem 0}
.contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem}
.contact__info h2{font-size:2rem;margin-bottom:1rem}
.contact-item{display:flex;gap:1rem;margin:2rem 0;align-items:flex-start}
.contact-item__icon{color:#2563eb;flex-shrink:0}
.contact-item__content h3{font-size:1.125rem;margin-bottom:.5rem}
.contact-item__note{font-size:.875rem;color:#64748b}
.form__group{margin-bottom:1.5rem}
.form__label{display:block;margin-bottom:.5rem;font-weight:600;color:#1e293b}
.form__input,.form__textarea{width:100%;padding:.875rem;border:2px solid #e2e8f0;border-radius:.5rem;font-family:inherit;transition:.3s}
.form__input:focus,.form__textarea:focus{outline:none;border-color:#2563eb}
.form__checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer}
.form__checkbox input{width:auto}
.form__note{font-size:.875rem;color:#64748b;margin-top:.5rem}

/* Map */
.map{padding:4rem 0;background:#f8fafc}
.map__container{margin-top:2rem;border-radius:1rem;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,.1)}
.map__description{text-align:center;margin-top:1.5rem;color:#64748b}

/* FAQ */
.faq{padding:4rem 0}
.faq__list{max-width:800px;margin:0 auto}
.faq-item{border-bottom:1px solid #e2e8f0;padding:1.5rem 0}
.faq-item__question{width:100%;text-align:left;background:none;border:none;font-size:1.125rem;font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:#1e293b}
.faq-item__question svg{transition:.3s;flex-shrink:0}
.faq-item__question[aria-expanded="true"] svg{transform:rotate(180deg)}
.faq-item__answer{max-height:0;overflow:hidden;transition:max-height .3s}
.faq-item__answer.active{max-height:500px}
.faq-item__answer p{padding-top:1rem;color:#64748b}

/* Newsletter */
.newsletter{padding:4rem 0;background:#1e293b;color:#fff;text-align:center}
.newsletter__title{font-size:2rem;margin-bottom:1rem}
.newsletter__description{margin-bottom:2rem;opacity:.9}
.newsletter__form{display:flex;max-width:500px;margin:0 auto;gap:1rem;flex-wrap:wrap}
.newsletter__input{flex:1;padding:.875rem;border:none;border-radius:.5rem;min-width:250px}

/* Team */
.team{padding:5rem 0}
.team__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}
.team-card{text-align:center;background:#fff;border-radius:1rem;padding:2rem;box-shadow:0 4px 15px rgba(0,0,0,.05);transition:.3s}
.team-card:hover{transform:translateY(-8px)}
.team-card__image{margin-bottom:1.5rem;border-radius:50%;overflow:hidden;width:200px;height:200px;margin-left:auto;margin-right:auto}
.team-card__name{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}
.team-card__role{color:#2563eb;font-weight:600;margin-bottom:1rem}
.team-card__description{color:#64748b;font-size:.875rem}

/* About & Values */
.about-content{padding:4rem 0}
.about-content__grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.about-content__text h2{font-size:2rem;margin-bottom:1rem}
.about-content__text p{margin-bottom:1.5rem;line-height:1.8;color:#64748b}
.about-content__image img{border-radius:1rem;box-shadow:0 10px 40px rgba(0,0,0,.1)}
.values{padding:4rem 0;background:#f8fafc}
.values__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}
.value-card{background:#fff;padding:2rem;border-radius:1rem;text-align:center}
.value-card__icon{color:#2563eb;margin-bottom:1rem}
.value-card h3{font-size:1.25rem;margin-bottom:1rem}
.value-card p{color:#64748b}

/* Legal & Service Pages */
.legal-content,.service-content{padding:4rem 0}
.legal-content h2,.service-content h2{font-size:1.75rem;margin-top:2rem;margin-bottom:1rem;color:#1e293b}
.legal-content p,.service-content p{margin-bottom:1.5rem;line-height:1.8;color:#64748b}
.legal-content ul,.legal-content ol,.service-content ul{margin:1.5rem 0;padding-left:2rem}
.legal-content li,.service-content li{margin-bottom:.75rem;color:#64748b}
.cta-box{background:#f8fafc;padding:2rem;border-radius:1rem;text-align:center;margin-top:3rem}
.cta-box h3{font-size:1.5rem;margin-bottom:1rem}
.feature-list{list-style:disc}

/* Mobile Responsive */
@media (max-width:768px){
.nav__menu{position:fixed;top:70px;left:-100%;width:80%;max-width:300px;height:calc(100vh - 70px);background:#fff;box-shadow:2px 0 20px rgba(0,0,0,.1);transition:.3s;padding:2rem;z-index:999}
.nav__menu.active{left:0}
.nav__list{flex-direction:column;gap:0}
.nav__link{display:block;padding:1rem;border-bottom:1px solid #f1f5f9}
.nav__toggle{display:flex}
.hero__container,.about-content__grid,.contact__grid{grid-template-columns:1fr}
.hero__title,.page-header__title,.article__title{font-size:2rem}
.hero__description{font-size:1rem}
.section__title{font-size:2rem}
.footer__bottom{flex-direction:column;text-align:center}
.cookie-banner__content{flex-direction:column}
.blog-grid__items{grid-template-columns:1fr}
}
