/* Contact shares the site's black/turquoise identity and local Aspekta. */
body.is-contact .contact-hero.contact-unified{background:#101415;color:#edf4f2;background-image:none;min-height:0;overflow:clip}
body.is-contact .contact-shell{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(45px,7vw,104px);width:calc(100% - 112px);max-width:1320px;margin-inline:auto;padding:92px 0 86px;align-items:start}
body.is-contact .contact-content{width:100%;max-width:none;margin:0;padding:0;min-width:0}
body.is-contact .contact-brand{display:flex;align-items:center;gap:20px;width:auto;max-width:100%;line-height:1;text-decoration:none}
body.is-contact .contact-brand img{width:146px;height:auto}
body.is-contact .contact-brand>span{font-size:11px;letter-spacing:.16em;padding-left:20px;border-left:1px solid #7de1de77;color:#edf4f2}
body.is-contact .contact-eyebrow{font-size:11px;line-height:1.5;letter-spacing:.16em;color:#7de1de;font-weight:550;margin:51px 0 22px}
body.is-contact .contact-content h1{font-family:'Aspekta',Arial,sans-serif;font-size:clamp(66px,7.8vw,116px);font-weight:760;line-height:.94;letter-spacing:-.065em;color:#edf4f2;margin:0 0 30px;transform:none;white-space:normal}
body.is-contact .contact-content h1>span{display:block}
body.is-contact .contact-content h1>span:last-child{color:#7de1de}
body.is-contact .contact-intro{font-size:17px;line-height:1.7;max-width:390px;color:#b7ceca;margin:0 0 30px;text-wrap:pretty}
body.is-contact .contact-channels{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;border-top:1px solid #41615c;margin:0;max-width:390px}
body.is-contact .contact-channels a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0;min-height:55px;border:0;border-bottom:1px solid #41615c;border-radius:0;background:none;color:#edf4f2;font-size:15px;text-decoration:none}
body.is-contact .contact-channels a::after{content:'↗';color:#7de1de;font-size:22px;font-weight:400;line-height:1}
body.is-contact .contact-channels a:hover{color:#7de1de;background:none;text-decoration:underline;text-underline-offset:5px}
body.is-contact .contact-bali-link{display:inline-flex;align-items:center;gap:22px;font-size:13px;min-height:44px;margin-top:24px;color:#b7ceca;text-underline-offset:5px}
body.is-contact .contact-bali-link span{color:#7de1de;font-size:20px}
body.is-contact .contact-panel{background:#f5faf7;color:#2c2a29;border:1px solid #d2e2dc;border-radius:6px;padding:38px;min-width:0}
body.is-contact .contact-panel-label{color:#365f56;font-size:10px;font-weight:650;letter-spacing:.15em;margin:0 0 17px;line-height:1.5}
body.is-contact .contact-panel h2{font-family:'Aspekta',Arial,sans-serif;font-size:clamp(28px,2.7vw,39px);font-weight:650;line-height:1.1;letter-spacing:-.045em;margin:0 0 15px}
body.is-contact .contact-send-hint{color:#4c675f;font-size:13px;line-height:1.65;margin:0 0 27px;max-width:100%;overflow-wrap:anywhere}
body.is-contact .contact-form{margin:0;width:100%}
body.is-contact .contact-form .contact-name-row,body.is-contact .contact-form .contact-phone-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:20px;min-height:0}
body.is-contact .contact-form .review-field{min-width:0;gap:8px}
body.is-contact .contact-form .review-field label{color:#2c2a29;font-weight:550;font-size:13px;line-height:1.5}
body.is-contact .contact-form .review-field :is(input,textarea,select){font-family:'Aspekta',Arial,sans-serif;font-size:16px;color:#253c36;background:#fff;border:1px solid #a7c2b8;border-radius:4px;box-shadow:none;padding:12px 14px;min-width:0;width:100%}
body.is-contact .contact-form .review-field :is(input,select){height:52px;position:static;opacity:1;flex:none}
body.is-contact .contact-form .review-field textarea{height:143px;min-height:143px;max-height:480px;margin:0 0 20px;resize:vertical;line-height:1.6}
body.is-contact .contact-form :is(input,textarea,select)::placeholder{color:#647a72;opacity:1}
body.is-contact .contact-form .review-message-field{margin-top:0}
body.is-contact .contact-form :is(input,textarea,select):focus-visible{outline:3px solid #087f82;outline-offset:2px;border-color:#087f82}
body.is-contact .contact-form :is(input,textarea,select)[aria-invalid=true]{border-color:#a33435;box-shadow:0 0 0 1px #a33435}
body.is-contact .contact-submit{display:flex;justify-content:space-between;align-items:center;gap:24px;width:100%;min-height:54px;padding:13px 19px;font-size:16px;font-weight:600;background:#7de1de;color:#142b28;border:1px solid #7de1de;border-radius:4px;box-shadow:none;filter:none;transform:none;transition:background 180ms ease}
body.is-contact .contact-submit:hover{background:#95e8e5;box-shadow:none;filter:none;transform:none}
body.is-contact .contact-submit:active{background:#67d2ce}
body.is-contact .contact-copy{color:#365f56;background:#fff;border:1px solid #aac3ba;border-radius:4px;font-size:13px;margin:14px 10px 0 0;min-height:44px;padding:9px 14px}
body.is-contact .contact-form-result{width:100%;font-size:13px;line-height:1.6;border-radius:4px;margin-top:17px}
body.is-contact .contact-form-result[data-kind=notice]{background:#e1f5eb;border-color:#96c5af;color:#253c36}
body.is-contact .contact-content :focus-visible{outline:3px solid #7de1de;outline-offset:5px}
body.is-contact .contact-panel :focus-visible{outline:3px solid #087f82;outline-offset:4px}
body.is-contact .site-header .menu-toggle{background:#101415;border-color:#7de1de60;color:#edf4f2}
@media(max-width:1100px){body.is-contact .contact-shell{width:calc(100% - 64px);gap:42px;padding-top:82px}body.is-contact .contact-panel{padding:28px}body.is-contact .contact-intro{font-size:16px}body.is-contact .contact-content h1{font-size:clamp(68px,8vw,95px)}}
@media(max-width:850px){
 body.is-contact .contact-hero.contact-unified{display:block}
 body.is-contact .contact-shell{grid-template-columns:1fr;gap:43px;max-width:650px;padding:66px 0 60px}
 body.is-contact .contact-content{order:0;width:100%;margin:0;padding:0}
 body.is-contact .contact-panel{order:1;padding:34px}
 body.is-contact .contact-eyebrow{margin-top:38px}
 body.is-contact .contact-content h1{font-size:clamp(76px,12vw,100px);margin:0 0 25px}
 body.is-contact .contact-content h1>span{display:inline}body.is-contact .contact-content h1>span+span{margin-left:16px}
 body.is-contact .contact-intro,body.is-contact .contact-channels{max-width:100%}
 body.is-contact .contact-channels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #41615c;column-gap:22px}
 body.is-contact .contact-channels a{font-size:12px;gap:8px;border-bottom:0;min-height:56px}
}
@media(max-width:560px){
 body.is-contact .contact-shell{width:calc(100% - 40px);padding:35px 0 46px;gap:31px}
 body.is-contact .contact-brand{gap:15px}body.is-contact .contact-brand img{width:125px}body.is-contact .contact-brand>span{font-size:10px;padding-left:15px;letter-spacing:.12em}
 body.is-contact .contact-eyebrow{margin:36px 0 20px}
 body.is-contact .contact-content h1{font-size:clamp(52px,13.8vw,73px);line-height:.98;margin:0 0 22px}
 body.is-contact .contact-content h1>span+span{margin-left:9px}
 body.is-contact .contact-intro{font-size:15px;line-height:1.7;margin-bottom:23px}
 body.is-contact .contact-channels{display:flex;flex-direction:column;gap:0;border-bottom:0}
 body.is-contact .contact-channels a{min-height:50px;font-size:14px;border-bottom:1px solid #41615c}
 body.is-contact .contact-bali-link{margin-top:14px;font-size:12px}
 body.is-contact .contact-panel{padding:24px 20px;border-radius:4px}
 body.is-contact .contact-panel h2{font-size:29px;margin-bottom:14px}
 body.is-contact .contact-send-hint{font-size:12px;margin-bottom:23px}
 body.is-contact .contact-form .contact-name-row{grid-template-columns:1fr;gap:17px;margin-bottom:18px}
 body.is-contact .contact-form .contact-phone-row{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:12px;margin-bottom:18px}
 body.is-contact .contact-form .review-field :is(input,select,textarea){padding-inline:12px}
 body.is-contact .contact-form .review-field select{padding-right:4px;font-size:16px}
 body.is-contact .contact-panel-label{margin-bottom:14px}
 body.is-contact .contact-submit{font-size:15px;padding-inline:15px}
}
@media(max-width:350px){body.is-contact .contact-content h1{font-size:45px}body.is-contact .contact-panel{padding:23px 16px}body.is-contact .contact-form .contact-phone-row{grid-template-columns:1fr;gap:17px}body.is-contact .contact-panel h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){body.is-contact .contact-submit{transition:none}}
html[data-user-reduced-motion=true] body.is-contact .contact-submit{transition:none}

.contact-security-note{font-size:13px;line-height:1.6;color:#456660;border-left:2px solid #33766f;padding:2px 0 2px 14px;margin:0}.contact-draft-actions{display:flex;gap:12px 22px;align-items:center;flex-wrap:wrap}.contact-clear{font:inherit;font-size:14px;min-height:44px;border:0;border-bottom:1px solid #637f79;background:transparent;color:#2f514b;padding:5px 0;cursor:pointer}.contact-draft-actions .contact-copy{margin:0}.contact-clear:focus-visible{outline:3px solid #33766f;outline-offset:4px}

.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}body.is-contact .contact-consent{display:flex;align-items:flex-start;gap:12px;font-size:12px;line-height:1.7;margin:0 0 23px;color:#45665d}body.is-contact .contact-consent input{appearance:auto;width:19px;height:19px;min-width:19px;margin:2px 0 0;accent-color:#216e69}body.is-contact .contact-consent a{color:#216e69;text-decoration:underline;text-underline-offset:3px}body.is-contact .contact-submit:disabled{cursor:wait;opacity:.65}body.is-contact .contact-form-result[data-kind=success]{padding:16px;background:#e1f5eb;border:1px solid #96c5af;color:#253c36}body.is-contact .contact-form-result[data-kind=error]{padding:16px;background:#fff0ea;color:#813427;border:1px solid #d9aa9a}
