:root{--cw-font-head:"Trebuchet MS",system-ui,sans-serif;--cw-font-body:system-ui,-apple-system,"Segoe UI",sans-serif}html[data-theme=light],html:not([data-theme]){--cw-bg:#fff;--cw-bg-soft:#f0f5f8;--cw-surface:#fff;--cw-text:#173245;--cw-muted:#4c6271;--cw-primary:#13344a;--cw-primary-hover:#21526f;--cw-accent:#17694f;--cw-accent-hover:#10523d;--cw-border:#cfdde4;--cw-ring:#17694f}html[data-theme=dark]{--cw-bg:#101e28;--cw-bg-soft:#162a38;--cw-surface:#1b303e;--cw-text:#eff6fa;--cw-muted:#b4c8d4;--cw-primary:#235b7a;--cw-primary-hover:#306d8e;--cw-accent:#17694f;--cw-accent-hover:#207e60;--cw-border:#40596a;--cw-ring:#8fd7bc}html[data-theme=chiloe]{--cw-bg:#fffdf8;--cw-bg-soft:#f0f2e9;--cw-surface:#fffefb;--cw-text:#244038;--cw-muted:#58675b;--cw-primary:#255b50;--cw-primary-hover:#19463d;--cw-accent:#17694f;--cw-accent-hover:#10523d;--cw-border:#d2ddce;--cw-ring:#17694f}.cw-public{background:var(--cw-bg);color:var(--cw-text);font-family:var(--cw-font-body);font-size:1rem;line-height:1.65}.cw-public h1,.cw-public h2,.cw-public h3,.cw-brand{font-family:var(--cw-font-head);letter-spacing:-.035em;line-height:1.12}.cw-public a{color:var(--cw-text);text-underline-offset:4px}.cw-public a:hover{color:var(--cw-muted)}.cw-muted{color:var(--cw-muted)!important}.cw-text{color:var(--cw-text)!important}.cw-bg-soft{background:var(--cw-bg-soft)}.cw-surface{background:var(--cw-surface)}.cw-header{background:var(--cw-bg);border-bottom:1px solid var(--cw-border)}.cw-header .navbar{min-height:84px}.cw-brand{align-items:center;gap:.8rem;font-size:1.55rem;font-weight:700;text-decoration:none;display:inline-flex}.cw-brand-mark{letter-spacing:-.1em;background:var(--cw-primary);color:#fff;border-radius:12px 12px 12px 0;padding:12px 10px;font-size:1.1rem}.cw-brand-mark span{color:#9be2c8;padding:0 3px}.cw-public .nav-link{color:var(--cw-muted);font-size:.95rem;font-weight:500}.cw-public .nav-link.active{color:var(--cw-text);text-underline-offset:7px;text-decoration:underline;text-decoration-thickness:2px}.cw-public .navbar-toggler{padding:10px}.cw-public .btn{border-radius:7px;padding:.8rem 1.3rem;font-weight:600;line-height:1.4}.cw-public .btn-sm{padding:.55rem .8rem}.cw-public .cw-btn-primary{background:var(--cw-primary);border:1px solid var(--cw-primary);color:#fff}.cw-public .cw-btn-primary:hover{background:var(--cw-primary-hover);color:#fff}.cw-public .cw-btn-accent{background:var(--cw-accent);border:1px solid var(--cw-accent);color:#fff}.cw-public .cw-btn-accent:hover{background:var(--cw-accent-hover);color:#fff}.cw-public .cw-btn-outline{border:1px solid var(--cw-border);color:var(--cw-text);background:var(--cw-surface)}.cw-public .cw-btn-outline:hover{background:var(--cw-bg-soft)}.cw-hero{padding:72px 0 64px}.cw-hero h1{max-width:11ch;margin-bottom:1.5rem;font-size:clamp(2.65rem,4.5vw,4.75rem);font-weight:700}.cw-hero .lead{max-width:43ch;font-size:1.12rem}.cw-location{color:var(--cw-muted);align-items:center;gap:.5rem;margin-bottom:1.6rem;font-size:.92rem;display:flex}.cw-location:before{content:"";background:var(--cw-accent);border-radius:50%;width:8px;height:8px}.cw-hero-note{color:var(--cw-muted);margin-top:1rem;font-size:.84rem}.cw-section{padding:72px 0}.cw-section h2{font-size:clamp(1.9rem,3vw,2.75rem);font-weight:700}.cw-measure{max-width:48ch}.cw-section-intro{max-width:52ch;margin-bottom:2.4rem}.cw-section-intro p{margin-top:1rem}.cw-flow{background:var(--cw-bg-soft);border:1px solid var(--cw-border);border-radius:24px 24px 5px;padding:2rem;position:relative}.cw-flow-title{border-bottom:1px solid var(--cw-border);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1.4rem;font-size:1rem;font-weight:600;display:flex}.cw-flow-title svg{width:36px;height:36px;color:var(--cw-accent)}.cw-flow-inputs{grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.8rem;display:grid}.cw-flow-node{background:var(--cw-surface);border:1px solid var(--cw-border);text-align:center;border-radius:10px;padding:1.2rem .8rem;font-weight:600}.cw-flow-node svg{width:27px;height:27px;color:var(--cw-accent);margin:0 auto .6rem;display:block}.cw-flow-connector{background:var(--cw-border);width:1px;height:33px;margin:auto}.cw-flow-center{background:var(--cw-primary);color:#fff;text-align:center;border-radius:10px;padding:1.3rem}.cw-flow-center strong{font-size:1.15rem;display:block}.cw-flow-center span{color:#dcebf1;font-size:.85rem}.cw-flow-output{border:1px solid var(--cw-border);text-align:center;background:var(--cw-surface);border-radius:10px;padding:1rem;font-size:.93rem}.cw-flow figcaption{color:var(--cw-muted);text-align:center;margin-top:1.3rem;font-size:.75rem}.cw-services{border-top:1px solid var(--cw-border);border-bottom:1px solid var(--cw-border)}.cw-service{height:100%;padding:1rem 1.6rem 1rem 0}.cw-service h3{margin-bottom:1rem;font-size:1.4rem;font-weight:700}.cw-service p{color:var(--cw-muted)}.cw-service-link{font-size:.9rem;font-weight:600}.cw-service-icon{width:40px;height:40px;color:var(--cw-accent);margin-bottom:1.4rem}.cw-step{border-top:2px solid var(--cw-border);padding-top:1.5rem}.cw-step-number{color:var(--cw-muted);margin-bottom:1rem;font-size:.85rem;display:block}.cw-step h3{font-size:1.25rem;font-weight:700}.cw-step p{color:var(--cw-muted)}.cw-card{background:var(--cw-surface);border:1px solid var(--cw-border);border-radius:12px}.cw-project-card{padding:2rem}.cw-project-card h3{font-size:1.4rem;font-weight:700}.cw-project-card p{white-space:pre-line;overflow-wrap:anywhere}.cw-cta{background:var(--cw-primary);color:#fff;border-radius:16px;justify-content:space-between;align-items:center;gap:2rem;padding:3rem;display:flex}.cw-cta h2{font-size:clamp(1.7rem,3vw,2.4rem)}.cw-cta p{color:#dcebf1;margin-bottom:0}.cw-cta .btn{color:#13344a;background:#fff;border:1px solid #fff;flex-shrink:0}.cw-cta .btn:hover{color:#13344a;background:#e4f0f5}.cw-page-heading{margin-bottom:1.4rem;font-size:clamp(2.3rem,4vw,3.7rem);font-weight:700}.cw-contact-aside{position:sticky;top:120px}.cw-form-panel{background:var(--cw-bg-soft);border-radius:16px;padding:2rem}.cw-public .form-control,.cw-public .form-select{border-color:var(--cw-border);background-color:var(--cw-surface);color:var(--cw-text);padding:.75rem}.cw-public .form-label{font-size:.9rem;font-weight:600}.cw-public .form-text{color:var(--cw-muted)}.cw-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.cw-empty{background:var(--cw-bg-soft);border-radius:16px;max-width:750px;padding:3rem}.cw-empty h2{font-size:1.6rem}.cw-footer{border-top:1px solid var(--cw-border);background:var(--cw-bg-soft);padding:56px 0 0}.cw-footer-links li{margin-bottom:.55rem}.cw-footer a{text-decoration:none}.cw-footer a:hover{text-decoration:underline}.cw-footer .cw-email{overflow-wrap:anywhere;font-size:.95rem}.cw-footer-bottom{border-top:1px solid var(--cw-border);color:var(--cw-muted);margin-top:2.5rem;padding:1.4rem 0;font-size:.8rem}.cw-skip{z-index:2000}.cw-public :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--cw-ring);outline-offset:4px}.cw-public button,.cw-public .btn{cursor:pointer}.cw-public .dropdown-menu{background:var(--cw-surface);border-color:var(--cw-border)}.cw-public .dropdown-item{color:var(--cw-text)}.cw-public .dropdown-item:hover{background:var(--cw-bg-soft)}@media (width>=992px){.cw-services .col-lg-4:not(:last-child){border-right:1px solid var(--cw-border)}.cw-services .col-lg-4:not(:first-child) .cw-service{padding-left:1.4rem}}@media (width<=991px){.cw-header .navbar{min-height:72px}.cw-header .navbar-collapse{padding:1rem 0}.cw-header .nav-item{padding:.15rem 0}.cw-header .navbar-nav{align-items:flex-start}.cw-hero{padding:42px 0}.cw-hero h1{max-width:14ch}.cw-flow{margin-top:1.2rem}.cw-section{padding:48px 0}.cw-contact-aside{position:static}.cw-cta{flex-direction:column;align-items:flex-start;padding:2rem}.cw-services .col-lg-4:not(:last-child){border-bottom:1px solid var(--cw-border)}.cw-service{padding:1.5rem 0}}@media (width<=575px){.cw-flow{padding:1.25rem}.cw-flow-node{padding:1rem .4rem;font-size:.9rem}.cw-form-panel{padding:1.25rem}.cw-empty{padding:1.5rem}.cw-brand{font-size:1.35rem}.cw-hero h1{font-size:2.7rem}.cw-hero .lead{font-size:1.05rem}.cw-hero .btn{padding:.8rem 1rem}.cw-footer .row>div{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
