:root{--deep:#0a2e25;--deep-mid:#0d4536;--deep-light:#0f6e56;--accent:#0f6e56;--accent-light:#2f9678;--accent-pale:#e4f0ec;--teal:#dd6b3e;--teal-text:#b4561f;--warm:#dd6b3e;--surface:#f6f1e9;--white:#fffdf8;--text:#2e2a26;--text-secondary:#6b645c;--border:#e8e1d6;--card-shadow:0 4px 24px #2e2a2614;--radius:12px;--max-width:1120px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{color:var(--text);background-color:var(--white);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,sans-serif;line-height:1.6}h1,h2,h3,h4{font-family:Playfair Display,serif;line-height:1.2}a{color:var(--accent);text-decoration:none}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.navbar{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#fffdf8eb;padding:.85rem 0;transition:background-color .3s,box-shadow .3s;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background-color:#fffdf8f7;box-shadow:0 1px 12px #2e2a2612}.navbar .container{justify-content:space-between;align-items:center;display:flex}.navbar-brand{align-items:center;gap:.5rem;display:flex}.navbar-brand img{width:auto;height:68px;display:block}.nav-links{align-items:center;gap:.5rem;list-style:none;display:flex}.nav-links a{color:var(--text-secondary);border-radius:8px;padding:.5rem .75rem;font-size:.9rem;font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--text)}.nav-cta{background-color:var(--deep);color:var(--white)!important;border-radius:8px!important;padding:.5rem 1.25rem!important;font-weight:600!important;transition:background-color .2s!important}.nav-cta:hover{background-color:var(--deep-mid)!important}.menu-toggle{color:var(--text);cursor:pointer;background:0 0;border:none;padding:.5rem;display:none}@media (width<=768px){.menu-toggle{display:block}.nav-links{background:var(--white);flex-direction:column;padding:1rem 1.5rem;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 8px 24px #2e2a261a}.nav-links.open{display:flex}}.hero{text-align:center;background:linear-gradient(160deg, var(--deep) 0%, var(--deep-mid) 50%, var(--deep-light) 100%);color:var(--white);padding:10rem 0 6rem;position:relative;overflow:hidden}.hero:before{content:"";background:radial-gradient(circle,#dd6b3e2e 0%,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute;top:-50%;right:-20%}.hero:after{content:"";background:radial-gradient(circle,#2f967838 0%,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;bottom:-30%;left:-10%}.hero .container{z-index:1;position:relative}.hero-label{color:#f7d9c9;background:#dd6b3e29;border:1px solid #dd6b3e52;border-radius:999px;align-items:center;gap:.5rem;margin-bottom:2rem;padding:.4rem 1rem;font-size:.85rem;font-weight:500;display:inline-flex}.hero h1{color:var(--white);letter-spacing:-.02em;max-width:750px;margin:0 auto 1.5rem;font-size:3.5rem}.hero-accent{background:linear-gradient(135deg, var(--accent-light), var(--teal));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero p{color:#fffdf8b8;max-width:560px;margin:0 auto 2.5rem;font-size:1.2rem;line-height:1.7}.hero-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.btn{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:.5rem;padding:.85rem 1.75rem;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .2s;display:inline-flex}.btn:active{transform:scale(.98)}.btn-primary{background:var(--warm);color:#fff;box-shadow:0 4px 16px #dd6b3e52}.btn-primary:hover{box-shadow:0 6px 24px #dd6b3e73}.btn-ghost{color:var(--white);background:#ffffff14;border:1px solid #ffffff40}.btn-ghost:hover{background:#ffffff24}.btn-dark{background:var(--deep);color:var(--white)}.btn-dark:hover{background:var(--deep-mid)}.section{padding:5rem 0}.section-alt{background:var(--surface)}.section-label{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:.4rem;margin-bottom:.75rem;font-size:.85rem;font-weight:600;display:inline-flex}.section-title{color:var(--text);margin-bottom:1rem;font-size:2.25rem}.section-subtitle{color:var(--text-secondary);max-width:600px;font-size:1.05rem;line-height:1.7}.section-header{text-align:center;margin-bottom:3rem}.section-header .section-subtitle{margin:0 auto}.mission-grid{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.mission-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--white);padding:2.5rem}.mission-card h3{color:var(--text);margin-bottom:.75rem;font-size:1.35rem}.mission-card p{color:var(--text-secondary);font-size:1.05rem;line-height:1.7}.mission-card .card-icon{border-radius:10px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:1.25rem;display:flex}.icon-blue{background:var(--accent-pale);color:var(--accent)}.icon-teal{color:var(--teal-text);background:#fbe9e0}.values-grid{grid-template-columns:repeat(5,1fr);gap:1.5rem;display:grid}.value-card{text-align:center;border-radius:var(--radius);border:1px solid var(--border);background:var(--white);padding:2rem 1rem;transition:box-shadow .2s}.value-card:hover{box-shadow:var(--card-shadow)}.value-card .value-icon{background:var(--accent-pale);width:52px;height:52px;color:var(--accent);border-radius:12px;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.value-card h4{color:var(--text);font-family:Inter,sans-serif;font-size:.95rem;font-weight:600}.services-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.service-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--white);padding:2rem;transition:box-shadow .2s}.service-card:hover{box-shadow:var(--card-shadow)}.service-card .service-icon{background:var(--accent-pale);width:48px;height:48px;color:var(--accent);border-radius:10px;justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.service-card h3{color:var(--text);margin-bottom:.5rem;font-family:Inter,sans-serif;font-size:1.1rem;font-weight:600}.service-card p{color:var(--text-secondary);font-size:.925rem;line-height:1.6}.portfolio-card{border-radius:var(--radius);border:1px solid var(--border);background:var(--white);grid-template-columns:1fr 1fr;align-items:center;gap:3rem;padding:3rem;display:grid}.portfolio-info h3{color:var(--text);margin-bottom:.5rem;font-size:1.5rem}.portfolio-info .portfolio-tag{color:var(--teal-text);background:#fbe9e0;border-radius:999px;margin-bottom:1rem;padding:.25rem .75rem;font-family:Inter,sans-serif;font-size:.8rem;font-weight:600;display:inline-block}.portfolio-info p{color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.7}.portfolio-tech{flex-wrap:wrap;gap:.5rem;display:flex}.portfolio-tech span{color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:.3rem .75rem;font-size:.8rem;font-weight:500}.portfolio-preview{background:linear-gradient(135deg, var(--deep) 0%, var(--deep-mid) 100%);border-radius:var(--radius);justify-content:center;align-items:center;min-height:250px;padding:2rem;display:flex}.portfolio-preview-inner{text-align:center;color:var(--white)}.portfolio-preview-inner .preview-icon{color:var(--warm);margin-bottom:.75rem}.portfolio-preview-inner p{color:#fffdf8a6;font-size:.9rem}.cta-section{text-align:center;padding:5rem 0}.cta-card{background:linear-gradient(135deg, var(--deep) 0%, var(--deep-mid) 100%);color:var(--white);border-radius:var(--radius);padding:4rem 2rem;position:relative;overflow:hidden}.cta-card:before{content:"";background:radial-gradient(circle,#dd6b3e29 0%,#0000 70%);border-radius:50%;width:400px;height:400px;position:absolute;top:-50%;right:-20%}.cta-card h2{color:var(--white);margin-bottom:1rem;font-size:2rem;position:relative}.cta-card p{color:#fffdf8b8;max-width:500px;margin:0 auto 2rem;font-size:1.1rem;position:relative}.cta-card .btn{position:relative}.footer{background:var(--deep);color:#fffdf880;padding:3rem 0 2rem;font-size:.875rem}.footer-grid{grid-template-columns:2fr 1fr 1fr;gap:3rem;margin-bottom:2.5rem;display:grid}.footer-brand img{width:auto;height:72px;margin-bottom:1rem;display:block}.footer-desc{color:#fffdf880;max-width:320px;line-height:1.7}.footer h4{color:#fffdf8d9;text-transform:uppercase;letter-spacing:.06em;margin-bottom:1rem;font-family:Inter,sans-serif;font-size:.85rem;font-weight:600}.footer ul{list-style:none}.footer ul li{margin-bottom:.5rem}.footer ul a{color:#fffdf880;font-size:.9rem;transition:color .2s}.footer ul a:hover{color:var(--white)}.footer-bottom{border-top:1px solid #fffdf81a;justify-content:space-between;align-items:center;padding-top:1.5rem;display:flex}.footer-bottom p{color:#fffdf866}@media (width<=768px){.hero{padding:8rem 0 4rem}.hero h1{font-size:2.25rem}.hero p{font-size:1.05rem}.mission-grid{grid-template-columns:1fr}.values-grid{grid-template-columns:repeat(2,1fr)}.services-grid,.portfolio-card{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-bottom{text-align:center;flex-direction:column;gap:.5rem}.section{padding:3.5rem 0}.section-title{font-size:1.75rem}}.portfolio-page{padding-top:4rem}.portfolio-list{flex-direction:column;gap:2rem;display:flex}.portfolio-viewall{text-align:center;margin-top:2.5rem}.portfolio-viewall a{color:var(--accent);align-items:center;gap:.4rem;font-size:.95rem;font-weight:600;transition:gap .15s;display:inline-flex}.portfolio-viewall a:hover{gap:.65rem}.portfolio-cta{text-align:center;border-top:1px solid var(--border);margin-top:3rem;padding-top:2.5rem}.portfolio-cta p{color:var(--text-secondary);margin-bottom:1.25rem;font-size:1.05rem}.portfolio-cta .btn{display:inline-flex}.contact-page{background:var(--surface);min-height:100vh;padding:9rem 0 5rem}.contact-wrap{max-width:640px}.contact-back{color:var(--text-secondary);align-items:center;gap:.35rem;margin-bottom:1.5rem;font-size:.9rem;font-weight:500;display:inline-flex}.contact-back:hover{color:var(--accent)}.contact-header{margin-bottom:1.75rem}.contact-header h1{color:var(--text);margin-bottom:.75rem;font-size:2.5rem}.contact-header p{color:var(--text-secondary);font-size:1.05rem;line-height:1.7}.contact-form{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:1.25rem;padding:2rem;display:flex}.contact-form label{color:var(--text);flex-direction:column;gap:.4rem;font-size:.9rem;font-weight:600;display:flex}.contact-form .optional{color:var(--text-secondary);font-weight:400}.contact-form input,.contact-form textarea{color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.7rem .85rem;font-family:Inter,sans-serif;font-size:.95rem;font-weight:400;transition:border-color .15s,box-shadow .15s}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#a8a096}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #0f6e5624}.contact-form textarea{resize:vertical;min-height:120px}.contact-form button{align-self:flex-start;margin-top:.25rem}.contact-or{color:var(--text-secondary);align-items:center;gap:.4rem;margin-top:.25rem;font-size:.85rem;font-weight:400;display:flex}.contact-error{color:#b4561f;background:#fbe9e0;border-radius:8px;align-items:center;gap:.4rem;padding:.6rem .8rem;font-size:.85rem;font-weight:400;display:flex}.contact-error a{color:#b4561f;text-decoration:underline}.contact-thanks{text-align:center;background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:3rem 2rem}.contact-thanks svg{color:var(--accent);margin-bottom:1rem}.contact-thanks h1{color:var(--text);margin-bottom:.75rem;font-size:2rem}.contact-thanks p{color:var(--text-secondary);max-width:460px;margin:0 auto 1rem;line-height:1.7}.contact-thanks-alt{font-size:.9rem}.contact-thanks .btn{margin-top:1rem}
