@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Poppins:wght@600;700;800&display=swap');
/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
:root{--color-primary:#1e3a8a;--color-primary-light:#3b82f6;--color-primary-dark:#1e40af;--color-secondary:#0ea5e9;--color-accent:#06b6d4;--color-white:#ffffff;--color-light-gray:#f8fafc;--color-gray:#64748b;--color-dark-gray:#334155;--color-black:#0f172a;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--font-primary:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--font-heading:'Poppins','Inter',sans-serif;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--spacing-xs:0.5rem;--spacing-sm:0.75rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--spacing-4xl:6rem;--radius-sm:0.25rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-full:9999px;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--transition-fast:150ms ease-in-out;--transition-base:250ms ease-in-out;--transition-slow:350ms ease-in-out;--container-max-width:1280px;--container-padding:var(--spacing-lg);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;}
*{margin:0;padding:0;box-sizing:border-box;}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}body{font-family:var(--font-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-dark-gray);background-color:var(--color-white);}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-black);margin-bottom:var(--spacing-md);}h1{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);}h2{font-size:var(--font-size-4xl);}h3{font-size:var(--font-size-3xl);}h4{font-size:var(--font-size-2xl);}h5{font-size:var(--font-size-xl);}h6{font-size:var(--font-size-lg);}p{margin-bottom:var(--spacing-md);line-height:var(--line-height-relaxed);}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast);}a:hover{color:var(--color-primary-light);text-decoration:underline;}ul,ol{margin-bottom:var(--spacing-md);padding-left:var(--spacing-xl);}li{margin-bottom:var(--spacing-xs);}img{max-width:100%;height:auto;display:block;}.btn{display:inline-block;padding:var(--spacing-sm) var(--spacing-xl);font-family:var(--font-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-align:center;text-decoration:none;border:2px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);line-height:1.5;}.btn-primary{background-color:var(--color-primary);color:var(--color-white);border-color:var(--color-primary);}.btn-primary:hover{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark);text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow-lg);}.btn-secondary{background-color:var(--color-secondary);color:var(--color-white);border-color:var(--color-secondary);}.btn-secondary:hover{background-color:#0284c7;border-color:#0284c7;text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow-lg);}.btn-outline{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary);}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-white);text-decoration:none;}.btn-large{padding:var(--spacing-md) var(--spacing-2xl);font-size:var(--font-size-lg);}input[type="text"],input[type="email"],input[type="tel"],input[type="url"],input[type="password"],input[type="search"],textarea,select{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-family:var(--font-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-dark-gray);background-color:var(--color-white);border:2px solid #e2e8f0;border-radius:var(--radius-md);transition:border-color var(--transition-fast);}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(30,58,138,0.1);}label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-medium);color:var(--color-black);}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding);}.text-center{text-align:center;}.text-right{text-align:right;}.mt-0{margin-top:0;}.mt-1{margin-top:var(--spacing-xs);}.mt-2{margin-top:var(--spacing-sm);}.mt-3{margin-top:var(--spacing-md);}.mt-4{margin-top:var(--spacing-lg);}.mt-5{margin-top:var(--spacing-xl);}.mb-0{margin-bottom:0;}.mb-1{margin-bottom:var(--spacing-xs);}.mb-2{margin-bottom:var(--spacing-sm);}.mb-3{margin-bottom:var(--spacing-md);}.mb-4{margin-bottom:var(--spacing-lg);}.mb-5{margin-bottom:var(--spacing-xl);}
.layout-container{display:flex;flex-direction:column;min-height:100vh;}.main-content{flex:1;}.site-header{background-color:var(--color-white);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:var(--z-sticky);transition:all var(--transition-base);}.site-header.scrolled{box-shadow:var(--shadow-md);}.header-container{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--container-padding);max-width:var(--container-max-width);margin:0 auto;}.site-branding{display:flex;align-items:center;gap:var(--spacing-md);}.site-logo img{height:50px;width:auto;}.site-name{font-family:var(--font-heading);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:0;}.site-slogan{font-size:var(--font-size-sm);color:var(--color-gray);margin-top:var(--spacing-xs);}.primary-menu{display:flex;align-items:center;gap:var(--spacing-xl);}.primary-menu ul{display:flex;list-style:none;margin:0;padding:0;gap:var(--spacing-lg);}.primary-menu li{margin:0;}.primary-menu a{font-weight:var(--font-weight-medium);color:var(--color-dark-gray);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-fast);}.primary-menu a:hover,.primary-menu a.is-active{color:var(--color-primary);background-color:var(--color-light-gray);text-decoration:none;}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:var(--spacing-xs);}.mobile-menu-toggle span{display:block;width:25px;height:3px;background-color:var(--color-primary);margin:5px 0;transition:all var(--transition-fast);}.hero-section{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-white);padding:var(--spacing-4xl) 0;position:relative;overflow:hidden;}.hero-section::before{content:'';position:absolute;top:0;right:0;width:50%;height:100%;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 600"><path fill="rgba(255,255,255,0.05)" d="M0,300 Q300,100 600,300 T1200,300 L1200,600 L0,600 Z"/></svg>') no-repeat center;background-size:cover;opacity:0.3;}.hero-content{position:relative;z-index:1;max-width:800px;}.hero-title{font-size:var(--font-size-5xl);color:var(--color-white);margin-bottom:var(--spacing-lg);line-height:1.1;}.hero-subtitle{font-size:var(--font-size-xl);margin-bottom:var(--spacing-2xl);opacity:0.95;line-height:var(--line-height-relaxed);}.hero-cta{display:flex;gap:var(--spacing-md);flex-wrap:wrap;}.featured-products-section{padding:var(--spacing-4xl) 0;background-color:var(--color-light-gray);}.section-header{text-align:center;margin-bottom:var(--spacing-3xl);}.section-title{font-size:var(--font-size-4xl);margin-bottom:var(--spacing-md);}.section-subtitle{font-size:var(--font-size-lg);color:var(--color-gray);max-width:700px;margin:0 auto;}.products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-2xl);}.product-card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:all var(--transition-base);border:2px solid transparent;}.product-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-color:var(--color-primary-light);}.product-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--color-primary-light),var(--color-secondary));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-lg);font-size:var(--font-size-3xl);}.product-title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm);}.product-description{color:var(--color-gray);margin-bottom:var(--spacing-lg);}.product-features{list-style:none;padding:0;margin-bottom:var(--spacing-lg);}.product-features li{padding:var(--spacing-xs) 0;color:var(--color-dark-gray);display:flex;align-items:center;gap:var(--spacing-xs);}.product-features li::before{content:'✓';color:var(--color-success);font-weight:bold;}.pricing-section{padding:var(--spacing-4xl) 0;background-color:var(--color-white);}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-2xl);max-width:1100px;margin-left:auto;margin-right:auto;}.pricing-card{background-color:var(--color-white);border:2px solid #e2e8f0;border-radius:var(--radius-xl);padding:var(--spacing-2xl);text-align:center;transition:all var(--transition-base);position:relative;}.pricing-card:hover{transform:scale(1.05);box-shadow:var(--shadow-xl);border-color:var(--color-primary);}.pricing-card.featured{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-white);border-color:var(--color-primary);transform:scale(1.08);}.pricing-card.featured .pricing-badge{background-color:var(--color-accent);color:var(--color-white);padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);position:absolute;top:-12px;left:50%;transform:translateX(-50%);}.pricing-card.featured h3,.pricing-card.featured .pricing-description{color:var(--color-white);}.pricing-tier{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm);}.pricing-price{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:var(--spacing-lg) 0;}.pricing-card.featured .pricing-price{color:var(--color-white);}.pricing-period{font-size:var(--font-size-base);color:var(--color-gray);font-weight:var(--font-weight-normal);}.pricing-card.featured .pricing-period{color:rgba(255,255,255,0.9);}.pricing-description{color:var(--color-gray);margin-bottom:var(--spacing-lg);font-size:var(--font-size-sm);}.pricing-features{list-style:none;padding:0;margin:var(--spacing-xl) 0;text-align:left;}.pricing-features li{padding:var(--spacing-sm) 0;display:flex;align-items:center;gap:var(--spacing-sm);}.pricing-features li::before{content:'✓';color:var(--color-success);font-weight:bold;flex-shrink:0;}.pricing-card.featured .pricing-features li::before{color:var(--color-white);}.contact-section{padding:var(--spacing-4xl) 0;background:linear-gradient(to bottom,var(--color-light-gray),var(--color-white));}.contact-container{max-width:800px;margin:0 auto;}.contact-intro{text-align:center;margin-bottom:var(--spacing-2xl);}.contact-form{background-color:var(--color-white);padding:var(--spacing-2xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);}.form-group{margin-bottom:var(--spacing-lg);}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);}textarea{min-height:150px;resize:vertical;}.form-submit{width:100%;margin-top:var(--spacing-md);}.site-footer{background-color:var(--color-black);color:var(--color-white);padding:var(--spacing-3xl) 0 var(--spacing-xl);margin-top:auto;}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-2xl);margin-bottom:var(--spacing-2xl);}.footer-section h4{color:var(--color-white);margin-bottom:var(--spacing-md);}.footer-section ul{list-style:none;padding:0;margin:0;}.footer-section li{margin-bottom:var(--spacing-sm);}.footer-section a{color:var(--color-gray);transition:color var(--transition-fast);}.footer-section a:hover{color:var(--color-primary-light);text-decoration:none;}.footer-bottom{border-top:1px solid var(--color-dark-gray);padding-top:var(--spacing-lg);text-align:center;color:var(--color-gray);font-size:var(--font-size-sm);}
.card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-md);transition:all var(--transition-base);}.card:hover{box-shadow:var(--shadow-xl);}.badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:0.5px;}.badge-primary{background-color:var(--color-primary-light);color:var(--color-white);}.badge-success{background-color:var(--color-success);color:var(--color-white);}.badge-info{background-color:var(--color-info);color:var(--color-white);}.alert{padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);border:1px solid transparent;}.alert-success{background-color:#d1fae5;border-color:var(--color-success);color:#065f46;}.alert-info{background-color:#dbeafe;border-color:var(--color-info);color:#1e3a8a;}.alert-warning{background-color:#fed7aa;border-color:var(--color-warning);color:#92400e;}.alert-error{background-color:#fee2e2;border-color:var(--color-error);color:#991b1b;}.progress{height:8px;background-color:#e2e8f0;border-radius:var(--radius-full);overflow:hidden;}.progress-bar{height:100%;background:linear-gradient(90deg,var(--color-primary-light),var(--color-secondary));transition:width var(--transition-base);}.divider{height:1px;background-color:#e2e8f0;margin:var(--spacing-2xl) 0;}.spinner{display:inline-block;width:40px;height:40px;border:4px solid rgba(30,58,138,0.1);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;}@keyframes spin{to{transform:rotate(360deg);}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,0.5);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;pointer-events:none;transition:opacity var(--transition-base);}.modal-overlay.active{opacity:1;pointer-events:all;}.modal{background-color:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-2xl);max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);transform:scale(0.9);transition:transform var(--transition-base);}.modal-overlay.active .modal{transform:scale(1);}.tabs{display:flex;border-bottom:2px solid #e2e8f0;margin-bottom:var(--spacing-lg);}.tab{padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition-fast);font-weight:var(--font-weight-medium);color:var(--color-gray);}.tab:hover{color:var(--color-primary);}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);}.tooltip{position:relative;display:inline-block;}.tooltip-text{visibility:hidden;background-color:var(--color-black);color:var(--color-white);text-align:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);position:absolute;z-index:var(--z-tooltip);bottom:125%;left:50%;transform:translateX(-50%);opacity:0;transition:opacity var(--transition-fast);font-size:var(--font-size-sm);white-space:nowrap;}.tooltip:hover .tooltip-text{visibility:visible;opacity:1;}.icon-text{display:flex;align-items:center;gap:var(--spacing-xs);}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:var(--spacing-xs);}.status-active{background-color:var(--color-success);}.status-pending{background-color:var(--color-warning);}.status-inactive{background-color:var(--color-gray);}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-xs);padding:var(--spacing-md) 0;font-size:var(--font-size-sm);}.breadcrumb-item{display:flex;align-items:center;}.breadcrumb-item:not(:last-child)::after{content:'/';margin-left:var(--spacing-xs);color:var(--color-gray);}.breadcrumb-item a{color:var(--color-primary);}.breadcrumb-item.active{color:var(--color-gray);}.pagination{display:flex;gap:var(--spacing-xs);justify-content:center;margin:var(--spacing-2xl) 0;}.pagination a,.pagination span{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 var(--spacing-sm);border:2px solid #e2e8f0;border-radius:var(--radius-md);color:var(--color-dark-gray);transition:all var(--transition-fast);}.pagination a:hover{border-color:var(--color-primary);background-color:var(--color-light-gray);text-decoration:none;}.pagination .active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-white);}.testimonial{background-color:var(--color-white);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border-left:4px solid var(--color-primary);}.testimonial-text{font-style:italic;margin-bottom:var(--spacing-md);color:var(--color-dark-gray);}.testimonial-author{display:flex;align-items:center;gap:var(--spacing-md);}.testimonial-avatar{width:50px;height:50px;border-radius:50%;background-color:var(--color-light-gray);}.testimonial-author-name{font-weight:var(--font-weight-semibold);color:var(--color-black);}.testimonial-author-title{font-size:var(--font-size-sm);color:var(--color-gray);}
@media (max-width:1024px){:root{--font-size-5xl:2.5rem;--font-size-4xl:2rem;--font-size-3xl:1.75rem;}.hero-title{font-size:var(--font-size-4xl);}.products-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));}.footer-content{grid-template-columns:repeat(2,1fr);}}@media (max-width:768px){:root{--font-size-5xl:2rem;--font-size-4xl:1.75rem;--font-size-3xl:1.5rem;--spacing-4xl:3rem;--spacing-3xl:2rem;}.header-container{flex-wrap:wrap;}.site-name{font-size:var(--font-size-xl);}.mobile-menu-toggle{display:block;}.primary-menu{display:none;flex-direction:column;width:100%;padding:var(--spacing-md) 0;}.primary-menu.active{display:flex;}.primary-menu ul{flex-direction:column;width:100%;gap:var(--spacing-xs);}.primary-menu li{width:100%;}.primary-menu a{display:block;width:100%;padding:var(--spacing-md);}.hero-section{padding:var(--spacing-3xl) 0;}.hero-title{font-size:var(--font-size-3xl);}.hero-subtitle{font-size:var(--font-size-base);}.hero-cta{flex-direction:column;}.hero-cta .btn{width:100%;}.products-grid{grid-template-columns:1fr;}.pricing-grid{grid-template-columns:1fr;}.pricing-card.featured{transform:scale(1);}.pricing-card:hover{transform:scale(1.02);}.form-row{grid-template-columns:1fr;}.footer-content{grid-template-columns:1fr;}.btn{width:100%;text-align:center;}:root{--container-padding:var(--spacing-md);}}@media (max-width:480px){:root{--font-size-5xl:1.75rem;--font-size-4xl:1.5rem;--font-size-3xl:1.25rem;--spacing-2xl:2rem;}.site-logo img{height:40px;}.hero-section{padding:var(--spacing-2xl) 0;}.section-title{font-size:var(--font-size-3xl);}.product-card,.pricing-card,.contact-form{padding:var(--spacing-lg);}.tabs{overflow-x:auto;}.tab{white-space:nowrap;}}@media print{.site-header,.primary-menu,.hero-cta,.site-footer,.mobile-menu-toggle{display:none;}body{font-size:12pt;line-height:1.5;color:#000;}a{text-decoration:underline;}.container{max-width:100%;}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;}}@media (prefers-contrast:high){:root{--color-primary:#0000ff;--color-primary-light:#0000ff;}.btn-primary{border:3px solid #000;}a{text-decoration:underline;}}@media (prefers-color-scheme:dark){}@media (max-width:768px) and (orientation:landscape){.hero-section{padding:var(--spacing-2xl) 0;}.hero-title{font-size:var(--font-size-3xl);}}@media (min-width:1440px){:root{--container-max-width:1400px;}.hero-title{font-size:3.5rem;}.section-title{font-size:3rem;}}@media (min-width:1920px){:root{--container-max-width:1600px;--font-size-base:1.125rem;}}
