[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.contact-page{min-height:100svh;background:radial-gradient(ellipse at 28% 40%,#40112d3b,transparent 52%),#0c0b0f;color:#f9eef6}
.contact-topbar{padding:20px 4.5%;display:flex;align-items:center;justify-content:space-between}.contact-brand{width:120px}.back-home{display:flex;align-items:center;min-height:44px;font-size:12px;color:#b7aaba}.back-home:hover{color:#fff}
.contact-experience{width:min(1280px,92vw);margin:auto;min-height:calc(100svh - 90px);display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);align-items:center;gap:clamp(24px,4vw,70px);padding:12px 0 48px}.robot-presence{position:relative;min-width:0}.host-label{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.12em;color:#d1a7c0;margin:0 0 18px}.host-label>span{width:5px;height:5px;border-radius:50%;background:#fb0077;box-shadow:0 0 14px #fb0077}
.robot-stage{position:relative;width:100%;height:clamp(430px,calc(100svh - 180px),690px);display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:visible}.robot-halo{position:absolute;inset:15% 5%;border-radius:50%;background:radial-gradient(ellipse,#fb007711,transparent 66%);z-index:-1}.robot-shadow{position:absolute;bottom:9%;left:30%;width:40%;height:12px;border-radius:50%;background:#fb007722;filter:blur(8px)}
.fluxa-robot{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 15px #0005)}.robot-stage>noscript{width:100%}.robot-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;opacity:0;transition:opacity .65s}.robot-ready .robot-canvas{opacity:1;animation:fluxo-reveal .85s ease-out both}.robot-stage.robot-ready>.fluxa-robot,.robot-stage.robot-ready>.robot-shadow,.robot-stage.robot-video-ready>.fluxa-robot,.robot-stage.robot-video-ready>.robot-shadow{visibility:hidden}
.robot-greet{position:absolute;inset:6% 12%;z-index:2;border:0;background:transparent;border-radius:40%;cursor:pointer;-webkit-tap-highlight-color:transparent}.robot-greet:focus-visible{outline:1px solid #ff70b4;outline-offset:8px}.robot-video{position:absolute;top:0;left:50%;width:auto;height:100%;max-width:100%;aspect-ratio:18/25;transform:translateX(-50%);object-fit:contain;pointer-events:none;opacity:0;mask-image:radial-gradient(ellipse 67% 62% at 50% 52%,#000 48%,transparent 98%)}.robot-video-ready>.robot-video{opacity:1}
.conversation-panel{width:100%;max-width:560px;min-width:0;padding:18px 0}.robot-speech h1{font-family:Syne,sans-serif;font-size:clamp(35px,3.7vw,52px);font-weight:500;letter-spacing:-.045em;line-height:1.08;margin:0 0 22px;color:#fff}.robot-speech h1 span{white-space:nowrap}.robot-speech p{font-family:'DM Sans',sans-serif;font-size:clamp(19px,1.7vw,24px);line-height:1.48;letter-spacing:-.018em;margin:0 0 16px;color:#dcc8d7}.robot-speech p:last-child{margin-bottom:0;max-width:475px}.robot-speech [data-phrase]:not([hidden]){animation:phrase-in .55s ease both}
#contact-form{margin-top:32px;animation:phrase-in .55s ease both}.identity-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.identity-fields>div{min-width:0}.field-label{display:block;font-size:12px;color:#e5d6e2;margin:0 0 10px}input{display:block;width:100%;min-height:52px;border:0;border-bottom:1px solid #ffffff42;border-radius:0;background:#ffffff03;color:#fff;padding:13px 8px;font:inherit;font-size:16px;outline-offset:4px;transition:border-color .2s}input::placeholder{color:#928190;font-size:14px}input:focus{outline:1px solid #ff3f98;border-color:#fb0077}input[aria-invalid=true]{border-color:#ff91bd}.field-error{font-size:12px;line-height:1.5;color:#ff9bc7;margin-top:8px}.field-error:empty{display:none}
.form-actions{display:flex;align-items:center;gap:18px;margin-top:26px}.confirm-contact{display:flex;align-items:center;justify-content:space-between;gap:40px;background:#fb0077;border:1px solid #fb0077;border-radius:7px;padding:15px 22px;min-height:52px;min-width:165px;color:white;font:inherit;font-size:14px;cursor:pointer;transition:background .2s}.confirm-contact:hover{background:#d90069}.confirm-contact:disabled{cursor:wait;opacity:.65}.confirm-contact>span:last-child{font-size:20px}.confirm-contact:focus-visible,.text-button:focus-visible,.resume-actions a:focus-visible{outline:2px solid white;outline-offset:5px}.enter-hint{font-size:11px;color:#9b8698}.privacy-note{font-size:10px;line-height:1.7;color:#a18d9e;margin-top:22px;max-width:460px}
.contact-status{font-size:13px;line-height:1.6;color:#ffc2dd;margin-top:16px;overflow-wrap:anywhere}.contact-status:empty{display:none}.recovery-panel{border-top:1px solid #ffffff24;padding-top:20px;margin-top:20px}.text-button{display:inline-flex;align-items:center;min-height:44px;color:#f1c1dc;background:transparent;border:0;padding:6px 0;font:inherit;font-size:13px;cursor:pointer}.text-button:hover{text-decoration:underline}.contact-result{margin-top:30px;animation:phrase-in .5s ease both}.contact-result h2{font-family:Syne,sans-serif;font-size:30px;letter-spacing:-.03em;font-weight:500;margin:0 0 12px}.contact-result>p{font-size:16px;line-height:1.6;color:#e0cddd}.saved-identity{display:flex;flex-wrap:wrap;gap:8px 20px;padding:18px 0;margin:18px 0;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;font-size:14px;color:#e9d3e1}.saved-identity span{overflow-wrap:anywhere}.resume-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px 22px}.resume-actions a{display:inline-flex;align-items:center;min-height:48px;gap:20px;color:#fff;font-size:14px}.resume-actions a span{color:#ff3290}.contact-result .link-note{font-size:11px;color:#ad92a5;max-width:440px;margin-top:15px}.copy-link-fallback{margin-top:14px;font-size:12px}.no-script{font-size:16px;line-height:1.6}.no-script a{text-decoration:underline}
@keyframes fluxo-reveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes phrase-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(min-width:761px) and (max-height:750px){.contact-topbar{padding-top:12px;padding-bottom:10px}.contact-experience{padding-bottom:20px}.robot-stage{height:calc(100svh - 130px);min-height:400px}.robot-speech h1{font-size:40px}.robot-speech p{font-size:20px}#contact-form{margin-top:24px}}
@media(max-width:760px){.contact-topbar{padding:12px 22px}.contact-brand{width:105px}.back-home{font-size:11px}.contact-experience{width:100%;display:flex;flex-direction:column;gap:0;min-height:calc(100svh - 75px);padding:0 24px 40px;align-items:stretch}.robot-presence{width:100%;max-width:430px;margin:0 auto}.robot-stage{height:min(62svh,510px);min-height:300px;transition:height .8s ease}.chat-visible .robot-stage{height:300px;min-height:300px}.host-label{top:0;font-size:10px}.conversation-panel{margin:0 auto;max-width:500px;padding:4px 0 0}.robot-speech h1{font-size:34px;line-height:1.12;margin-bottom:16px}.robot-speech p{font-size:19px;margin-bottom:13px}.identity-fields{grid-template-columns:1fr;gap:20px}#contact-form{margin-top:28px}.form-actions{margin-top:23px}.confirm-contact{flex:1}.enter-hint{display:none}.privacy-note{font-size:11px}.contact-result h2{font-size:28px}}
@media(max-width:370px){.contact-experience{padding-left:20px;padding-right:20px}.chat-visible .robot-stage{height:280px;min-height:280px}.robot-speech h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.contact-tools{display:flex;align-items:center;gap:24px}.sound-control{display:flex;align-items:center}.sound-control button{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff25;border-radius:50%;background:#ffffff04;color:#f4d9e8;cursor:pointer;transition:background .2s,color .2s}.sound-control button:hover{background:#ffffff0e;color:#fff}.sound-control button:focus-visible{outline:2px solid #ff3793;outline-offset:3px}.sound-muted{display:none}.sound-control button[aria-pressed=true] .sound-waves{display:none}.sound-control button[aria-pressed=true] .sound-muted{display:block}.sound-control button[aria-pressed=true]{color:#ac96a4}
@media(max-width:760px){.contact-tools{gap:12px}.contact-tools .back-home{font-size:0;width:28px;justify-content:center}.contact-tools .back-home::after{content:"↖";font-size:18px}.conversation-panel .host-label{margin-bottom:12px}.contact-brand{width:90px}}

/* Compact service choices keep the first stage framing unchanged. */
.service-speech h1{font:500 clamp(28px,3vw,42px)/1.12 Syne,sans-serif;letter-spacing:-.04em;margin:0 0 14px;overflow-wrap:anywhere}
.service-speech p{font-size:clamp(17px,1.4vw,20px);line-height:1.45;color:#dcc8d7;margin:8px 0}.service-speech [data-service-phrase]:not([hidden]){animation:phrase-in .4s ease both}
#services-form{margin-top:20px}#services-form fieldset{padding:0;border:0;margin:0;min-width:0}#services-form legend{font-size:11px;color:#bba5b4;padding:0;margin-bottom:10px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.service-card{position:relative;min-width:0;cursor:pointer;animation:phrase-in .3s ease both;animation-delay:calc(var(--card-order)*40ms)}
.service-card input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0;margin:0;left:10px;top:10px}
.service-card-body{display:flex;align-items:center;gap:8px;position:relative;box-sizing:border-box;height:44px;padding:7px 10px;border:1px solid #ffffff24;border-radius:7px;background:#ffffff04;transition:border-color .2s,background .2s}
.service-card:hover .service-card-body{border-color:#fb00778c;background:#fb00770a}.service-card input:checked+.service-card-body{border-color:#ff278f;background:#fb00771c;box-shadow:inset 0 0 0 1px #fb007733}
.service-card input:focus-visible+.service-card-body{outline:2px solid #fff;outline-offset:3px}.service-card svg{width:15px;height:15px;flex:0 0 15px;color:#ff459b}.service-card-title{font-size:12px;font-weight:500;color:#f6eaf1;line-height:1.2;min-width:0}
.service-card-description{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.service-check{display:none}
.service-caption{height:32px;margin:9px 0 0;font-size:12px;line-height:1.4;color:#ccb5c4;display:flex;align-items:center}
.service-actions{display:flex;align-items:center;gap:14px;margin-top:5px}.service-actions .confirm-contact{margin-left:auto;min-width:135px;padding:11px 16px;min-height:44px}.selection-count{color:#bba6b5;font-size:10px}.service-preview-note{margin-top:14px;max-width:none}
.services-summary{margin-top:25px;border-top:1px solid #ffffff25;padding-top:22px}.services-summary h2{font:500 24px/1.3 Syne,sans-serif;margin:0 0 18px}.selected-services{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-wrap:wrap;gap:8px}.selected-services li{border:1px solid #ff278f77;background:#fb007714;padding:9px 14px;border-radius:24px;font-size:13px}
@media(min-width:761px) and (max-width:1100px){.service-card-body{gap:6px;padding:6px 7px}.service-card svg{width:14px;height:14px;flex-basis:14px}.service-card-title{font-size:11px}.service-actions{gap:10px}.selection-count{max-width:80px}}
@media(min-width:761px) and (max-height:750px){.service-speech h1{font-size:32px}.service-speech p{font-size:17px}}
@media(max-width:760px){.service-speech h1{font-size:30px;margin-bottom:12px}.service-speech p{font-size:18px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card:last-child{grid-column:auto}.service-actions{flex-wrap:wrap;gap:8px 12px}.service-actions .confirm-contact{flex:initial;margin-left:auto;min-width:135px}.service-preview-note{font-size:10px}}
@media(max-width:370px){.service-card-body{gap:6px;padding:6px 7px}.service-card-title{font-size:11px}.service-actions .selection-count{order:3;width:100%;text-align:right}}
#services-title:focus,#selection-title:focus{outline:none}
.service-card:nth-child(1){--card-order:0}.service-card:nth-child(2){--card-order:1}.service-card:nth-child(3){--card-order:2}.service-card:nth-child(4){--card-order:3}.service-card:nth-child(5){--card-order:4}.service-card:nth-child(6){--card-order:5}.service-card:nth-child(7){--card-order:6}.service-card:nth-child(8){--card-order:7}.service-card:nth-child(9){--card-order:8}

.step-progress{font-size:10px;letter-spacing:.07em;color:#a88f9f;margin:0 0 14px}.questionnaire-step #question-form{margin-top:24px}.questionnaire-step fieldset{margin:0;padding:0;border:0;min-width:0}.questionnaire-step legend{font-size:11px;color:#bba5b4;margin-bottom:10px;padding:0}.question-options{display:grid;gap:8px}.question-option{position:relative;cursor:pointer}.question-option input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0;left:10px;top:10px}.question-option span{display:flex;align-items:center;min-height:44px;padding:10px 14px;border:1px solid #ffffff24;border-radius:7px;font-size:13px;background:#ffffff04}.question-option:hover span{border-color:#fb00778c}.question-option input:checked+span{border-color:#ff278f;background:#fb00771c}.question-option input:focus-visible+span{outline:2px solid white;outline-offset:3px}.question-option input:disabled+span{opacity:.65}.questionnaire-step .service-actions{margin-top:20px}.questionnaire-step .privacy-note{margin-top:12px}#question-title:focus,#saved-title:focus{outline:none}.questionnaire-step{animation:phrase-in .4s ease both}.questionnaire-step .service-speech h1{font-size:clamp(27px,2.8vw,38px)}

.saved-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;margin:20px 0 10px}.saved-actions .confirm-contact{flex:0 1 auto}.saved-actions+.resume-actions{margin-top:6px}

/* Reserve each complete line while its visible copy follows the voice. */
.narrated-line{position:relative}.speech-layout{display:block;visibility:hidden;pointer-events:none}.speech-typed{position:absolute;inset:0;display:block}.completion-details .link-note{font-size:11px;color:#ad92a5;line-height:1.6;margin-top:15px}

.narrated-line>.speech-layout,.narrated-line>.speech-typed{white-space:normal}

.contact-result #saved-invitation{margin-top:16px}.contact-result #saved-signature{margin-top:12px;color:#ff439d;font-weight:600}
