/* Paleta efetiva da pagina: azul-noite e coral.
   A vitrine clara antiga foi descontinuada; manter uma so fonte de cores. */
:root{
  color-scheme:dark;
  --sand:#0d1422; --cream:#172437; --paper:#1b2b40; --ink:#f3eee9;
  --muted:#b0bece; --line:#38475b; --navy:#162b43; --navy-soft:#244865;
  --coral:#efa68b; --blue:#9ac7e0; --lilac:#8e83bb; --mint:#d0e6d8;
  --radius:26px; --max:1232px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:94px}
body{margin:0;color:var(--ink);background:var(--sand);font-family:"DM Sans",system-ui,-apple-system,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
.shell{width:min(var(--max),calc(100% - 8vw));margin-inline:auto}
.mono,.eyebrow,.step-kicker{font-family:"JetBrains Mono",monospace;letter-spacing:.075em;font-size:.68rem}
.eyebrow,.step-kicker{color:var(--coral);font-weight:600;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{letter-spacing:-.055em}
h1 em,h2 em,.floating-sticker em{font-family:"Instrument Serif",Georgia,serif;font-weight:400}
h1 em{color:var(--coral)}
h2 em{color:var(--blue)}
p{line-height:1.7}
:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.skip{position:absolute;top:-100px;left:20px;z-index:200;padding:12px 16px;color:white;background:var(--navy)}
.skip:focus{top:10px}
.topbar{height:80px;padding:0 4vw;display:flex;align-items:center;gap:28px;position:relative;z-index:5;border-bottom:1px solid rgba(35,35,35,.08);background:rgba(255,251,245,.8);backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand-symbol{width:54px;height:44px;display:grid;place-items:center;font-size:1.07rem;font-weight:800;color:white;background:linear-gradient(135deg,var(--navy),#24506b);border-radius:13px;letter-spacing:-.1em}
.brand-symbol span{color:#f3ad8e}
.brand-label{display:grid;gap:1px}
.brand-label strong{font-size:.95rem;letter-spacing:-.035em;white-space:nowrap}
.brand-label small{font-size:.58rem;font-family:"JetBrains Mono",monospace;color:var(--coral);letter-spacing:.12em;white-space:nowrap}
.topbar nav{margin-left:auto;display:flex;align-items:center;gap:28px;color:#59616b;font-size:.85rem}
.topbar nav a:hover,.portfolio-return:hover{color:var(--coral)}
.portfolio-return{border:1px solid var(--line);padding:12px 16px;border-radius:999px;font-size:.82rem;white-space:nowrap}
.btn{border:1px solid transparent;min-height:52px;display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:13px 22px;border-radius:14px;font-weight:700;line-height:1.3;text-align:center;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.btn span{font-size:1.12rem}
.btn:hover{transform:translateY(-2px)}
.btn-dark{background:var(--navy);color:#fff;box-shadow:0 16px 28px rgba(20,46,66,.13)}
.btn-dark:hover{background:#23516d}
.btn-outline{border-color:#bfc2bf;background:transparent;color:var(--navy)}
.btn-outline:hover{border-color:var(--navy);background:rgba(255,255,255,.62)}
.btn-small{padding:11px 14px;min-height:44px;font-size:.82rem}
.btn-quiet{background:rgba(255,255,255,.65);border-color:#d6c5bb;color:var(--ink)}
.referral-banner{width:min(var(--max),calc(100% - 8vw));margin:25px auto 0;padding:20px 25px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;border:1px solid #e1bfa5;border-radius:22px;background:#ffe5d4;box-shadow:0 18px 50px rgba(78,58,40,.07)}
.referral-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#803e38;background:#ffd0b4;font-size:1.8rem}
.referral-banner .eyebrow{margin-bottom:6px;font-size:.62rem}
.referral-banner strong{display:block;font-size:1.02rem;line-height:1.4}
.referral-banner p:last-child{margin:5px 0 0;font-size:.79rem;color:#66544c;line-height:1.5}
.referral-actions{display:flex;gap:8px;flex-wrap:wrap}
.hero{min-height:650px;display:grid;grid-template-columns:1fr .94fr;align-items:center;gap:5vw;padding-block:88px 86px}
.hero .eyebrow{display:flex;align-items:center;gap:12px}
.eyebrow-line{width:26px;height:2px;background:var(--coral)}
.hero h1{font-size:clamp(3.35rem,5.7vw,6.75rem);line-height:.99;margin:26px 0 26px;font-weight:600}
.hero-copy>p{font-size:clamp(.99rem,1.35vw,1.12rem);color:var(--muted);max-width:540px;line-height:1.85}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:29px}
.hero-footnote{margin-top:28px;display:flex;align-items:center;gap:10px;font-size:.76rem;color:#697078}
.pulse{width:8px;height:8px;background:#57a885;border-radius:50%;box-shadow:0 0 0 5px rgba(90,161,115,.12)}
.section-intro{margin-bottom:34px}
.section-intro h2{font-size:clamp(2.7rem,4.75vw,4.9rem);line-height:1.07;margin:14px 0 18px;font-weight:600}
.section-intro p{color:var(--muted);max-width:620px;margin:0}
.how{padding-block:108px 98px}
.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.how-steps article{border-top:1px solid #c5c2bf;padding:26px 20px 10px 0}
.how-steps span{font-family:"JetBrains Mono",monospace;color:var(--coral);font-size:.61rem}
.how-steps h3{font-size:1.5rem;margin:24px 0 12px}
.how-steps p{color:var(--muted);max-width:265px;font-size:.93rem}
.wizard-section{padding:88px 0 95px;background:linear-gradient(135deg,#efe3d8 0%,#ebe8e8 75%,#e6e2df 100%);border-top:1px solid #ded6cd;border-bottom:1px solid #d9d3ce}
.wizard-header{max-width:730px;margin-bottom:45px}
.wizard-header h2{font-size:clamp(3rem,5.5vw,5.7rem);line-height:1.08;margin:14px 0 14px}
.wizard-header p{color:var(--muted)}
.progress{display:flex;align-items:center;gap:18px;margin-top:26px;max-width:540px}
.progress-track{display:block;flex:1;height:5px;border-radius:999px;background:#d7cbc4;overflow:hidden}
.progress-track>span{display:block;width:33.333%;height:100%;background:var(--coral);transition:width .3s ease}
.progress>.mono{color:#866b62}
.wizard-layout{display:grid;grid-template-columns:minmax(0,1.13fr) minmax(300px,.87fr);gap:22px;align-items:start}
.wizard-main,.preview-panel{min-width:0}
.wizard-panel{min-height:555px;background:#fffdf9;border:1px solid #e3dbd4;border-radius:var(--radius);padding:clamp(20px,3.25vw,42px);box-shadow:0 24px 56px rgba(32,36,43,.05)}
.wizard-panel h3{font-size:clamp(2rem,3vw,3rem);line-height:1.1;margin:13px 0}
.wizard-panel>p{color:var(--muted);font-size:.91rem;margin-bottom:28px}
.step-kicker{display:block;color:#a36d62;font-size:.59rem}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.choice{min-width:0;min-height:175px;position:relative;padding:21px 20px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:1px solid #e4ddd7;border-radius:17px;background:#faf7f2;transition:transform .18s,border-color .18s,background .18s}
.choice:hover,.choice:focus-visible{border-color:#b98b77;background:#fff1e9;transform:translateY(-2px)}
.choice-icon{width:36px;height:36px;border-radius:10px;background:#efe6df;color:#ab644f;display:grid;place-items:center;font-size:1.15rem;margin-bottom:14px}
.choice strong{font-size:.99rem;line-height:1.3;padding-right:15px}
.choice small{color:#6d7377;font-size:.77rem;line-height:1.5;margin-top:7px}
.choice-arrow{position:absolute;right:17px;top:17px;color:#c07359}
.choice-wide{grid-column:1/-1;min-height:114px;display:grid;grid-template-columns:40px 1fr auto;column-gap:12px;align-items:center;align-content:center}
.choice-wide .choice-icon{grid-row:1/3;margin:0}
.choice-wide small{grid-column:2;margin-top:1px}
.choice-wide .choice-arrow{position:static;grid-column:3;grid-row:1/3}
.option-fieldset{border:0;padding:0;margin:0 0 26px;min-width:0}
.option-fieldset legend{padding:0 0 13px;font-weight:700;font-size:.94rem;line-height:1.5}
.optional{font-size:.75rem;color:#7c858a;font-weight:400}
.type-list{display:grid;gap:8px}
.type-option{display:flex;gap:12px;align-items:center;border:1px solid #e5ddd6;border-radius:12px;background:#faf8f5;padding:13px 15px;cursor:pointer}
.type-option input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--coral)}
.type-option span{display:grid;gap:2px}
.type-option strong{font-size:.9rem;font-weight:600}
.type-option small{font-size:.75rem;color:#68717b}
.type-option:has(input:checked){border-color:#bd7961;background:#fff0e8}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.feature-grid label{display:flex;align-items:center;gap:9px;min-height:50px;border:1px solid #e8e0d8;border-radius:11px;background:#fcfaf7;padding:10px;cursor:pointer;font-size:.8rem}
.feature-grid label:has(input:checked){background:#e8f0ee;border-color:#8eaaa9}
.feature-grid input{accent-color:#457b80;width:17px;height:17px;flex:0 0 auto}
.feature-grid label>span{font-size:1rem;color:var(--coral)}
.field{display:grid;gap:8px;margin:20px 0;font-size:.88rem;font-weight:600}
.field small{color:#899198;font-weight:400}
.field b{color:var(--coral)}
.field input,.field textarea{display:block;width:100%;min-height:52px;padding:14px 15px;border-radius:12px;border:1px solid #d9d6d4;background:#fff;color:var(--ink);font-size:1rem;line-height:1.4}
.field textarea{resize:vertical;min-height:96px}
.field input:focus,.field textarea:focus{border-color:var(--blue);outline:3px solid rgba(78,133,168,.15)}
.maintenance-note{padding:20px;border-radius:13px;background:#f1f5f6;border:1px solid #d7e3e7;margin:17px 0}
.maintenance-note p{margin:6px 0 0;font-size:.85rem;color:#5d6670}
.wizard-buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.wizard-buttons .btn{min-height:49px;font-size:.86rem}
.wizard-buttons .btn-dark{flex:1}
.summary-box{padding:20px;border:1px solid #d7ddd8;border-radius:14px;background:#f3f7f4;margin:21px 0}
.summary-box h4{font-size:1.06rem;letter-spacing:-.02em;margin:0 0 12px}
.summary-box dl{display:grid;grid-template-columns:105px 1fr;gap:10px;font-size:.84rem;margin:0}
.summary-box dt{color:#63716e}
.summary-box dd{margin:0;line-height:1.5;overflow-wrap:anywhere}
.summary-referral{padding:13px 15px;background:#ffe4d4;border-radius:9px;color:#914a32;font-size:.8rem;line-height:1.5}
.form-fineprint{font-size:.73rem;color:#70787c;margin-top:17px}
.form-error{color:#9f3830;font-size:.83rem;margin-bottom:0}
.talk-anyway{margin:28px 0 0;font-size:.86rem;text-align:center;color:#66727a}
.talk-anyway a{color:#205574;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.real-projects{padding-block:102px 108px}
.cases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.case-card{border:1px solid var(--line);overflow:hidden;border-radius:22px;background:#fffdfa}
.case-picture{height:280px;padding:24px 24px 0;background:linear-gradient(130deg,#ede1da,#dfe7e5);overflow:hidden}
.case-picture img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 15px 20px rgba(0,0,0,.16))}
.case-info{padding:25px 28px}
.case-info .eyebrow{font-size:.59rem}
.case-info h3{font-size:1.85rem;margin:11px 0}
.case-info p{color:var(--muted);font-size:.89rem}
.case-info a{font-size:.88rem;font-weight:700;color:#2a6180;border-bottom:1px solid #9dbdcc;padding-bottom:4px}
.footer{padding:30px 0 45px;border-top:1px solid #d7d3d1;display:flex;justify-content:space-between;align-items:center;gap:25px;color:#6b7379;font-size:.77rem;flex-wrap:wrap}
.footer-logo{color:var(--navy);font-weight:800;letter-spacing:-.02em}
@media(max-width:1100px){
  .hero{gap:25px}
  .topbar nav{gap:16px}
  .referral-banner{grid-template-columns:auto 1fr}
  .referral-actions{grid-column:2}
  .wizard-layout{grid-template-columns:minmax(0,1fr) minmax(290px,.87fr)}
}
@media(max-width:900px){
  .topbar nav{display:none}
  .portfolio-return{margin-left:auto}
  .hero{grid-template-columns:1fr;min-height:auto;padding:75px 0}
  .hero-copy{max-width:700px}
  .wizard-layout{grid-template-columns:1fr}
  .how-steps{gap:14px}
}
@media(max-width:640px){
  .shell,.referral-banner{width:calc(100% - 34px)}
  .topbar{padding:0 17px;height:70px;gap:12px}
  .brand-symbol{width:43px;height:42px;font-size:.9rem}
  .brand-label strong{font-size:.79rem}
  .brand-label small{font-size:.46rem}
  .portfolio-return{font-size:.74rem;padding:10px 12px}
  .referral-banner{grid-template-columns:1fr;padding:20px;gap:9px}
  .referral-icon{width:38px;height:38px;font-size:1.35rem}
  .referral-actions{grid-column:auto}
  .referral-actions .btn{flex:1}
  .hero{padding:54px 0 55px}
  .hero h1{font-size:clamp(2.85rem,13vw,5rem);margin:22px 0}
  .hero-copy>p{line-height:1.7;font-size:.98rem}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .btn{width:100%}
  .how{padding:70px 0 66px}
  .how-steps{grid-template-columns:1fr;gap:5px}
  .how-steps article{padding:21px 0 8px}
  .how-steps h3{margin:12px 0 6px}
  .how-steps p{max-width:none}
  .wizard-section{padding:67px 0}
  .wizard-header{margin-bottom:30px}
  .wizard-panel{min-height:0;padding:20px 17px}
  .choice-grid{gap:9px}
  .choice{min-height:171px;padding:14px}
  .choice strong{font-size:.87rem}
  .choice small{font-size:.72rem}
  .choice-wide{min-height:100px;grid-template-columns:32px 1fr auto}
  .feature-grid{grid-template-columns:1fr}
  .type-option{padding:11px}
  .wizard-buttons{display:grid;grid-template-columns:1fr;gap:9px}
  .wizard-buttons .btn{width:100%}
  .summary-box dl{grid-template-columns:1fr;gap:4px}
  .summary-box dt:not(:first-child){margin-top:10px}
  .cases{grid-template-columns:1fr}
  .case-picture{height:210px}
  .case-info{padding:22px}
  .real-projects{padding:70px 0}
  .footer{padding:26px 0 40px;gap:10px}
}
@media(max-width:370px){
  .brand-label strong{font-size:.74rem}
  .portfolio-return{font-size:.68rem;padding:9px}
  .choice-grid{grid-template-columns:1fr}
  .choice{min-height:120px}
  .choice-icon{margin-bottom:9px}
  .choice-wide{grid-column:auto;display:flex}
  .choice-wide .choice-icon{margin-bottom:9px}
  .choice-wide .choice-arrow{position:absolute;right:15px;top:15px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}


/* ===============================================================
   IDENTIDADE NOITE AZUL — continuidade visual com o portfólio.
   Substitui os fundos claros por azul-marinho e grafite aconchegantes,
   reservando coral e azul suave para ações e destaques.
   =============================================================== */

body{
  color:var(--ink);
  background:
    radial-gradient(circle at 88% 8%,rgba(73,112,157,.17),transparent 27%),
    radial-gradient(circle at 7% 30%,rgba(179,105,112,.08),transparent 30%),
    #0d1422;
}
.eyebrow,.step-kicker{color:#eeb39b}
h1 em,.sample-hero strong i{color:#f1aa8e}
h2 em{color:#a6d2ed}
.topbar{
  background:rgba(12,21,35,.94);
  border-bottom:1px solid #26364b;
}
.brand-symbol{
  width:54px;height:54px;padding:3px;
  object-fit:contain;display:block;
  background:#101d2f;
  border:1px solid #34465c;
  border-radius:14px;
}
.brand-label small{color:#f5b19b}
.topbar nav{color:#bfccd7}
.topbar nav a:hover,.portfolio-return:hover{color:#f2b19b}
.portfolio-return{color:#e1e6ed;border-color:#4b5870}
.btn-dark{
  color:#101824;
  background:#e6a88f;border-color:#e6a88f;
  box-shadow:0 14px 28px rgba(0,0,0,.22);
}
.btn-dark:hover{color:#0c1725;background:#f4bba5;border-color:#f4bba5}
.btn-outline{color:#eaf0f5;background:rgba(29,50,71,.34);border-color:#60748c}
.btn-outline:hover{color:#fff;background:#253c56;border-color:#98b3c9}
.btn-quiet{background:#233449;border-color:#55657a;color:#f3ece7}
.referral-banner{
  background:linear-gradient(110deg,#302635,#253147);
  border-color:#765a62;
  box-shadow:0 18px 45px rgba(0,0,0,.15);
}
.referral-icon{background:#573b44;color:#ffd2ba}
.referral-banner p:last-child{color:#cfc2c8}
.referral-banner strong{color:#fff0e7}
.hero-copy>p{color:#b9c7d4}
.hero-footnote{color:#a3b4c4}
.how{padding-bottom:85px}
.how-steps{align-items:start}
.how-step{
  min-width:0;min-height:184px;
  border:1px solid #32435b;border-radius:18px;
  background:#15243a;overflow:hidden;
  transition:border-color .2s ease,background .2s ease;
}
.how-step:hover,.how-step[open]{border-color:#627b98;background:#1a2c44}
.how-step>summary{display:block;cursor:pointer;list-style:none;min-height:176px;padding:24px;position:relative}
.how-step>summary::-webkit-details-marker{display:none}
.how-step>summary span{color:#eeb199}
.how-step>summary h3{margin:19px 0 10px;color:#f6f1eb}
.how-step>summary p{margin:0;color:#b1c0d0;line-height:1.6}
.how-prompt{display:block;margin-top:18px;color:#d5e2ec;font-size:.69rem;font-weight:600}
.how-prompt b{float:right;font-size:1rem;color:#efa68b;transition:transform .2s}
.how-step[open] .how-prompt b{transform:rotate(90deg)}
.how-detail{border-top:1px solid #34475b;padding:17px 24px 22px;background:#1b2b42}
.how-detail p{color:#c3d0dc;font-size:.86rem;margin:0 0 14px}
.how-detail a{display:inline-flex;padding:8px 0;color:#f8b9a0;border-bottom:1px solid #875d58;font-weight:700;font-size:.81rem}
.wizard-section{
  background:linear-gradient(145deg,#102136 0%,#17253a 58%,#1c2639 100%);
  border-top:1px solid #30435a;border-bottom:1px solid #34435b;
}
.wizard-header p,.section-intro p,.last-call p{color:#bcc9d5}
.progress-track{background:#31435c}
.progress-track>span{background:#edab91}
.progress>.mono{color:#b8bdca}
.wizard-panel{
  background:#19283b;border-color:#3b4d63;
  box-shadow:0 25px 55px rgba(0,0,0,.13);
}
.wizard-panel>p{color:#b7c5d3}
.step-kicker{color:#f1b39d}
.choice{
  color:#f7f2ee;border-color:#41536b;
  background:#21334a;
}
.choice:hover,.choice:focus-visible,.choice.selected{
  color:#fff5ef;border-color:#e7a48d;background:#2a3e55;
  box-shadow:inset 0 0 0 1px rgba(237,171,145,.11);
}
.choice-icon{background:#35445c;color:#f4b39c}
.choice small{color:#b9c7d4}
.choice-arrow{color:#f3b49a}
.type-option,.feature-grid label{
  background:#213249;border-color:#43546b;color:#f2f0ec;
}
.type-option:has(input:checked),.feature-grid label:has(input:checked){
  background:#274358;border-color:#9cbed4;
}
.type-option small{color:#adbfce}
.type-option input{accent-color:#eaa289}
.feature-grid input{accent-color:#94cce4}
.feature-grid label>span{color:#f2b69d}
.field small,.optional{color:#b0bdcb}
.field input,.field textarea{
  background:#122034;color:#f3eee8;
  border-color:#55647b;
}
.field input::placeholder,.field textarea::placeholder{color:#8da0b1;opacity:1}
.field input:focus,.field textarea:focus{
  border-color:#98c6e3;outline:3px solid rgba(117,185,224,.17);
}
.maintenance-note{background:#21394a;border-color:#4a6980}
.maintenance-note p{color:#b8cada}
.wizard-buttons .btn-outline{color:#f0edf0}
.summary-box{background:#203547;border-color:#527083}
.summary-box dt{color:#a9c1cf}
.summary-box dd{color:#f1eee9}
.summary-referral{background:#3e3040;color:#ffd1b8;border:1px solid #765867}
.form-fineprint,.quick-hint{color:#adbdcc}
.form-error{color:#ffb1a6}
.talk-anyway{color:#c0cfdb}
.talk-anyway a{color:#abd6f1}
.case-card{background:#17263a;border-color:#3a4f65}
.case-picture{background:linear-gradient(130deg,#26394f,#182b3e)}
.case-info p{color:#b6c5d1}
.case-info a{color:#a9d8ee;border-color:#53738d}
.footer{color:#aebac8;border-top-color:#364960}
.footer-logo{color:#f1d8cb}

/* Cartão aberto no próprio passo 1, sem navegação ou recarga. */
.choice-detail{
  margin-top:23px;
  padding:clamp(20px,3vw,28px);
  border-radius:19px;
  border:1px solid #64839d;
  background:linear-gradient(145deg,#213950,#1b2b42);
  box-shadow:0 19px 35px rgba(0,0,0,.15);
  animation:choiceAppear .25s ease-out both;
}
@keyframes choiceAppear{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:translateY(0)}
}
.choice-detail-head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.choice-detail-spark{font-size:1.55rem;color:#efb29b}
.choice-detail h4{
  font-size:clamp(1.65rem,2.7vw,2.45rem);line-height:1.14;
  letter-spacing:-.045em;margin:16px 0 12px;color:#fff4ee;
}
.choice-detail>p{color:#c5d4e1;font-size:.9rem;margin-bottom:15px}
.choice-detail ul{display:grid;gap:9px;padding:0;margin:0 0 23px;list-style:none}
.choice-detail li{font-size:.83rem;color:#d9e4ed;line-height:1.5;display:flex;gap:9px}
.choice-detail li::before{content:"✦";color:#f2b8a1;flex:0 0 auto}
.choice-detail-actions{display:flex;flex-wrap:wrap;gap:9px}
.choice-detail-actions .btn{font-size:.81rem;min-height:50px}
.orientation-quick{margin-top:14px}
.message-paper{
  margin:15px 0 18px;padding:20px 22px;
  border:1px solid #7e7584;border-radius:11px;
  background:linear-gradient(180deg,#303949,#263345);
  box-shadow:0 12px 24px rgba(0,0,0,.13);
}
.message-paper .mono{font-size:.59rem;color:#f0baa9}
.message-paper p{
  margin:17px 0;white-space:pre-line;overflow-wrap:anywhere;
  font-size:1rem;line-height:1.75;color:#fbf1e9;
}
.message-signoff{font-family:"Instrument Serif",serif;font-style:italic;color:#c3cfda;font-size:.91rem}
.orientation-quick>.btn{width:100%;margin-bottom:12px}
.quick-hint{font-size:.75rem;line-height:1.6;margin:0}
@media(max-width:900px){
  .how-step{min-height:0}
  .how-step>summary{min-height:0}
}
@media(max-width:640px){
  .brand-symbol{width:43px;height:43px}
  .choice-detail{padding:19px;margin-top:18px}
  .choice-detail-actions{display:grid;grid-template-columns:1fr}
  .choice-detail-actions .btn{width:100%}
  .how-step>summary{padding:21px}
  .how-detail{padding:18px 21px}
  .message-paper{padding:16px}
}
@media(prefers-reduced-motion:reduce){
  .choice-detail{animation:none}
}

/* Conversão primeiro: o visitante encontra o configurador logo após a oferta.
   A vitrine ilustrativa e a faixa de benefícios foram removidas do HTML. */
.hero{
  display:block;
  min-height:0;
  padding-block:clamp(42px,5.5vw,74px) clamp(44px,5vw,68px);
}
.hero-copy{max-width:920px}
.hero h1{
  font-size:clamp(3.1rem,6vw,6.4rem);
  max-width:880px;
}
.hero-copy>p{max-width:690px}
.hero-footnote{color:#b3c0cd}
@media(max-width:640px){
  .hero{padding-block:42px 43px}
  .hero h1{font-size:clamp(2.8rem,12.3vw,4.9rem)}
  .hero-copy>p{max-width:100%}
}
@media(max-width:640px){
}

/* ======================================================
   CARDS RESPONSIVOS + CONVERSA RÁPIDA PERSONALIZADA
   Responder aos cards não exige finalizar o configurador.
   ====================================================== */
.wizard-main{container-type:inline-size}
.choice-grid .choice{
  min-width:0;
  height:100%;
}
.choice.selected{
  border-color:#edb197;
  box-shadow:0 0 0 1px rgba(241,183,159,.22),0 12px 26px rgba(0,0,0,.1);
}
.choice-detail{scroll-margin-top:22px}
.choice-detail h4:focus{outline:none}
.choice-detail ul:empty{display:none}
.choice-detail>p{line-height:1.7}
.quick-fields{
  margin-top:22px;
  padding-top:19px;
  border-top:1px solid rgba(155,184,210,.24);
}
.quick-fields-intro{
  margin:0 0 17px;
  font-size:.88rem;
  color:#d1deea;
  line-height:1.65;
}
.quick-fields .field{margin:15px 0}
.quick-fields .field span{
  font-size:.9rem;
  color:#f6f1ed;
}
.quick-fields .field input,
.quick-fields .field textarea{
  width:100%;
  border-radius:12px;
  background:#15283d;
  border-color:#597089;
}
.quick-fields .field input:focus,
.quick-fields .field textarea:focus{
  border-color:#b3d6ec;
}
.quick-fields .message-paper{
  margin:19px 0;
  border:1px solid #627488;
  background:linear-gradient(138deg,#344459,#24354b);
}
.quick-fields .message-paper p{
  font-size:.92rem;
  line-height:1.75;
  white-space:pre-wrap;
}
.choice-detail-actions .btn{
  white-space:normal;
  flex:1 1 210px;
}
.choice-detail-actions .btn-dark{
  background:#edaa90;
  color:#152336;
}
.choice-detail-actions .btn-dark:hover{background:#fac8b4}
.choice-detail .quick-hint{
  margin-top:13px;
  color:#bbcddd;
}
.orientation-quick{
  border-top:1px solid rgba(155,184,210,.24);
  padding-top:17px;
}
.orientation-quick .message-paper{
  border-color:#8e7180;
  background:linear-gradient(145deg,#3c3c51,#263449);
}
.orientation-quick .message-paper p{font-size:1.01rem}
[data-path="orientacao"] .choice-icon{
  color:#ffd1b8;
  background:#564454;
}
/* Evita textos comprimidos dentro do painel à esquerda do mockup. */
@container(max-width:510px){
  .choice-grid{grid-template-columns:minmax(0,1fr)}
  .choice-grid .choice{
    min-height:104px;
    padding:18px 19px;
  }
  .choice-wide{
    grid-column:1;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:center;
    gap:0;
  }
  .choice-wide .choice-icon{margin-bottom:12px}
  .choice-wide small{margin-top:7px}
  .choice-wide .choice-arrow{
    position:absolute;
    right:17px;
    top:17px;
  }
}
@media(max-width:740px){
  .choice-grid{grid-template-columns:1fr}
  .choice-grid .choice{
    min-height:104px;
    padding:19px;
  }
  .choice-wide{grid-column:1}
  .choice-detail-actions{display:grid;grid-template-columns:1fr}
  .choice-detail-actions .btn{width:100%}
  .choice-detail ul{gap:9px}
}
@media(max-width:370px){
  .choice-wide{display:flex;flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){
  .choice,.choice-detail{transition:none;animation:none}
}

/* --------------------------------------------------------
   ORÇAMENTO EM UMA COLUNA + PRÉVIA ILUSTRATIVA NO FINAL
   No desktop ocupa a área total; no celular, modal quase full-screen.
-------------------------------------------------------- */
.wizard-layout{display:block;max-width:1020px;margin-inline:auto}
.wizard-main{width:100%;min-width:0}
.wizard-panel{min-height:0}
.wizard-header{max-width:950px}
.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.choice-grid .choice{min-height:145px}
.choice-grid .choice-wide{min-height:112px;grid-column:1/-1}
.quick-fields .field{margin:15px 0}
.quick-fields .field:first-of-type{margin-top:19px}
.quick-fields .message-paper{margin-top:22px}
.plain-confirmation{
  margin-top:24px;
  border:1px solid #607d94;
  border-radius:17px;
  padding:clamp(19px,3vw,30px);
  background:linear-gradient(135deg,#1c344a,#26364a);
}
.plain-confirmation h4{
  font-size:clamp(1.6rem,2.8vw,2.3rem);
  line-height:1.1;letter-spacing:-.04em;margin:13px 0;
}
.plain-confirmation>p{font-size:.88rem;color:#d0dee9}
.plain-confirmation .message-paper p{white-space:pre-wrap;overflow-wrap:anywhere}
.plain-confirmation .btn{width:100%}

/* Pop-up acessível, com possibilidade de editar ou enviar. */
.site-preview-dialog{
  box-sizing:border-box;
  width:min(890px,calc(100% - 32px));
  max-width:none;
  max-height:calc(100dvh - 34px);
  padding:0;
  margin:auto;
  border:1px solid #62758b;
  border-radius:24px;
  background:#101d2d;
  color:#f8f3eb;
  overflow-y:auto;
  overflow-x:hidden;
  box-shadow:0 38px 100px rgba(0,0,0,.54);
}
.site-preview-dialog::backdrop{
  background:rgba(2,8,19,.83);
  backdrop-filter:blur(8px);
}
.site-preview-inner{padding:clamp(18px,3.8vw,34px)}
.site-preview-heading{
  display:flex;align-items:flex-start;justify-content:space-between;
  gap:12px;margin-bottom:23px;
}
.site-preview-heading h2{
  margin:9px 0 0;
  font-size:clamp(2rem,4vw,3.65rem);
  letter-spacing:-.055em;line-height:1.05;
}
.site-preview-heading h2 em{color:#f2af96}
.site-preview-close{
  display:grid;place-items:center;flex:0 0 auto;
  height:44px;width:44px;border:1px solid #657c93;
  border-radius:50%;background:#24364c;color:#f2eae4;font-size:1.12rem;
}
.site-preview-close:hover{background:#39536d}
.demo-site{
  --demo-bg:#162d40;
  --demo-surface:#213a50;
  --demo-accent:#e5b09a;
  --demo-fg:#f6f0e8;
  --demo-muted:#cad5dc;
  width:100%;
  border:1px solid #455d73;
  border-radius:16px;
  background:var(--demo-bg);
  color:var(--demo-fg);
  overflow:hidden;
}
.demo-site[data-demo-theme="barbearia"]{
  --demo-bg:#171c22;--demo-surface:#2a2d30;--demo-accent:#dcc094;--demo-fg:#f4ead7;--demo-muted:#c9c5bc
}
.demo-site[data-demo-theme="fotografia"]{
  --demo-bg:#282333;--demo-surface:#3c354b;--demo-accent:#e9bbcf;--demo-fg:#f8eef1;--demo-muted:#d5c7d6
}
.demo-site[data-demo-theme="beleza"]{
  --demo-bg:#392c3a;--demo-surface:#4b3b4d;--demo-accent:#f2bdce;--demo-fg:#fff3f6;--demo-muted:#e8d1dc
}
.demo-site[data-demo-theme="veterinaria"]{
  --demo-bg:#173732;--demo-surface:#245147;--demo-accent:#b7dec2;--demo-fg:#f0fbf6;--demo-muted:#d4e6df
}
.demo-site[data-demo-theme="alimentacao"]{
  --demo-bg:#35221e;--demo-surface:#503126;--demo-accent:#f4be8a;--demo-fg:#fff5e8;--demo-muted:#efd5be
}
.demo-site[data-demo-theme="comercio"]{
  --demo-bg:#1b3043;--demo-surface:#294662;--demo-accent:#e3bda6;--demo-fg:#f7f2e9;--demo-muted:#cdddeb
}
.demo-site[data-demo-theme="fitness"]{
  --demo-bg:#132d38;--demo-surface:#23505b;--demo-accent:#c0de9c;--demo-fg:#f1f8ec;--demo-muted:#c6d9db
}
.demo-site[data-demo-theme="saude"]{
  --demo-bg:#183443;--demo-surface:#245063;--demo-accent:#b8dbec;--demo-fg:#effbff;--demo-muted:#cce1e8
}
.demo-site[data-demo-theme="educacao"]{
  --demo-bg:#27304c;--demo-surface:#394867;--demo-accent:#ffcc91;--demo-fg:#f9f4e9;--demo-muted:#d8d9e9
}
.demo-site[data-demo-theme="eventos"]{
  --demo-bg:#322840;--demo-surface:#4b3a5a;--demo-accent:#e1bddf;--demo-fg:#fcf1fb;--demo-muted:#decbe0
}
.demo-browser{
  display:flex;justify-content:space-between;gap:12px;
  padding:12px 19px;
  font-family:"JetBrains Mono",monospace;
  font-size:.61rem;letter-spacing:.04em;
  color:var(--demo-muted);
  background:rgba(0,0,0,.17);
  border-bottom:1px solid rgba(255,255,255,.1);
}
.demo-browser>span:first-child{color:var(--demo-accent);white-space:nowrap}
.demo-main{padding:clamp(18px,3.5vw,34px)}
.demo-navbar{
  display:flex;align-items:center;gap:12px;
  padding-bottom:20px;border-bottom:1px solid rgba(255,255,255,.13);
}
.demo-icon{
  display:grid;place-items:center;flex:0 0 auto;
  width:43px;height:43px;border-radius:12px;
  border:1px solid rgba(255,255,255,.16);
  color:var(--demo-accent);background:var(--demo-surface);
  font-size:1.45rem;
}
.demo-navbar strong{
  font-size:clamp(.97rem,2vw,1.25rem);
  font-weight:700;letter-spacing:-.03em;
  overflow-wrap:anywhere;min-width:0;
}
.demo-nav-helper{margin-left:auto;font-size:.69rem;color:var(--demo-muted);white-space:nowrap}
.demo-hero-content{padding:clamp(23px,4.5vw,52px) 0 30px}
.demo-eyebrow{font-family:"JetBrains Mono",monospace;color:var(--demo-accent);font-size:.65rem;letter-spacing:.08em}
.demo-hero-content h3{
  margin:14px 0;
  font-size:clamp(2.15rem,5.8vw,4.7rem);
  max-width:690px;line-height:1.03;letter-spacing:-.06em;
}
.demo-hero-content>p{
  max-width:520px;color:var(--demo-muted);
  font-size:clamp(.84rem,1.6vw,1.04rem);line-height:1.65;
}
.demo-mock-button{
  display:inline-flex;align-items:center;min-height:42px;
  padding:11px 15px;background:var(--demo-accent);
  color:var(--demo-bg);border-radius:9px;font-size:.81rem;font-weight:700;
}
.demo-features{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;margin-top:15px;
}
.demo-features span{
  min-width:0;padding:17px 14px;display:flex;align-items:center;
  border-radius:10px;background:var(--demo-surface);
  border:1px solid rgba(255,255,255,.09);
  font-size:.78rem;line-height:1.45;
}
.demo-features span::before{content:"✦";margin-right:8px;color:var(--demo-accent)}
.site-preview-disclaimer{
  margin:13px 0 25px;color:#b9c6d2;
  font-size:.76rem;line-height:1.65;
}
.site-preview-summary{border-top:1px solid #45576b;padding-top:20px}
.site-preview-summary .message-paper{
  background:#213448;border:1px solid #51687e;
  margin:15px 0 23px;
}
.site-preview-summary .message-paper p{
  white-space:pre-wrap;overflow-wrap:anywhere;
  font-size:.87rem;line-height:1.7;
}
.site-preview-actions{
  display:flex;justify-content:flex-end;gap:11px;
}
.site-preview-actions .btn{font-size:.85rem}
.site-preview-actions .btn-dark{flex:1 1 250px}
@media(max-width:740px){
  .wizard-layout{max-width:100%}
  .choice-grid{grid-template-columns:1fr}
  .choice-grid .choice-wide{grid-column:1}
  .demo-nav-helper{display:none}
  .demo-features{grid-template-columns:1fr}
  .demo-features span{min-height:48px;padding:12px 14px}
  .site-preview-actions{display:grid;grid-template-columns:1fr}
  .site-preview-actions .btn{width:100%}
}
@media(max-width:640px){
  .site-preview-dialog{width:calc(100% - 10px);max-height:calc(100dvh - 10px);border-radius:18px}
  .site-preview-inner{padding:17px}
  .demo-main{padding:17px}
  .demo-browser{padding:11px 12px;font-size:.51rem}
  .demo-navbar strong{font-size:1.04rem}
  .site-preview-heading h2{font-size:clamp(1.9rem,9vw,3rem)}
  .site-preview-summary .message-paper{padding:17px}
}
