/* VIBRIYOGN.US: "Envision your website" builder */
.ev-hero{background:#0a0a0a;color:#fff;padding:clamp(70px,9vw,120px) 0 clamp(40px,6vw,70px);position:relative;overflow:hidden}
.ev-hero::after{content:"";position:absolute;inset:auto -10% -2px -10%;height:4px;background:linear-gradient(90deg,#7b3fbf,#3b3fb5,#1e7fd8,#1fa85a,#ffd400,#ff8a00,#e63b2e)}
.ev-hero h1{font-family:"Archivo",var(--sans);font-stretch:125%;font-weight:800;font-size:clamp(40px,6vw,80px);line-height:1.02;margin:0 0 18px;max-width:900px}
.ev-hero .lead{color:rgba(255,255,255,.8);max-width:640px;font-size:clamp(17px,1.6vw,20px)}
.ev{padding:clamp(36px,6vw,70px) 0 clamp(60px,8vw,100px);background:var(--paper-2)}
.ev-app{background:#fff;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.08);padding:clamp(20px,4vw,48px)}
.ev-steps{display:flex;gap:8px;list-style:none;padding:0;margin:0 0 34px;counter-reset:ev;flex-wrap:wrap}
.ev-steps li{counter-increment:ev;flex:1;min-width:120px;font:600 14px var(--sans);color:#999;padding-top:12px;border-top:4px solid #e6e4de;transition:all .3s}
.ev-steps li::before{content:counter(ev) "  ";color:#bbb}
.ev-steps li.on{color:#0a0a0a;border-color:#0a0a0a}.ev-steps li.done{color:#0a0a0a;border-color:#1fa85a;cursor:pointer}
.ev-panel h2{font-size:clamp(26px,3vw,38px);margin:0 0 8px}
.ev-panel > .muted{margin:0 0 26px;max-width:680px}
.ev-types{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.ev-type{text-align:left;background:#fff;border:1.5px solid #e6e4de;border-radius:16px;padding:18px;cursor:pointer;display:grid;gap:8px;font:inherit;color:inherit;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}
.ev-type:hover,.ev-type:focus-visible{transform:translateY(-3px);box-shadow:0 16px 40px rgba(0,0,0,.08);border-color:#0a0a0a}
.ev-type[aria-pressed=true]{border-color:#0a0a0a;box-shadow:0 0 0 3px #0a0a0a}
.ev-type .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#fff}
.ev-type .ic svg{width:22px;height:22px}
.ev-type b{font-size:17px}.ev-type span{font-size:13.5px;color:var(--muted);line-height:1.45}
.ev-type small{font:600 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:#999}
.ev-type .bar{position:absolute;left:0;right:0;bottom:0;height:4px}
.ev-form{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:820px}
.ev-form label,.ev-get-f label{display:grid;gap:7px;font:600 14px var(--sans)}
.ev-wide{grid-column:1/-1}
.ev-form input,.ev-get-f input,.ev-get-f textarea{font:400 16px var(--sans);padding:14px 16px;border:1.5px solid #dedbd3;border-radius:12px;background:#fff;color:#0a0a0a;width:100%}
.ev-form input:focus,.ev-get-f input:focus,.ev-get-f textarea:focus{outline:0;border-color:#0a0a0a;box-shadow:0 0 0 4px rgba(0,0,0,.08)}
.ev-form input.bad,.ev-get-f input.bad{border-color:#e63b2e;box-shadow:0 0 0 4px rgba(230,59,46,.12)}
@media (max-width:640px){.ev-form,.ev-get-f{grid-template-columns:1fr}}
.ev-nav{display:flex;justify-content:space-between;gap:12px;margin-top:30px;flex-wrap:wrap}
.btn.ev-ghost{background:transparent;color:#0a0a0a;border:2px solid #0a0a0a;font-family:inherit}
.btn.ev-ghost:hover{background:#0a0a0a;color:#fff}
.ev-brand{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(20px,4vw,50px);align-items:start}
@media (max-width:860px){.ev-brand{grid-template-columns:1fr}}
.ev-drop{display:grid;place-items:center;min-height:170px;border:2px dashed #cfcac0;border-radius:16px;cursor:pointer;position:relative;background:#faf9f6;transition:all .2s;text-align:center;padding:20px}
.ev-drop:hover,.ev-drop.over{border-color:#0a0a0a;background:#f3f1ec}
.ev-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.ev-drop-in{display:grid;gap:4px}.ev-drop-in span{font-size:14px;color:var(--muted)}
.ev-drop img{max-height:120px;max-width:80%;object-fit:contain}
.ev-drop.has .ev-drop-in{display:none}
.ev-clear{background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer;margin-top:8px;font:500 14px var(--sans)}
.ev-sugg p,.ev-pal p{font:600 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#888;margin:22px 0 10px}
.ev-sw{display:flex;flex-wrap:wrap;gap:10px}
.ev-sw button{width:44px;height:44px;border-radius:12px;border:3px solid #fff;box-shadow:0 0 0 1px #dedbd3;cursor:pointer;padding:0;transition:transform .15s}
.ev-sw button:hover{transform:scale(1.08)}.ev-sw button.sel{box-shadow:0 0 0 3px #0a0a0a}
.ev-pal button{width:auto;padding:0;display:flex;overflow:hidden;border-radius:12px}.ev-pal button i{display:block;width:26px;height:38px}
.ev-colors{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.ev-colors label{display:flex;align-items:center;gap:12px;padding:12px;border:1.5px solid #e6e4de;border-radius:14px;cursor:pointer;font:600 14px var(--sans);transition:border-color .2s}
.ev-colors label.act{border-color:#0a0a0a}
.ev-colors label span{flex:1}
.ev-colors input{width:42px;height:42px;border:0;padding:0;background:none;cursor:pointer;border-radius:10px}
.ev-colors code{font:500 12px ui-monospace,monospace;color:var(--muted)}
.ev-tip{font-size:13px;margin:10px 0 0}
.ev-mini{border-radius:16px;overflow:hidden;border:1px solid #e6e4de;box-shadow:0 24px 60px rgba(0,0,0,.1);background:#fff;position:sticky;top:110px}
.ev-mini-top{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid #eee}
.ev-mini-logo{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font:800 12px var(--sans);flex:none;overflow:hidden}
.ev-mini-logo img{max-width:100%;max-height:100%;object-fit:contain}
.ev-mini-top b{font-size:14px;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ev-mini-top i{width:70px;height:24px;border-radius:99px}
.ev-mini-hero{padding:34px 22px 30px;display:grid;gap:10px;justify-items:start;color:#fff;transition:background .3s}
.ev-mini-hero small{font:600 10px var(--sans);letter-spacing:.14em;text-transform:uppercase;opacity:.8}
.ev-mini-hero strong{font:800 26px/1.1 var(--sans);letter-spacing:-.02em;max-width:90%}
.ev-mini-btn{padding:9px 16px;border-radius:99px;font:600 13px var(--sans)}
.ev-mini-body{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px}.ev-mini-body i{height:60px;border-radius:10px;background:#f2f0eb}
.ev-ready{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:26px}
.ev-ready h2{margin:0 0 6px}.ev-ready .muted{margin:0}
.ev-actions{display:flex;gap:10px;flex-wrap:wrap}
.ev-stage{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end;margin-bottom:46px}
@media (max-width:900px){.ev-stage{grid-template-columns:1fr;justify-items:center}.ev-desk{display:none}}
.ev-desk{border-radius:14px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.18);border:1px solid #ddd;background:#f3f3f3}
.ev-bar{display:flex;align-items:center;gap:7px;padding:10px 14px;background:#ececec;border-bottom:1px solid #ddd}
.ev-bar i{width:11px;height:11px;border-radius:50%;background:#d0d0d0}.ev-bar i:nth-child(1){background:#ff5f57}.ev-bar i:nth-child(2){background:#febc2e}.ev-bar i:nth-child(3){background:#28c840}
.ev-bar span{flex:1;margin-left:10px;background:#fff;border-radius:7px;padding:5px 12px;font:500 12px var(--sans);color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ev-desk .ev-frame{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:#fff}
.ev-desk iframe{position:absolute;left:0;top:0;width:1440px;height:900px;border:0;transform-origin:0 0}
.ev-phone{width:270px;border-radius:40px;padding:12px;background:#0a0a0a;box-shadow:0 30px 70px rgba(0,0,0,.3)}
.ev-phone .ev-frame{position:relative;width:246px;height:520px;border-radius:30px;overflow:hidden;background:#fff}
.ev-phone iframe{position:absolute;left:0;top:0;width:390px;height:824px;border:0;transform:scale(.6308);transform-origin:0 0}
.ev-get{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(20px,4vw,50px);padding:clamp(22px,4vw,40px);border-radius:18px;background:#0a0a0a;color:#fff}
@media (max-width:860px){.ev-get{grid-template-columns:1fr}}
.ev-get h2{color:#fff}.ev-get .muted{color:rgba(255,255,255,.72)}
.ev-get-f{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ev-get-f label{color:#fff}
.ev-hp{position:absolute;left:-9999px;width:1px;height:1px}
.ev-msg{margin:0;font-weight:600}.ev-msg.err{color:#ff8a7a}.ev-msg.ok{color:#7ee2a8}
.ev-brand > *{min-width:0}
@media (max-width:520px){.ev-colors{grid-template-columns:1fr}.ev-app{padding:18px;border-radius:16px}.ev-steps li{min-width:calc(50% - 4px);font-size:13px}.ev-types{grid-template-columns:1fr 1fr}.ev-type{padding:14px}.ev-type span:not(.ic){display:none}.ev-type .ic{width:38px;height:38px}}
/* on the home page */
.ev-home{background:var(--paper-2)}
.ev-home .section-head{margin-bottom:28px}
.ev-home .section-head h2{margin:0 0 8px}
.ev-home [data-p="0"] > h2{display:none}
/* 3-step flow: type dropdown, city search, optional details */
.ev-form select{font:400 16px var(--sans);padding:14px 40px 14px 16px;border:1.5px solid #dedbd3;border-radius:12px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23111' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 16px center;-webkit-appearance:none;appearance:none;color:#0a0a0a;width:100%}
.ev-form select:focus{outline:0;border-color:#0a0a0a;box-shadow:0 0 0 4px rgba(0,0,0,.08)}
.ev-form select.bad{border-color:#e63b2e;box-shadow:0 0 0 4px rgba(230,59,46,.12)}
.ev-blurb{margin:-4px 0 0;padding:12px 16px;border-radius:12px;background:#f6f4ef;font-size:14.5px;color:var(--muted)}
.ev-blurb b{color:#0a0a0a}
.ev-city{position:relative}
.ev-ac{position:absolute;left:0;right:0;top:calc(100% - 18px);z-index:20;background:#fff;border:1.5px solid #0a0a0a;border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.14);overflow:hidden}
.ev-ac button{display:flex;gap:8px;align-items:baseline;width:100%;text-align:left;padding:12px 16px;border:0;background:#fff;font:inherit;cursor:pointer;border-bottom:1px solid #f0eee8}
.ev-ac button:last-child{border-bottom:0}
.ev-ac button:hover,.ev-ac button[aria-selected=true]{background:#fff6c7}
.ev-ac b{font-weight:600}.ev-ac span{color:var(--muted);font-size:14px}
.ev-osm{font:400 11px var(--sans);color:#999}.ev-osm a{color:#999}
.ev-more{border:1.5px solid #e6e4de;border-radius:14px;padding:4px 16px}
.ev-more summary{cursor:pointer;padding:12px 0;font:600 15px var(--sans);list-style:none}
.ev-more summary::-webkit-details-marker{display:none}
.ev-more summary::before{content:"+";display:inline-block;width:18px;font-weight:700}
.ev-more[open] summary::before{content:"−"}
.ev-more > .ev-form{padding:4px 0 16px}
@media (max-width:520px){.ev-steps li{min-width:0;font-size:12.5px}.ev-steps{flex-wrap:nowrap}}
.ev-blurb b{margin-right:4px}

/* font picker */
.ev-fonts p{font:600 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:#888;margin:22px 0 10px}
.ev-fl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ev-fl button{display:flex;align-items:center;gap:10px;text-align:left;padding:10px 12px;border:1.5px solid #e6e4de;border-radius:12px;background:#fff;cursor:pointer;color:#0a0a0a;min-width:0}
.ev-fl button:hover{border-color:#bbb}
.ev-fl button[aria-pressed=true]{border-color:#0a0a0a;box-shadow:inset 0 0 0 1px #0a0a0a}
.ev-fl b{font-size:24px;line-height:1;flex:none;width:34px}
.ev-fl span{display:grid;min-width:0}.ev-fl strong{font-size:15px;line-height:1.2}
.ev-fl small{font:12px/1.3 var(--sans);color:var(--muted)}
@media (max-width:560px){.ev-fl{grid-template-columns:1fr 1fr}}
