:root{--color-background:#01A4DE;--color-text:#fff;--color-highlight:#FFD600}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@font-face{font-family:noto sans;src:url(/fonts/NotoSans-Regular.woff2)format('woff2');font-weight:400;font-style:normal;font-display:swap}body,html{width:100%;max-width:100%;overflow-x:hidden;scroll-behavior:smooth}body{color:var(--color-text,#252525);font-family:noto sans,sans-serif;font-size:18px;line-height:1.5;margin:0;background-color:var(--color-background,#181818)}header{margin-bottom:0}footer{margin-top:0}h1{font-style:bold;font-size:72px}h3{color:#f9e65e;font-style:bold}ul{margin:0}.center-title{text-align:center;margin:0;padding-top:0}.content-padding{max-width:1200px;margin:auto;display:flex;flex-direction:column;justify-content:center;padding:80px 20px}.animate-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .5s ease,transform .5s ease;will-change:opacity,transform}.animate-on-scroll.no-animation{transition:none}.animate-on-scroll.in-view{opacity:1;transform:translateY(0)}.scroll-to{cursor:pointer}@media(max-width:768px){.center-title{padding-top:20px}.content-padding{padding:80px 20px}.animate-on-scroll{opacity:1;transform:none;transition:none}}.header-section{display:flex;width:100%;justify-content:space-between;align-items:center;height:64px;padding:0 20px;box-sizing:border-box;position:absolute;top:0;left:0;z-index:1000;background-color:#333}.header-section-home{display:flex;width:100%;justify-content:space-between;align-items:center;height:64px;padding:0 20px;box-sizing:border-box;position:absolute;top:0;left:0;z-index:1000}.logo-section{display:flex;align-items:center}.logo-section .logo-link{text-decoration:none}.logo-section .logo-img{height:auto;max-height:60px;width:auto;display:block}.site-nav{display:flex;align-items:center}.site-nav .nav-list{display:flex;list-style:none;padding:0;margin:0}.nav-item{margin-right:20px}.nav-item:last-child{margin-right:0}.nav-link{color:#fffbcd;text-decoration:none;font-size:22px;text-shadow:2px 1px 2px #000;transition:color .3s}.nav-link:hover{text-decoration:underline;color:gold}.menu-toggle{display:none;font-size:24px;background:0 0;border:none;color:#fff;cursor:pointer}@media screen and (max-width:768px){.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:40px;left:0;width:100%;padding:20px 0;z-index:999}.site-nav.open{display:block}.site-header{flex-direction:row;align-items:center}.nav-list{flex-direction:column;align-items:flex-end;padding:0;margin:0}.nav-item{margin-bottom:10px;margin-left:0;margin-right:0;padding-right:20px}.nav-item:last-child{margin-bottom:0}}.site-footer{position:relative;background-color:#333;color:#fff;padding-top:125px;font-size:16px}.footer-logo-container{position:absolute;left:50%;top:0;transform:translateX(-50%)translateY(-50%);z-index:2}.footer-logo{width:250px;height:auto}.footer-container{max-width:800px;margin:0 auto}.footer-content{display:flex;flex-wrap:wrap;justify-content:space-between}.footer-section{flex-basis:calc(33% - 20px);margin-bottom:20px}.footer-section p{line-height:1.2}.footer-section ul{list-style:none;padding:0;margin:0}.footer-section ul li{margin-bottom:5px}.footer-section a{color:#fff;text-decoration:none}.footer-section a:hover{text-decoration:underline;color:gold}.footer-section a:focus{outline:2px dashed gold;outline-offset:4px}.social-icons{display:flex;gap:10px}.social-icons a{display:inline-block}.social-icons svg{display:block;width:24px;height:24px;fill:#fff}.social-icons a:hover svg{fill:gold}.copyright{text-align:left;margin-top:0;padding-top:20px;padding-bottom:20px;border-top:1px solid #fff}@media screen and (max-width:768px){.footer-content{flex-direction:column;align-items:center}.footer-section{margin-bottom:30px}.footer-container{padding-bottom:20px}.copyright{text-align:center;padding:20px}}.cap-showcase{margin:0 auto;padding:0}.cap-content{max-width:1200px;margin:0 auto;padding:0}.cap-header{display:flex;align-items:center;margin-left:60px;color:#f9e65c}.cap-title{display:flex;flex-direction:column}.cap-branding h2{font-size:1.6rem;margin:0;display:flex;align-items:center}.cap-branding h2:hover{cursor:default}.cap-branding a{font-size:1rem;color:#fffbcd;text-decoration:none}.cap-branding a:hover{text-decoration:underline}.cap-branding{text-align:left;max-width:1200px;margin:0 auto}.cap-branding a.external-link{display:flex;align-items:center;gap:4px;transition:all .2s ease;font-weight:500;letter-spacing:.02em}.cap-branding a.external-link svg{margin-left:2px;opacity:.8;transition:transform .2s ease}.cap-branding a.external-link:hover{color:#fff;text-decoration:none}.cap-branding a.external-link:hover svg{transform:translateX(1px)translateY(-1px);opacity:1}.cap-description{font-size:1.2rem}.solitaire-games{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));row-gap:40px;column-gap:80px;margin:30px 60px;padding:10px 0}.game-card{position:relative;padding:10px 40px 20px 60px;margin:0;background:linear-gradient(90deg,#F9E65C,#FCF5C0);color:#246885;text-align:left;box-shadow:10px 10px rgba(0,0,0,.1);transition:all .3s ease;text-decoration:none!important}.game-card::before{content:'';position:absolute;top:0;left:0;width:80px;height:80px;background-color:#f9e65c;border-radius:2px;transform-origin:center;transform:translate(-50px,-10px)rotate(-20deg);z-index:1;box-shadow:10px 10px rgba(0,0,0,.1);transition:all .3s ease}.game-card:hover::before{transform:translate(-48px,-12px)rotate(-18deg)scale(1.05);box-shadow:10px 10px rgba(0,0,0,.15)}.game-card::after{content:'';position:absolute;top:10px;left:5px;width:64px;height:64px;background-image:var(--card-icon);background-size:contain;background-repeat:no-repeat;background-position:50%;transform:translate(-50px,-10px);z-index:2;transition:all .3s ease}.game-card:hover::after{transform:translate(-48px,-12px)scale(1.05)}.icon-background{position:absolute;top:0;left:0;width:60px;height:60px;background-color:#0092c9;border-radius:2px;transform:translate(-50px,-10px)rotate(-20deg);border:10px solid #f9e65c;z-index:2;transition:all .3s ease}.game-card:hover .icon-background{transform:translate(-48px,-12px)rotate(-18deg)scale(1.05);background-color:#01a4de}.game-card:hover{transform:translateY(-5px);box-shadow:12px 12px rgba(0,0,0,.15);text-decoration:none!important}.game-card-content{color:#246885}.game-card h3{font-size:1.3rem;color:#01a4de;margin-bottom:12px;transition:color .3s ease}.game-card:hover h3{color:#0092c9}.game-card-content p{line-height:1.4;margin:0 0 15px;transition:color .3s ease}.game-card h3,.game-card p{text-decoration:none!important}.game-card:hover h3,.game-card:hover p{text-decoration:none!important}.game-card-image{width:calc(100% + 40px + 60px);height:auto;display:block;margin:15px 0 -20px -60px}@media(max-width:768px){.cap-branding h2{font-size:1.5rem}.cap-description{font-size:1rem}.solitaire-games{grid-template-columns:1fr}.game-card-image{margin-top:10px}}body,html{margin:0;padding:0;overflow-x:hidden}.parallax{position:relative;height:100vh;overflow:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-backface-visibility:hidden;backface-visibility:hidden}.layer{position:absolute;bottom:-5%;left:-5%;width:110%;height:110%;background-size:cover;background-repeat:no-repeat;background-position:50% 70%;transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);will-change:transform;transition:transform .5s cubic-bezier(.215,.61,.355,1)}.hero-logo{position:absolute;top:5%;left:52%;transform:translateX(-50%);z-index:1000;width:80%;max-width:650px;height:auto}.layer.layer-0{background-image:url(/layer_0.webp);z-index:1}.layer.layer-1{background-image:url(/layer_1.webp);z-index:2}.layer.layer-2{background-image:url(/layer_2.webp);z-index:3}.layer.layer-3{background-image:url(/layer_3.webp);z-index:4}.layer.layer-4{background-image:url(/layer_4.webp);z-index:5}.layer.layer-5{background-image:url(/layer_5.webp);z-index:6}@media(orientation:portrait){.layer{background-position:bottom}.hero-logo{top:16%}}.filler-content{height:60px;padding:20px}.site-header{top:0;left:0;width:100%;z-index:10;background:0 0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}100%{opacity:1;transform:translateY(0)}}.section-title{animation:fadeInUp 1s ease both}.contact{padding:20px;text-align:center;background:#f8f9fa;border-radius:24px;margin:20px}.contact-options{display:flex;flex-direction:column;gap:20px;max-width:400px;margin:20px auto}.contact-link{display:inline-flex;align-items:center;gap:12px;padding:16px 28px;background:#01a4de;border-radius:30px;text-decoration:none;color:#fff;font-weight:500;transition:all .2s ease}.contact-link:hover{background:#0193c8;transform:scale(1.02)}.contact-link .icon{color:#fff}.about-content,.contact-content{max-width:600px;margin:0 auto;padding-top:10px;padding-bottom:20px;padding-left:20px;padding-right:20px;line-height:1.6;font-size:1.2em}.about-content{max-width:1200px}.content-wrapper{padding:100px 20px}@media(max-width:768px){.contact-options{max-width:300px;font-size:.8em}.contact-link .icon{display:none}}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{margin-bottom:1.5rem;text-align:left}.form-label{display:block;font-weight:600;margin-bottom:.5rem;color:#fff;font-size:1rem}.form-input{width:94%;padding:.75rem 1rem;font-size:1rem;border:1px solid #ddd;border-radius:8px;background-color:#fff;transition:all .3s ease;box-shadow:0 2px 4px rgba(0,0,0,5%)}.form-input:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px rgba(50,164,9,.15)}.form-input::placeholder{color:#999}textarea.form-input{resize:vertical;min-height:120px}.submit-button{background-color:#f9e65e;color:#444;padding:1rem 2rem;border:none;border-radius:24px;cursor:pointer;font-size:1.1rem;font-weight:600;transition:all .3s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;width:100%;box-shadow:0 2px 4px rgba(0,0,0,.4)}.submit-button:hover{background-color:#ffe100;transform:translateY(-2px);box-shadow:0 4px 6px rgba(50,164,9,.3)}.submit-button:active{transform:translateY(0)}.button-content{display:flex;align-items:center;gap:.5rem}.button-icon{width:20px;height:20px;transition:transform .3s ease}.submit-button:hover .button-icon{transform:translateX(4px)translateY(-2px)}@media(max-width:768px){.contact-content{padding:1rem}.form-input{font-size:.9rem;padding:.7rem .9rem}.submit-button{font-size:1rem;padding:.9rem 1.8rem}}.form-input.error{border-color:#dc3545;box-shadow:0 0 0 3px rgba(220,53,69,.15)}.form-error-message{color:#dc3545;font-size:.875rem;margin-top:.25rem}@keyframes submitPulse{0%{transform:scale(1)}50%{transform:scale(1.02)}100%{transform:scale(1)}}.submit-button.submitting{animation:submitPulse 1.5s infinite;opacity:.8;cursor:wait}.success-message{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:1rem;background-color:#d4edda;color:#155724;border-radius:8px;font-weight:500;animation:fadeIn .3s ease-in-out}.success-icon{width:20px;height:20px;stroke:#155724}.error-message{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding:1rem;background-color:#f8d7da;color:#721c24;border-radius:8px;font-weight:500;animation:fadeIn .3s ease-in-out}.error-icon{width:20px;height:20px;stroke:#721c24;flex-shrink:0}@keyframes fadeIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.submit-button:disabled{background-color:#87c16e;cursor:default;transform:none!important;box-shadow:none!important}.section-divider{--divider-height:180px;position:absolute;height:var(--divider-height);top:0;left:0;right:0;transform:translateY(-50%)}.divider-content{width:100%;height:100%;background-image:url(/section_divider.webp);background-repeat:repeat-x;background-size:auto 100%;transform:translateZ(0);will-change:transform}.divider-image{width:100%;height:auto;display:block;object-fit:cover;max-height:190px;overflow:visible}section{position:relative;z-index:1}@media(max-width:768px){.section-divider{--divider-height:100px}}.section-title-wrapper{position:relative;z-index:3;text-align:left;padding-left:60px;transform:translateY(-150px)}.section-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.section-title-image{display:inline-block;max-width:300px;height:auto}@media(max-width:768px){.section-title-wrapper{padding-left:30px;transform:translateY(-85px)}.section-title-image{max-width:200px}}