/* Quiet limestone surface, open form composition and genuine glass artwork. */
.home-contact.home-section{padding:74px 0 64px;border:0;background:linear-gradient(135deg,#edf0e7,#f2f3ec 60%,#e9eee4);isolation:isolate}
.home-contact:before{content:"";position:absolute;inset:0 0 auto;height:32px;background:var(--paper);clip-path:polygon(0 0,100% 0,100% 0,0 100%);pointer-events:none}
.home-contact .home-contact-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:100px;align-items:start}
.home-contact-copy{min-width:0;padding-top:18px}
.home-contact .nexo-eyebrow{font-size:10px;letter-spacing:.22em;color:#506b58;margin-bottom:26px}
.home-contact .nexo-title{font-size:clamp(40px,4vw,60px);line-height:1.035;letter-spacing:-.055em;max-width:610px;margin:0 0 26px;overflow-wrap:anywhere;text-wrap:balance}
.home-contact .nexo-title span{display:block;background-image:var(--text-gradient)}
.home-contact .nexo-lead{font-size:16px;line-height:1.75;max-width:390px;margin:0;color:#5e6d60}
.home-contact-scene{position:relative;width:min(100%,350px);margin:22px 0 0 auto}
.home-contact .home-contact-art{height:270px}
.home-contact .home-contact-art img{object-fit:contain;object-position:center;mix-blend-mode:multiply}
.home-contact .home-contact-form{position:relative;min-width:0;padding:0;background:none;border:0;box-shadow:none}
.home-contact-form-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:26px;padding-bottom:24px;border-bottom:1px solid #a9bcaa}
.home-contact-form-heading h3{font-size:25px;line-height:1.2;letter-spacing:-.035em;margin:0 0 8px;color:#164e37}
.home-contact-form-heading p{font-size:13px;line-height:1.6;color:#586d5b;margin:0}
.home-contact-direction{width:48px;height:48px;flex-shrink:0;display:grid;place-items:center;border:1px solid #9db69f;border-radius:50%;font-size:24px;color:#286644}
.home-contact .home-form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.home-contact .nexo-field{gap:9px;margin:0 0 22px;min-width:0}
.home-contact .nexo-field label{font-size:12px;font-weight:500;line-height:1.5;color:#294534}
.home-contact .nexo-field label>span{color:#617a65}
.home-contact .nexo-field :is(input,textarea,select){width:100%;min-height:52px;padding:14px 16px;border:1px solid #718676;border-radius:3px;background:#ffffff70;color:#153b29;font-family:inherit;font-size:15px;line-height:1.45;transition:border-color .22s,background .22s,box-shadow .22s}
.home-contact .nexo-field :is(input,textarea)::placeholder{color:#5c705c;opacity:1;font-size:13px}
.home-contact .nexo-field :is(input,textarea,select):hover{border-color:#809f86}
.home-contact .nexo-field :is(input,textarea,select):focus{background:#ffffffb3;border-color:#0d7751;box-shadow:0 0 0 3px #0a764b0d;outline:2px solid #0d7751;outline-offset:2px}
.home-contact .nexo-field textarea{min-height:114px;resize:vertical}
.home-contact-select{position:relative}
.home-contact .home-contact-select select{appearance:none;padding-right:44px;cursor:pointer}
.home-contact-select svg{position:absolute;right:16px;top:18px;width:16px;height:16px;fill:none;stroke:#275b3e;stroke-width:1.3;pointer-events:none}
.home-contact .nexo-field [aria-invalid="true"]{border-color:#9c3838;background:#fff8f580}
.home-contact .home-field-error{font-size:12px;line-height:1.5}
.home-contact [hidden]{display:none!important}
.home-contact-consent{margin:2px 0 24px}
.home-contact .nexo-check{gap:12px;line-height:1.6;font-size:13px;color:#516952;align-items:center;min-height:44px;cursor:pointer}
.home-contact .nexo-check input{appearance:none;width:20px;height:20px;border:1px solid #718676;border-radius:3px;background:#ffffff80;margin:0;flex-shrink:0;cursor:pointer;position:relative}
.home-contact .nexo-check input:checked{background:linear-gradient(110deg,#096343,#003d2c);border-color:#0c704b}
.home-contact .nexo-check input:checked:after{content:"";position:absolute;left:6px;top:3px;width:5px;height:9px;border:solid white;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}
.home-contact .nexo-check input[aria-invalid="true"]{border-color:#9c3838}
.home-contact .nexo-check a{text-decoration:underline;text-underline-offset:3px}
.home-contact-consent>.home-field-error{display:block;margin:7px 0 0 32px}
.home-contact-submit-row{display:flex;align-items:center;padding-top:4px}
.home-contact .home-contact-form .nexo-btn{position:relative;isolation:isolate;overflow:hidden;min-height:54px;max-width:100%;margin:0;padding:8px 9px 8px 24px;gap:28px;font-size:14px;border-color:transparent;background:var(--button-gradient);box-shadow:none}
.home-contact .home-contact-form .nexo-btn:before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:linear-gradient(110deg,#0b7250,#004333);opacity:0;transition:opacity .3s}
.home-contact .home-contact-form .nexo-btn:is(:hover,:focus-visible):before{opacity:1}
.home-contact .home-contact-form .nexo-btn [data-submit-label]{transform:none;overflow-wrap:anywhere}
.home-contact-submit-arrow{display:grid;place-items:center;width:36px;height:36px;border:1px solid #b4d5c54d;border-radius:50%;flex-shrink:0}
.home-contact .home-contact-form .nexo-btn:is(:hover,:focus-visible) .home-contact-submit-arrow{transform:translateX(2px)}
.home-contact .home-contact-form .nexo-btn[aria-busy="true"]{opacity:.85;cursor:wait}
.home-contact .nexo-btn[aria-busy="true"] .home-contact-submit-arrow{font-size:0}
.home-contact .nexo-btn[aria-busy="true"] .home-contact-submit-arrow:after{content:"";width:14px;height:14px;border:1.5px solid #ffffff50;border-top-color:white;border-radius:50%;animation:nexo-spin .7s linear infinite}
.home-contact-hint{display:flex;align-items:start;gap:10px;font-size:12px;line-height:1.7;color:#536854;max-width:490px;margin:20px 0 0}
.home-contact-hint svg{width:18px;height:18px;flex-shrink:0;margin-top:1px}
.home-contact-feedback{font-size:14px;line-height:1.6;margin:0 0 24px;padding:14px 16px;border-left:2px solid currentColor;background:#ffffff70}
.home-contact.nexo-section--dark{background:var(--dark-gradient);color:var(--paper)}
.home-contact.nexo-section--dark :is(.nexo-eyebrow,.nexo-lead,.home-contact-form-heading h3,.home-contact-form-heading p,.nexo-field label,.nexo-check,.home-contact-hint,.home-contact-direction){color:#d1e4d7}
.home-contact.nexo-section--dark .nexo-title span{background-image:var(--text-gradient-dark)}
.home-contact.nexo-section--dark .home-contact-art img{mix-blend-mode:normal}
.home-contact.nexo-section--dark .nexo-field :is(input,textarea,select){background:#f1f4ec}
.home-contact.nexo-section--dark .nexo-field :is(input,textarea,select):focus{outline-color:#76e6ba}
.home-contact.nexo-section--dark .nexo-field [aria-invalid="true"]{background:#fff8f5}
.home-contact.nexo-section--dark .home-field-error{color:#f2b9ab}
.home-contact.nexo-section--dark .nexo-check input:focus-visible{outline-color:#76e6ba}
.home-contact.nexo-section--dark .nexo-field label>span{color:#d1e4d7}
.home-contact.nexo-section--dark .home-contact-feedback{background:#f1f4ec}
.home-contact.nexo-section--dark .nexo-btn:focus-visible{outline-color:#76e6ba}
@media(max-width:1100px){.home-contact .home-contact-layout{gap:56px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.home-contact .nexo-title{font-size:clamp(38px,4vw,50px)}.home-contact-scene{width:290px}.home-contact .home-form-row{gap:16px}}
@media(max-width:800px){.home-contact.home-section{padding:54px 0 48px}.home-contact .home-contact-layout{grid-template-columns:minmax(0,1fr);gap:34px}.home-contact-copy{padding-top:0}.home-contact-scene{display:none}.home-contact .nexo-title{font-size:clamp(38px,7vw,52px);max-width:680px}.home-contact .nexo-lead{max-width:540px}.home-contact-form-heading{margin-bottom:24px}.home-contact .home-contact-art{height:220px}}
@media(max-width:500px){.home-contact .home-form-row{grid-template-columns:1fr;gap:0}.home-contact .nexo-title{font-size:clamp(38px,9vw,46px)}.home-contact .nexo-lead{font-size:15px}.home-contact .nexo-field{margin-bottom:18px}.home-contact-form-heading h3{font-size:23px}.home-contact .home-contact-form .nexo-btn{width:100%;justify-content:space-between}.home-contact .nexo-field :is(input,textarea,select){font-size:16px}}
@media(prefers-reduced-motion:reduce){.home-contact .nexo-field :is(input,textarea,select),.home-contact .nexo-btn:before{transition:none!important}.home-contact .nexo-btn[aria-busy="true"] .home-contact-submit-arrow:after{animation:none}.home-contact .nexo-btn span{transform:none!important}}
@media(forced-colors:active){.home-contact .nexo-check input{appearance:auto}.home-contact .nexo-check input:checked:after{display:none}.home-contact-direction,.home-contact-scene{display:none}.home-contact .nexo-field :is(input,textarea,select){background:Canvas;color:CanvasText;border-color:ButtonText}.home-contact .nexo-field :is(input,textarea)::placeholder{color:GrayText}}
