/* Native Opotiki form styling, scoped for reuse throughout the rebuilt site. */
.eco-zoho-form { --zf-ink: #1b1a17; --zf-bone: #f1ede6; --zf-oak: #c9bca4; --zf-clay: #9c765b; display:flex; flex-direction:column; gap:1.4rem; padding-top:.5rem; scroll-margin-top:6rem; color:var(--zf-bone); }
.eco-zoho-form .field-row { display:grid; grid-template-columns:1fr 1fr; gap:1.9rem; }
.eco-zoho-form .field { display:flex; flex-direction:column; gap:.4rem; margin:0; }
.eco-zoho-form .field span { font-size:.66rem; font-weight:500; letter-spacing:.2em; text-transform:uppercase; color:rgba(241,237,230,.6); }
.eco-zoho-form .field input, .eco-zoho-form .field textarea { box-sizing:border-box; width:100%!important; max-width:100%!important; background:transparent!important; border:0!important; border-bottom:1px solid rgba(241,237,230,.22)!important; border-radius:0!important; box-shadow:none!important; padding:.45rem 0!important; font-family:inherit!important; font-size:1.05rem!important; font-weight:400!important; line-height:1.5!important; color:var(--zf-bone)!important; -webkit-appearance:none; appearance:none; outline:none!important; transition:border-color .3s ease; }
.eco-zoho-form .field input:focus, .eco-zoho-form .field textarea:focus { border-bottom-color:var(--zf-oak)!important; }
.eco-zoho-form .field input::placeholder, .eco-zoho-form .field textarea::placeholder { color:rgba(241,237,230,.4)!important; opacity:1!important; }
.eco-zoho-form .field textarea { display:block!important; padding:.65rem 0!important; resize:vertical; min-height:5.5rem; }
.eco-zoho-form .check { display:flex; align-items:center; gap:.8rem; font-size:.85rem; color:rgba(241,237,230,.75); cursor:pointer; user-select:none; line-height:1.5; }
.eco-zoho-form .check input { position:absolute; opacity:0; pointer-events:none; }
.eco-zoho-form .check i { width:1.05rem; height:1.05rem; border:1px solid rgba(241,237,230,.45); display:inline-block; position:relative; flex:0 0 auto; transition:background-color .25s ease,border-color .25s ease; }
.eco-zoho-form .check input:checked+i { background:var(--zf-clay); border-color:var(--zf-clay); }
.eco-zoho-form .check input:checked+i:after { content:""; position:absolute; inset:3px; background:var(--zf-bone); clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%); }
.eco-zoho-form .check input:focus-visible+i { outline:2px solid var(--zf-oak); outline-offset:3px; }
.eco-zoho-form .btn { position:relative; display:inline-flex; align-items:center; justify-content:center; align-self:flex-start; gap:.7rem; max-width:100%; min-width:0; margin-top:.5rem; padding:1.05rem 1.9rem; border:1px solid var(--zf-bone); background:transparent; color:var(--zf-bone); font-family:inherit; font-size:.72rem; font-weight:500; line-height:1.6; letter-spacing:.18em; text-transform:uppercase; text-align:center; white-space:normal; cursor:pointer; transition:color .25s ease,background .25s ease; }
.eco-zoho-form .btn:hover { background:var(--zf-bone); color:var(--zf-ink); }
.eco-zoho-form .btn:focus-visible { outline:2px solid var(--zf-oak); outline-offset:4px; }
.eco-zoho-form .form-note { margin:0; font-size:.75rem; line-height:1.6; color:rgba(241,237,230,.6); }
@media(max-width:40rem) { .eco-zoho-form .field-row { grid-template-columns:1fr; } .eco-zoho-form .btn { font-size:.67rem; letter-spacing:.12em; padding:1.05rem 1.25rem; } }
