/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
:root{--color-primary:#4a5568;--color-primary-light:#718096;--color-accent:#5a7d8c;--color-accent-hover:#4a6d7c;--color-text:#4a5568;--color-text-light:#718096;--color-bg:#ffffff;--color-bg-alt:#f8f9fa;--color-bg-hero:#f1f4f7;--color-border:#e8ecf0;--color-warm:#8b7355;--font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif;--font-size-base:16px;--line-height:1.6;--max-width:100%;--spacing-unit:1rem;}*,*::before,*::after{box-sizing:border-box;}html{font-size:var(--font-size-base);scroll-behavior:smooth;}body{font-family:var(--font-family);line-height:var(--line-height);color:var(--color-text);background:var(--color-bg);margin:0;padding:0;-webkit-font-smoothing:antialiased;}h1,h2,h3,h4,h5,h6{color:var(--color-primary);font-weight:600;line-height:1.3;margin:0 0 0.75rem 0;}h1{font-size:2rem;}h2{font-size:1.5rem;}h3{font-size:1.25rem;}p{margin:0 0 1rem 0;}a{color:var(--color-accent);text-decoration:none;transition:color 0.2s ease;}a:hover{color:var(--color-accent-hover);}.visually-hidden,.skip-link,a[href="#main-content"],.skip-to-main-content,.element-invisible{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important;}.skip-link:focus,a[href="#main-content"]:focus{position:fixed !important;top:10px;left:10px;width:auto !important;height:auto !important;padding:0.5rem 1rem !important;margin:0 !important;overflow:visible !important;clip:auto !important;background:var(--color-bg);color:var(--color-text);z-index:10000;border-radius:4px;box-shadow:0 2px 10px rgba(0,0,0,0.1);}.region-nav-branding,.region-nav-main,.region-nav-additional,.navbar,.site-branding,#block-dgc-theme-main-menu,#block-dgc-theme-site-branding,.breadcrumb,.region-breadcrumb,.tabs,.block-local-tasks-block,header.header,.region-header{display:none !important;}body:not(.user-logged-in) .contextual,body:not(.user-logged-in) .tabs{display:none !important;}.home-button{position:fixed;top:0.5rem;left:0.5rem;z-index:1000;font-size:0.75rem;font-weight:500;color:var(--color-text-light);background:rgba(255,255,255,0.95);padding:0.3rem 0.6rem;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,0.1);transition:all 0.2s ease;text-decoration:none;}.home-button:hover{color:var(--color-text);box-shadow:0 2px 6px rgba(0,0,0,0.15);}.hero{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:2.5rem 2rem 0.5rem;background:var(--color-bg-hero);color:var(--color-text);width:100%;}.hero h1{color:var(--color-primary);font-size:2rem;font-weight:600;margin-bottom:0.5rem;letter-spacing:-0.02em;display:flex;align-items:center;justify-content:center;gap:0.5rem;}.hero .logo-inline{display:inline-flex;align-items:center;}.hero .logo-inline svg{vertical-align:middle;}.hero .tagline{font-size:1rem;color:var(--color-text-light);max-width:450px;margin:0 auto;line-height:1.45;}.hero .cta-button{display:inline-block;background:var(--color-accent);color:#fff;padding:0.5rem 1.25rem;border-radius:4px;font-weight:500;font-size:0.85rem;transition:all 0.2s ease;}.hero .cta-button:hover{background:var(--color-accent-hover);color:#fff;}.cards-section{padding:0.75rem 2rem 2rem;background:var(--color-bg);width:100%;}.cards-container{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;}.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:0.75rem 1rem 1rem;text-align:center;transition:all 0.2s ease;display:flex;flex-direction:column;}.card:hover{box-shadow:0 4px 12px rgba(0,0,0,0.06);}.card-drupal:hover{border-color:#0678be;}.card-ai:hover{border-color:#0891b2;}.card-contact:hover{border-color:#7c3aed;}.card-icon{width:40px;height:40px;margin:0 auto 0.75rem;background:var(--color-bg-alt);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:var(--color-accent);}.card h3{margin-bottom:0.35rem;font-size:1rem;font-weight:600;}.card p{color:var(--color-text-light);margin-bottom:0.75rem;font-size:0.8rem;line-height:1.4;}.card .card-cta{display:inline-block;padding:0.4rem 0.9rem;border-radius:4px;font-weight:500;font-size:0.75rem;color:#fff;transition:all 0.2s ease;margin-top:auto;align-self:center;}.card .card-cta:hover{color:#fff;transform:translateY(-1px);box-shadow:0 2px 6px rgba(0,0,0,0.15);}.card-drupal .card-cta{background:#0678be;}.card-drupal .card-cta:hover{background:#055a8f;}.card-ai .card-cta{background:#0891b2;}.card-ai .card-cta:hover{background:#0e7490;}.card-contact .card-cta{background:#7c3aed;}.card-contact .card-cta:hover{background:#6d28d9;}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:1000;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;transition:all 0.2s ease;}.modal-overlay.active{opacity:1;visibility:visible;}.modal{background:var(--color-bg);border-radius:8px;padding:2rem;max-width:450px;width:90%;max-height:80vh;overflow-y:auto;position:relative;transform:translateY(-20px);transition:transform 0.2s ease;}.modal-overlay.active .modal{transform:translateY(0);}.modal-close{position:absolute;top:0.75rem;right:0.75rem;width:28px;height:28px;border:none;background:var(--color-bg-alt);border-radius:4px;cursor:pointer;font-size:1.25rem;line-height:1;color:var(--color-text-light);transition:all 0.2s ease;}.modal-close:hover{background:var(--color-border);color:var(--color-text);}.modal h2{margin-top:0;margin-bottom:1rem;font-size:1.25rem;}.modal p{font-size:0.9rem;margin-bottom:0.75rem;}.modal ul{padding-left:1.25rem;margin:0 0 1rem 0;}.modal li{font-size:0.9rem;margin-bottom:0.5rem;}.site-footer,footer,.region-footer{display:none !important;}.content-wrapper{max-width:800px;margin:0 auto;padding:2rem 1.5rem;}.path-frontpage .page-title,.path-frontpage .block-page-title-block,.path-frontpage h1.page-title{display:none !important;}.path-frontpage .region-content,.path-frontpage main,.path-frontpage .main-content{padding:0 !important;margin:0 !important;}.path-frontpage .node__content{max-width:100%;margin:0;padding:0;}@media (max-width:800px){.cards-container{grid-template-columns:repeat(3,1fr);gap:0.75rem;}.card{padding:1rem 0.75rem;}.card p{font-size:0.75rem;}}@media (max-width:600px){.hero{padding:2rem 1rem 1.5rem;}.hero h1{font-size:1.5rem;}.hero .tagline{font-size:0.9rem;}.cards-section{padding:1rem 1rem 1.5rem;}.cards-container{grid-template-columns:1fr;gap:0.5rem;max-width:320px;}.card{padding:1rem;}.home-button{top:0.5rem;left:0.5rem;font-size:0.7rem;padding:0.3rem 0.5rem;}}body:not(.path-frontpage) main{max-width:700px;margin:0 auto;padding:2rem 1.5rem;}body:not(.path-frontpage) .block-page-title-block{margin-bottom:1rem;}body:not(.path-frontpage) .block-page-title-block h1{margin:0;}.node__content{padding:0;}.node__content h2{margin-top:2rem;}.node__content ul{padding-left:1.25rem;}.node__content li{margin-bottom:0.5rem;}.node__content a.button,a.btn{display:inline-block;background:var(--color-accent);color:#fff !important;padding:0.6rem 1.25rem;border-radius:4px;font-weight:500;font-size:0.9rem;transition:all 0.2s ease;}.node__content a.button:hover,a.btn:hover{background:var(--color-accent-hover);}
