.o99-contact{max-width:1120px;margin:1rem auto 3rem;padding:3rem 2rem;border:1px solid var(--o-border);border-radius:16px;background:radial-gradient(ellipse at 95% 0,rgba(0,150,238,.14),transparent 55%),linear-gradient(145deg,#eef7fd,#fff 65%,#eef7fd);color:var(--o-ink);font-size:1.125rem;line-height:1.6}
.o99-contact,.o99-contact *{box-sizing:border-box}
.o99-contact [hidden]{display:none}
.o99-contact__intro{max-width:800px;margin:0 auto 2rem;text-align:center}
.o99-contact h1{font-size:clamp(2rem,4vw,3rem);line-height:1.4;letter-spacing:-.025em;margin:0 0 1rem}
.o99-contact__highlight{display:inline-block;position:relative;isolation:isolate;padding:0 .3em;color:#fff;white-space:nowrap}
.o99-contact__highlight::before{content:"";position:absolute;inset:-.13em -.12em;z-index:-1;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20440%20120%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3ClinearGradient%20id%3D%22ink%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%221%22%20y2%3D%22.25%22%3E%3Cstop%20stop-color%3D%22%2306345d%22%2F%3E%3Cstop%20offset%3D%22.62%22%20stop-color%3D%22%230060a1%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22%230060a1%22%20stop-opacity%3D%22.86%22%2F%3E%3C%2FlinearGradient%3E%3C%2Fdefs%3E%3Cpath%20d%3D%22M24%2026%20C71%2017%20107%2020%20163%2017%20S257%2019%20308%2013%20Q366%209%20425%2016%20L414%2025%20432%2024%20421%2043%20Q425%2066%20411%2083%20L422%2081%20410%2094%20Q351%2092%20275%2096%20T136%2098%20Q65%20104%2015%2093%20L23%2087%209%2083%20Q18%2070%2013%2057%20L22%2039%2017%2035Z%22%20fill%3D%22url(%23ink)%22%2F%3E%3Cpath%20d%3D%22M25%2098%20Q123%20106%20212%20101%20T397%2094%22%20fill%3D%22none%22%20stroke%3D%22%230060a1%22%20stroke-width%3D%224%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.22%22%2F%3E%3Cpath%20d%3D%22M39%2022%20Q116%2017%20174%2021%20M245%2019%20Q332%2012%20400%2020%20M24%2089%20Q89%2096%20136%2091%20M307%2088%20Q367%2090%20403%2083%22%20fill%3D%22none%22%20stroke%3D%22%23eef7fd%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.25%22%2F%3E%3Cpath%20d%3D%22M35%20107%20Q54%20109%2080%20107%20M362%20100%20L392%2097%22%20fill%3D%22none%22%20stroke%3D%22%230060a1%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20opacity%3D%22.17%22%2F%3E%3C%2Fsvg%3E") center/100% 100% no-repeat;transform:rotate(-2deg);filter:drop-shadow(0 3px 2px rgba(3,24,43,.10));pointer-events:none}
.o99-contact__intro>p:last-child{color:var(--o-muted);margin:0}
.o99-contact__layout{max-width:800px;min-width:0;margin-inline:auto}
.o99-contact__card{padding:2rem;border:1px solid var(--o-border);border-top:4px solid var(--o-blue);border-radius:12px;background:#fff;box-shadow:0 18px 40px rgba(3,24,43,.10),0 4px 10px rgba(3,24,43,.04);min-width:0}
.o99-contact__required{font-size:.875rem;color:var(--o-muted);margin:0 0 1.5rem}
.o99-contact__local{grid-column:1/-1;font-size:.875rem;color:var(--o-muted);margin:0}
.o99-contact__form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem}
.o99-contact__field{min-width:0}
.o99-contact__field--subject,.o99-contact__field--message,.o99-contact__privacy,.o99-contact__status,.o99-contact__form>button{grid-column:1/-1}
.o99-contact label{display:block;font-size:1rem;font-weight:600;margin:0 0 .5rem}
.o99-contact label span{font-size:.875rem;font-weight:400;color:var(--o-muted)}
.o99-contact input:not([type=hidden]),.o99-contact textarea{width:100%;max-width:100%;min-height:48px;padding:.75rem;border:1px solid #7C8793;border-radius:8px;background:#fff;color:var(--o-ink);font:inherit;font-size:1rem;line-height:1.5}
.o99-contact textarea{resize:vertical;min-height:180px}
.o99-contact input::placeholder,.o99-contact textarea::placeholder{color:var(--o-muted);opacity:1}
.o99-contact__error{font-size:.9375rem;line-height:1.5;margin:.5rem 0 0}
.o99-contact__privacy{color:var(--o-muted)}
.o99-contact__privacy{margin:0;font-size:.9375rem}
.o99-contact__error{color:#B4232D}
.o99-contact [aria-invalid=true]{border:2px solid #B4232D}
.o99-contact__status{margin:0;padding:1rem;border-left:4px solid var(--o-blue);background:#EAF4FB;border-radius:8px;font-size:1rem}
.o99-contact__status.is-error{color:#B4232D;border-color:#B4232D;background:#FFF1F0}
.o99-contact__form>button{justify-self:start;display:inline-flex;align-items:center;justify-content:center;gap:1rem;min-height:48px;padding:.75rem 1.5rem;background:var(--o-blue);border:1px solid var(--o-blue);border-radius:8px;color:#fff;font:inherit;font-size:1rem;font-weight:600;cursor:pointer}
.o99-contact__form>button:hover{background:var(--o-hover)}
.o99-contact__form>button:disabled{background:#E9ECEF;color:#5F6368;border-color:#C9CED4;cursor:wait}
.o99-contact :is(input,textarea,button,a):focus-visible{outline:3px solid var(--o-blue);outline-offset:3px;box-shadow:0 0 0 2px #fff}
.o99-contact__trap{display:none}
@media(max-width:800px){.o99-contact{padding:2rem 1.5rem}.o99-contact__card{padding:1.5rem}}
@media(max-width:480px){.o99-contact{padding:1.5rem .5rem;border-radius:12px}.o99-contact__intro{padding-inline:.5rem}.o99-contact__form{grid-template-columns:minmax(0,1fr)}.o99-contact__card{padding:1rem}.o99-contact__form>button{width:100%}}
