:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:#fff;overflow-x:hidden;max-width:100vw}html{overflow-x:hidden;max-width:100vw}#root{background-color:#fff;min-height:100vh;overflow-x:hidden;max-width:100vw}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.home{width:100%;overflow-x:hidden;max-width:100%}@font-face{font-family:Gideon Roman;src:url(/assets/GideonRoman-Regular-DEC3BPTs.ttf) format("truetype");font-weight:400;font-style:normal}.carousel-container{margin-top:10px;width:100%;position:relative;overflow:hidden}.carousel-wrapper{position:relative;width:100%;height:300px;overflow:hidden}.carousel-slides{display:flex;width:100%;height:100%;transition:transform .5s cubic-bezier(.4,0,.2,1);will-change:transform}.carousel-slide{position:relative;min-width:100%;width:100%;height:100%;flex-shrink:0;flex-grow:0;overflow:hidden}.carousel-media{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.carousel-content{position:absolute;bottom:0;right:0;width:100%;padding:1rem;text-align:right;background:linear-gradient(to top,rgba(0,0,0,.7) 0%,transparent 100%);pointer-events:none}.carousel-text{max-width:80%;margin-left:auto;pointer-events:auto}.carousel-text h2{color:#fff;font-size:1.5rem;margin:0 0 .5rem;font-weight:600}.carousel-text p{color:#fff;font-size:.9rem;margin:0 0 1rem;opacity:.9}.carousel-button{background-color:#fff;color:#000;border:none;padding:.6rem 1.2rem;border-radius:25px;font-size:.9rem;font-weight:500;cursor:pointer}.carousel-button:hover{background-color:#f0f0f0;transform:scale(1.05)}.carousel-button:active{transform:scale(.98)}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background-color:transparent;border:none;width:35px;height:35px;font-size:2rem;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease;color:#fff;font-weight:700;line-height:1;padding:0;user-select:none;-webkit-user-select:none}.carousel-arrow:active{opacity:.6}.carousel-arrow-left{left:10px}.carousel-arrow-right{right:10px}.carousel-dots{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:.5rem;z-index:10}.carousel-dot{width:10px;height:10px;border-radius:50%;border:2px solid #ffffff;background-color:transparent;cursor:pointer;transition:background-color .3s ease;padding:0}.carousel-dot.active{background-color:#fff}@media(min-width:768px){.carousel-wrapper{height:450px}.carousel-text h2{font-size:2rem}.carousel-text p{font-size:1rem}.carousel-button{padding:.75rem 1.5rem;font-size:1rem}.carousel-content{padding:2rem}.carousel-arrow{width:45px;height:45px;font-size:2.5rem}}@media(min-width:1024px){.carousel-wrapper{height:600px}.carousel-text h2{font-size:2.5rem}.carousel-text p{font-size:1.1rem}.carousel-content{padding:2.5rem}.carousel-text{max-width:60%}}.fovea-section{margin-top:2px;width:100%;padding:1rem 0;overflow-x:hidden}.fovea-heading{font-family:Gideon Roman,sans-serif;margin:0 0 1rem 40px;font-size:2rem;font-weight:600;color:#000;text-align:left}.fovea-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:0;width:100%;position:relative;align-items:start;max-width:100%;overflow-x:hidden;padding:0 20px;box-sizing:border-box}.fovea-image-container{width:100%;padding:0;max-width:100%;overflow:hidden;margin-right:10px;display:flex;justify-content:center;align-items:center;height:100%}.fovea-image{width:100%;max-width:100%;aspect-ratio:3 / 4;object-fit:cover;display:block}.fovea-divider-line-container{display:flex;justify-content:center;align-items:flex-start;width:2px;height:100%;position:relative;margin:0 10px;min-height:200px;flex-shrink:0}.fovea-divider-line{width:2px;background-color:#000;transition:height .1s ease-out;transform-origin:top;position:absolute;top:0;left:50%;transform:translate(-50%)}.fovea-text-container{width:100%;padding-right:10px;max-width:100%;overflow:hidden;margin-left:10px;display:flex;justify-content:center;align-items:flex-start;height:100%;box-sizing:border-box}.fovea-text{margin:0;font-size:.7rem;line-height:1.8;color:#000;text-align:left;width:100%;max-width:100%;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;box-sizing:border-box}@media(min-width:768px){.fovea-section{padding:2rem 0}.fovea-heading{font-family:Gideon Roman,sans-serif;font-weight:600;margin:0 0 2rem 80px;font-size:3rem}.fovea-grid{grid-template-columns:1fr auto 1fr;gap:0;padding:0 20px;align-items:start;box-sizing:border-box}.fovea-image-container{padding:0;margin-right:40px}.fovea-image{width:100%}.fovea-divider-line-container{margin:0 10px;min-height:300px}.fovea-text-container{margin-right:10px;margin-left:10px;align-items:flex-start;box-sizing:border-box}.fovea-text{font-size:1.4rem;line-height:1.8;max-width:100%;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;box-sizing:border-box}}@media(min-width:1024px){.fovea-heading{font-family:Gideon Roman,sans-serif;font-size:4rem;margin:0 0 2rem 250px}.fovea-grid{padding:0 20px;align-items:center;box-sizing:border-box}.fovea-image-container{max-width:50%;padding:0;margin:0 250px 0 auto;height:100%;display:flex;justify-content:center;align-items:center}.fovea-text-container{margin-left:10px;margin-right:10px;height:100%;align-items:center;justify-content:center;box-sizing:border-box}.fovea-text{font-size:1.6rem;line-height:2.2;max-width:100%;word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;box-sizing:border-box}}.contact-page{max-width:720px;margin:0 auto;padding:2rem 1rem;color:#fff}.contact-title{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:1.25rem;text-align:left}.contact-form{display:grid;gap:1rem;background:#0006;border:1px solid #222;border-radius:12px;padding:1.25rem}.form-row{display:grid;gap:.5rem}.form-label{font-weight:600}.form-input,.form-textarea{width:100%;padding:.75rem .9rem;border:1px solid #444;border-radius:8px;background:#111;color:#fff;outline:none}.form-input::placeholder,.form-textarea::placeholder{color:#888}.form-input:focus,.form-textarea:focus{border-color:#2e3fdd;box-shadow:0 0 0 3px #4f46e533}.form-submit{justify-self:start;padding:.75rem 1.2rem;border:none;border-radius:8px;background:#2e3fdd;color:#fff;cursor:pointer;transition:background .2s ease}.form-submit:hover{background:#2e3fdd}.form-status{margin:.25rem 0 0;font-size:.95rem}.form-status.success{color:#34d399}.form-status.error{color:#f87171}.logo-container{display:flex;flex-direction:column;align-items:center;margin-top:20px;width:100%}.logo{width:auto;height:100px}.tagline{margin-top:5px;margin-bottom:0;color:#000;font-size:1rem}nav{width:100%;padding:1rem 0;background-color:transparent;position:relative}nav .nav-inner{max-width:600px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;position:relative;padding:0 1rem;gap:.5rem}.nav-indicator{position:absolute;top:50%;transform:translateY(-50%);height:32px;background-color:#8080804d;border-radius:20px;transition:left .3s ease,width .3s ease,opacity .3s ease;z-index:0;pointer-events:none;opacity:0}.nav-link{position:relative;z-index:1;padding:8px 16px;font-size:.9rem;color:#000;text-decoration:none;border-radius:20px;text-align:center;flex:1;display:flex;justify-content:center;align-items:center;cursor:pointer}.nav-link.active{color:#000}@media(min-width:768px){.logo{height:60px}nav .nav-inner{max-width:700px;gap:1rem}.nav-link{font-size:1rem;padding:10px 20px}.nav-indicator{height:36px}}@media(min-width:1024px){.logo{height:70px}nav .nav-inner{max-width:800px}.nav-link{font-size:1.1rem;padding:12px 24px}}
