@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#0a1322;--surface:#111f30;--edge:#28445b;--text:#e9f3fc;--muted:#a4bad0;--blue:#49bdff;--btn:#18354c;--radius:20px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:22px}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:'DM Sans',system-ui,-apple-system,sans-serif;line-height:1.55}
body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 65% 30% at 50% 0%,#17466d99,transparent 78%),linear-gradient(135deg,#0b1425,#071321 65%,#0d1e31)}
.ambient{position:absolute;top:0;left:0;right:0;height:400px;pointer-events:none;opacity:.22;background-image:linear-gradient(90deg,#4096c722 1px,transparent 1px),linear-gradient(#4096c722 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,#000,transparent)}
a{color:inherit}button,input,select,textarea{font:inherit}
button{cursor:pointer}
button:disabled{opacity:.54;cursor:not-allowed}
:focus-visible{outline:3px solid #7cd1ff;outline-offset:3px}
.skip{position:absolute;top:-80px;left:20px;background:#fff;color:#000;padding:8px 16px;z-index:10}.skip:focus{top:10px}
.bio-wrap{position:relative;max-width:600px;padding:0 20px 32px;margin:0 auto}
.intro{text-align:center;padding:60px 0 28px}
.wordmark{display:flex;justify-content:center;align-items:center;margin-bottom:27px}
.wordmark img{width:min(270px,80%);height:auto;filter:drop-shadow(0 8px 22px #0613228c)}
.identity-tag{display:inline-flex;align-items:center;gap:8px;border:1px solid #3c5b72;background:#13283b;color:#c3d8e9;font-weight:700;font-size:10px;letter-spacing:.12em;padding:8px 13px;border-radius:30px;text-transform:uppercase}
.identity-dot{height:7px;width:7px;border-radius:50%;background:#56c9f9;box-shadow:0 0 11px #56c9f9}
h1,h2,h3,.main-link strong,.eyebrow{font-family:Manrope,system-ui,sans-serif}
h1{font-weight:800;letter-spacing:-.05em;line-height:1.17;font-size:clamp(33px,6.8vw,47px);margin:22px auto 14px}
h1 span{color:#73cafe}
.intro p{max-width:440px;margin:0 auto;color:#bdd0df;font-size:14px;line-height:1.75}
.location{margin:22px auto 0;display:inline-flex;align-items:center;gap:6px;color:#9cb9cc;font-size:12px}
.bio-links{display:grid;gap:12px;margin:12px 0 48px}
.main-link{display:flex;align-items:center;text-decoration:none;gap:16px;background:#15273a;border:1px solid #375369;border-radius:17px;min-height:88px;padding:17px 19px;box-shadow:0 9px 30px #04111b4f;transition:transform .18s,border-color .18s,background .18s}
.main-link:hover{transform:translateY(-2px);border-color:#79d1f8;background:#1a3348}
.main-link-accent{background:linear-gradient(105deg,#145b88,#177bb1);border-color:#54b7e9}
.link-icon{height:48px;width:48px;min-width:48px;display:grid;place-items:center;border-radius:14px;background:#0d2940;color:#93d9ff;border:1px solid #437190;font-weight:800;font-family:Manrope;font-size:17px}
.main-link-accent .link-icon{background:#0b426b;border-color:#98e0ff;color:#d9f7ff}
.main-link>span:nth-child(2){display:block;flex:1;min-width:0}
.main-link strong{display:block;font-size:15px;line-height:1.35;letter-spacing:-.01em}
.main-link small{display:block;color:#adc9df;font-size:11px;margin-top:5px}
.main-link-accent small{color:#e6f6ff}
.arrow{font-size:24px;font-weight:400;color:#90d9ff}
.surface-section{border-top:1px solid #2a4056;padding:35px 0;scroll-margin-top:18px}
.eyebrow{font-size:10px;font-weight:800;letter-spacing:.22em;color:#65b8e4;margin-bottom:12px}
h2{font-size:clamp(24px,4.4vw,30px);letter-spacing:-.045em;line-height:1.25;margin:0 0 10px}
h3{font-size:18px;margin:0 0 15px}
.section-desc{color:var(--muted);font-size:13px;line-height:1.75;margin:0 0 21px}
.price-list{display:grid;gap:9px}
.price-card{display:flex;justify-content:space-between;align-items:center;gap:14px;background:#14263a;border:1px solid #2e455d;border-radius:13px;padding:15px 16px}
.price-card strong{font-size:14px;display:block}
.price-card .price-category{font-size:10px;color:#68badb;text-transform:uppercase;letter-spacing:.1em}
.price-card p{font-size:11px;color:var(--muted);margin:6px 0 0}
.price-amount{text-align:right;white-space:nowrap;color:#e8f8ff;font-size:13px;font-weight:800}
.price-amount small{display:block;font-weight:500;color:#a8c5dc;font-size:10px}
.fine{font-size:11px;line-height:1.7;color:#91a9bd;margin:17px 0 0}
.muted-state{background:#122336;color:#a7c0d0;padding:18px;border:1px dashed #3d5b70;border-radius:12px;font-size:13px}
.steps{margin:24px 0 0;padding:0;list-style:none}
.steps li{display:flex;gap:17px;padding:14px 0;border-bottom:1px solid #233a4e}
.steps li:last-child{border:0}
.steps li>span{font:700 13px Manrope;color:#6fc1eb;border:1px solid #305775;display:grid;place-items:center;width:37px;height:37px;min-width:37px;border-radius:12px;background:#102a41}
.steps strong{font-size:14px}
.steps p{margin:5px 0 0;font-size:12px;color:#abc1d4;line-height:1.7}
.stack-form{display:grid;gap:14px}
.stack-form label{display:grid;gap:7px;color:#d5e8f6;font-weight:600;font-size:12px}
.stack-form input:not([type=checkbox]):not([type=radio]),.stack-form select,.stack-form textarea,.staff-fields input,.staff-fields textarea,.staff-fields select{width:100%;background:#0d1b2c;border:1px solid #41607a;color:#eaf7ff;border-radius:12px;padding:13px 14px;min-height:49px;font-size:16px;outline-offset:1px}
.stack-form input::placeholder,.stack-form textarea::placeholder{color:#789ab0}
.stack-form textarea{resize:vertical}
.action-primary{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#2695d3;color:white;border:1px solid #73c9ef;border-radius:12px;padding:15px 19px;font-weight:800;min-height:54px;font-size:14px}
.action-primary:hover{background:#1a7db9}
.action-primary span{font-size:22px;font-weight:400}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.request-form{background:#132337;padding:21px;border:1px solid #3b546c;border-radius:16px;margin-top:20px}
.request-form>label{display:grid}
.consent-choice{padding:18px;border:1px solid #47627b;border-radius:12px;margin:0}
.consent-choice legend{font-weight:800;font-size:13px;padding:0 5px}
.consent-choice p{color:#aebfd0;font-size:12px;line-height:1.65;margin:4px 0 13px}
.consent-choice label{display:flex;align-items:flex-start;gap:11px;margin:10px 0;font-weight:500;line-height:1.5}
.consent-choice input{width:19px;height:19px;flex-shrink:0;accent-color:#40baff;margin:2px 0 0}
.legal-check{display:flex!important;align-items:flex-start;gap:10px!important;line-height:1.6}
.legal-check input{width:19px;height:19px;min-width:19px;accent-color:#40baff;margin-top:3px}
.auth-info{display:flex;justify-content:space-between;gap:15px;align-items:center;color:#b5daed;font-size:12px;background:#173249;padding:12px;border-radius:12px;word-break:break-word}
.text-button{background:transparent;border:0;color:#9cddff;text-decoration:underline;font-weight:700;white-space:nowrap}
#public-auth-status:not(:empty){font-size:12px;line-height:1.55;color:#b2e9ff;margin:14px 0;padding:12px;background:#19364c;border-radius:12px}
#public-auth-status.error{color:#ffc9bb;background:#432b32}
.case-card{border:1px solid #35546d;background:#13273a;border-radius:16px;padding:18px;margin:12px 0}
.case-card header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.case-card h3{font-size:15px;margin:0}
.case-card .case-date{color:#91afc3;font-size:11px}
.status-tag{border-radius:20px;background:#224862;border:1px solid #397a9e;color:#c6edff;font-size:11px;padding:5px 9px;font-weight:700}
.case-ref{font-size:11px;color:#8fb1c5;margin:5px 0 12px}
.progress-list{list-style:none;padding:0;margin:16px 0 0;border-left:1px solid #355a76}
.progress-list li{position:relative;padding:0 0 16px 18px}
.progress-list li:before{content:"";position:absolute;left:-5px;top:5px;width:9px;height:9px;background:#6fd0ff;border-radius:50%}
.progress-list strong{display:block;font-size:12px}
.progress-list small{display:block;color:#8db4c9;font-size:10px}
.progress-list p{font-size:12px;color:#bfd1e0;margin:5px 0 0}
.case-note{background:#0c2033;padding:12px;border-radius:10px;margin:12px 0 0;font-size:12px;color:#bdd4e4}
.case-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
.case-actions button,.case-actions a{border:1px solid #477899;background:#173b57;color:#ecf7ff;border-radius:10px;padding:10px 12px;font-size:12px;text-decoration:none;font-weight:700;min-height:42px}
.case-actions button:hover,.case-actions a:hover{background:#205b7e}
.case-actions .danger{color:#ffccbf;border-color:#854a43}
.public-footer{text-align:center;border-top:1px solid #2a4056;padding:40px 0 28px}
.footer-logo{font-weight:800;font-size:24px;letter-spacing:.06em;font-family:Manrope;color:#fff}
.footer-logo span{color:#66c7ff}
.public-footer>p{color:#98b0c1;font-size:12px}
.public-footer a{color:#74cbff}
.footer-contact{margin:15px auto;color:#bdd3e4;font-size:12px;display:grid;gap:8px}
#business-legal{margin:16px auto;border-top:1px solid #284057;padding-top:15px}
[hidden]{display:none!important}
@media(max-width:540px){.bio-wrap{padding:0 16px 26px}.intro{padding:45px 0 26px}.wordmark img{width:230px}.main-link{padding:14px;min-height:83px;gap:12px}.link-icon{height:44px;width:44px;min-width:44px}.form-grid{grid-template-columns:1fr}.request-form{padding:16px}.price-amount{white-space:normal;max-width:120px}.surface-section{padding:30px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.main-link{transition:none}}

.network-status{padding:12px 18px;text-align:center;background:#633a26;color:#ffe0b1;font-weight:700;font-size:12px;border-bottom:1px solid #d49563}

.posting-form{display:grid;gap:10px;background:#102d43;border:1px solid #42657f;border-radius:12px;padding:12px;margin:13px 0}.posting-form label{display:grid;gap:7px;color:#c3e4f8;font-size:12px;font-weight:700}.posting-form input{width:100%;min-height:44px;border:1px solid #66869d;border-radius:8px;background:#0b1c2c;color:#fff;padding:10px;font-size:15px}.posting-form button{min-height:44px;border:1px solid #76c9f1;background:#2177ab;color:white;font-weight:700;border-radius:9px;padding:10px}

/* Orçamento real mostrado apenas ao cliente autenticado */
.case-quote-client{border:1px solid #42708c;background:#0e2a40;padding:16px;border-radius:13px;margin:16px 0}
.case-quote-client h4{margin:0 0 10px;font-size:17px;color:#eaf8ff;font-weight:800}
.case-quote-client p{margin:12px 0;color:#b9d0e2;font-size:12px;line-height:1.7}
.case-quote-client .status-tag{display:inline-flex;margin:0 0 9px}
.case-quote-client table{width:100%;border-collapse:collapse;min-width:350px;font-size:12px}
.case-quote-client th{text-align:left;color:#a4c5d9;font-size:11px}
.case-quote-client td,.case-quote-client th{padding:8px 7px;border-bottom:1px solid #385672}
.case-quote-client .scroll{max-width:100%;overflow-x:auto}
.quote-customer-totals{border-top:1px solid #426781;margin:14px 0;padding:10px 0}
.quote-customer-totals strong{color:#e1faff;font-size:15px}
.quote-customer-due{color:#ffdbad!important;padding:12px;background:#3d2f29;border-radius:9px}
.quote-customer-paid{color:#a4f0c5!important}
.quote-receipts{padding-left:18px;color:#a6c9e1;font-size:11px}
.quote-accept-check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;margin-top:13px;color:#e2efff}
.quote-accept-check input{width:20px;height:20px;min-width:20px;accent-color:#4fc5ff;margin-top:1px}
.quote-decision-form button{flex:1;min-height:44px}
@media(max-width:540px){.case-quote-client{padding:12px}.quote-decision-form .case-actions{flex-direction:column}.quote-decision-form button{width:100%}}
