/* Nestora inquiry form + success screen. Self-contained; no inline styles needed (CSP style-src 'self'). */
.inq-card{position:relative;overflow:hidden;scroll-margin-top:92px}
.inq-head{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.inq-head img{width:44px;height:44px;border-radius:12px;flex-shrink:0}
.inq-head .tag{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#7a5200;background:var(--gold-l);border-radius:999px;padding:5px 11px}
.inq-form h3,.inq-form h2{font-size:1.4rem;margin:0 0 4px}
.inq-sub{color:var(--muted);font-size:.95rem;margin:0 0 20px}
.req{color:#b42318;font-weight:800}
.inq-form .fields{gap:18px 16px}
.inq-form .field{animation:inqRise .5s ease both}
.inq-form .field:nth-child(1){animation-delay:.02s}.inq-form .field:nth-child(2){animation-delay:.06s}.inq-form .field:nth-child(3){animation-delay:.10s}.inq-form .field:nth-child(4){animation-delay:.14s}.inq-form .field:nth-child(5){animation-delay:.18s}.inq-form .field:nth-child(6){animation-delay:.22s}
@keyframes inqRise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.field .hint{font-size:.85rem;color:var(--muted);margin:-2px 0 0}
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F4C5C' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:18px;padding-right:44px}
input.is-valid,select.is-valid,textarea.is-valid{border-color:#2f8f57}
fieldset.field{border:0;padding:0;margin:0;min-width:0}
fieldset.field legend{font-weight:700;font-size:.95rem;padding:0;margin-bottom:8px}
.chips{display:flex;flex-wrap:wrap;gap:10px}
.opt-chip{position:relative;display:inline-flex}
.opt-chip input{position:absolute;opacity:0;width:100%;height:100%;min-height:0;margin:0;padding:0;cursor:pointer;left:0;top:0;border:0}
.opt-chip span{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1.5px solid #c5d0d4;border-radius:999px;font-weight:600;font-size:.95rem;color:var(--ink);background:#fff;min-height:44px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}
.opt-chip span::before{content:"";width:16px;height:16px;border-radius:50%;border:1.5px solid #9fb0b6;background:#fff;flex-shrink:0;transition:all .15s ease}
.opt-chip:hover span{border-color:var(--teal)}
.opt-chip input:checked+span{background:var(--teal);border-color:var(--teal);color:#fff}
.opt-chip input:checked+span::before{border-color:var(--gold);background:var(--gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23072830' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center/11px no-repeat}
.opt-chip input:focus-visible+span{outline:3px solid var(--gold);outline-offset:3px}
.inq-submit{width:100%;font-size:1.05rem;padding:16px 24px;margin-top:4px}
.inq-submit .spin{display:none;width:18px;height:18px;border:2.5px solid rgba(7,40,48,.25);border-top-color:var(--teal-dd);border-radius:50%;animation:inqSpin .7s linear infinite}
.is-sending .inq-submit .spin{display:inline-block}
@keyframes inqSpin{to{transform:rotate(360deg)}}
.inq-fine{font-size:.86rem;color:var(--muted);margin:14px 0 0;text-align:center}
#inq-status{outline:none}
#inq-status.error{margin-top:16px}
#inq-status .retry{margin-top:10px;display:inline-flex;font:inherit;font-weight:700;color:#912018;background:#fff;border:1.5px solid #912018;border-radius:999px;padding:8px 18px;min-height:44px;cursor:pointer}
#inq-status .retry:hover{background:#fef3f2}
.demo-banner{margin:0 0 16px;padding:10px 14px;border-radius:12px;background:#eef6ff;color:#14456f;border:1px solid #bcd9f5;font-size:.9rem;font-weight:600}
.inq-form[hidden],.inq-success[hidden]{display:none}
/* success */
.inq-success{text-align:center;padding:10px 4px 6px;animation:inqRise .5s ease both}
.inq-success:focus{outline:none}
.burst{width:132px;height:132px;margin:0 auto 10px;position:relative}
.burst svg{width:100%;height:100%;overflow:visible}
.burst .halo{fill:#e7f6ec;transform-box:fill-box;transform-origin:center;animation:inqPop .55s cubic-bezier(.2,1.3,.4,1) both}
.burst .ring{fill:none;stroke:#1b7a3d;stroke-width:5;stroke-linecap:round;stroke-dasharray:289;stroke-dashoffset:289;transform:rotate(-90deg);transform-origin:60px 60px;animation:inqDraw .7s .15s ease forwards}
.burst .tick{fill:none;stroke:#1b7a3d;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60;animation:inqDraw .45s .75s ease forwards}
.burst .pulse{fill:none;stroke:#F2A541;stroke-width:3;transform-box:fill-box;transform-origin:center;opacity:0;animation:inqPulse 1.1s .8s ease-out 1}
.burst .dot{fill:#F2A541;transform-box:fill-box;transform-origin:center;opacity:0;animation:inqDot .9s .8s ease-out forwards}
.burst .dot:nth-of-type(odd){fill:#0F4C5C}
.burst .dot:nth-of-type(1){--dx:-52px;--dy:-30px}.burst .dot:nth-of-type(2){--dx:-24px;--dy:-58px}.burst .dot:nth-of-type(3){--dx:22px;--dy:-60px}.burst .dot:nth-of-type(4){--dx:52px;--dy:-26px}.burst .dot:nth-of-type(5){--dx:56px;--dy:18px}.burst .dot:nth-of-type(6){--dx:24px;--dy:54px}.burst .dot:nth-of-type(7){--dx:-26px;--dy:56px}.burst .dot:nth-of-type(8){--dx:-56px;--dy:20px}
@keyframes inqDraw{to{stroke-dashoffset:0}}
@keyframes inqPop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes inqPulse{0%{opacity:.8;transform:scale(.8)}100%{opacity:0;transform:scale(1.5)}}
@keyframes inqDot{0%{opacity:1;transform:translate(0,0) scale(.4)}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1)}}
.inq-success h3,.inq-success h2{font-size:1.7rem;margin:6px 0 8px}
.inq-success .thanks{color:var(--muted);margin:0 auto 16px;max-width:30em}
.id-pill{display:inline-flex;flex-direction:column;align-items:center;gap:2px;background:var(--teal-l);border:1px solid #cfe1e4;border-radius:16px;padding:10px 22px;margin-bottom:22px}
.id-pill span{font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.id-pill strong{font-size:1.25rem;letter-spacing:.04em;color:var(--teal-dd);font-variant-numeric:tabular-nums;user-select:all;overflow-wrap:anywhere}
.next{list-style:none;counter-reset:n;text-align:left;margin:0 auto 22px;padding:0;max-width:30em;display:grid;gap:12px}
.next li{counter-increment:n;display:flex;gap:12px;align-items:flex-start;color:var(--ink)}
.next li::before{content:counter(n);flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--teal);color:#fff;font-weight:800;font-size:.9rem;display:grid;place-items:center;margin-top:1px}
.next h4{margin:0 0 2px;font-size:1rem}
.next p{margin:0;color:var(--muted);font-size:.95rem}
.inq-success .small{font-size:.88rem;color:var(--muted);margin:16px 0 0}
.page-contact{min-height:70vh}
.page-contact h1{color:#fff;font-size:clamp(2rem,4.6vw,3.1rem)}
@media (max-width:640px){.opt-chip span{padding:10px 14px}.burst{width:116px;height:116px}.inq-success h3,.inq-success h2{font-size:1.5rem}}
@media (prefers-reduced-motion:reduce){
 .burst .ring,.burst .tick{stroke-dashoffset:0!important}
 .burst .dot,.burst .pulse{display:none}
 .inq-form .field,.inq-success{animation:none!important}
 .inq-submit .spin{animation:none!important;border-top-color:var(--teal-dd);border-right-color:var(--teal-dd)}
}

html:not(.inquiry-ready) #inquiry-form{display:none}
