/* SilverOakLoans: shared page styles + motion */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s cubic-bezier(.2,.7,.2,1) var(--d,0ms),transform .65s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}
.reveal.in{opacity:1;transform:none}
.reveal.l{transform:translateX(-24px)} .reveal.r{transform:translateX(24px)} .reveal.l.in,.reveal.r.in{transform:none}
.lift{transition:transform .25s,box-shadow .25s,border-color .25s}
.lift:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(20,53,43,.11);border-color:#C9D7D0}

/* banner hero used on every page */
.banner{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--oak) 0%,#1B4A3B 100%);color:#fff;border-radius:16px;padding:30px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.banner h2{font-family:'Fraunces',serif;font-weight:600;font-size:26px;letter-spacing:-.01em;line-height:1.2;max-width:22ch}
.banner p{color:#BFD3CA;margin-top:6px;max-width:48ch}
.banner::before,.banner::after{content:"";position:absolute;border-radius:50%;border:30px solid rgba(230,199,126,.1);animation:drift 9s ease-in-out infinite alternate}
.banner::before{width:200px;height:200px;right:-40px;top:-70px}
.banner::after{width:120px;height:120px;right:150px;bottom:-60px;animation-delay:-4s;border-width:20px}
@keyframes drift{to{transform:translate(-16px,12px) scale(1.06)}}
.banner>*{position:relative;z-index:1}

/* tabs with sliding indicator */
.tabs{position:relative;border-bottom:1px solid var(--line);margin-bottom:22px}
.tab-list{display:flex;gap:4px;overflow-x:auto;position:relative;scrollbar-width:none}
.tab-list button{border:0;background:transparent;padding:12px 16px;font-weight:700;color:var(--mut);cursor:pointer;white-space:nowrap;transition:color .2s}
.tab-list button:hover{color:var(--ink)} .tab-list button.on{color:var(--oak2)}
.tab-ind{position:absolute;bottom:-1px;left:0;height:3px;width:0;background:var(--brass);border-radius:3px 3px 0 0;transition:left .32s cubic-bezier(.2,.7,.2,1),width .32s cubic-bezier(.2,.7,.2,1)}
.panel{display:none} .panel.on{display:block;animation:rise .45s both}

/* misc ui */
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:7px 14px;font-weight:700;font-size:13.5px;cursor:pointer;transition:all .18s}
.chip:hover{border-color:var(--oak2)} .chip.on{background:var(--oak2);border-color:var(--oak2);color:#fff}
.badge.bad{background:var(--red-soft);color:var(--red)} .badge.mut{background:#E9EEEB;color:var(--mut)}
.muted{color:var(--mut)} .sm{font-size:13.5px} .mt{margin-top:16px}
.empty{text-align:center;padding:46px 20px}
.empty .ico{width:68px;height:68px;border-radius:50%;background:var(--brass-soft);color:#7A5710;display:grid;place-items:center;margin:0 auto 14px;animation:bob 3s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-6px)}}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.toolbar .input{max-width:260px}
tr.hov{transition:background .15s} tr.hov:hover{background:#F7FAF8}
.split{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start}
.sticky{position:sticky;top:84px}

/* rings */
.ring{width:120px;height:120px;transform:rotate(-90deg);flex:none}
.ring circle{fill:none;stroke-width:11;stroke-linecap:round}
.ring .bg{stroke:#E4EBE7} .ring .fg{stroke:var(--oak2);transition:stroke-dashoffset 1.3s cubic-bezier(.2,.7,.2,1) .15s} .ring .fg.b{stroke:var(--brass)}
.ring-wrap{position:relative;width:120px;height:120px;flex:none}
.ring-wrap b{position:absolute;inset:0;display:grid;place-items:center;font-size:22px;font-family:'Fraunces',serif}

/* product / select cards */
.prods{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.prod{position:relative;text-align:left;border:2px solid var(--line);background:#fff;border-radius:var(--r);padding:18px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
.prod:hover{transform:translateY(-3px)} .prod.on{border-color:var(--oak2);box-shadow:0 0 0 4px rgba(31,95,74,.12)}
.prod b{font-size:16px;display:block} .prod span{font-size:13.5px;color:var(--mut);display:block;margin-top:2px}
.prod em{font-style:normal;display:inline-block;margin-top:10px;font-weight:800;color:var(--oak2)}
.prod::after{content:"";position:absolute;top:14px;right:14px;width:22px;height:22px;border-radius:50%;border:2px solid var(--line);transition:all .2s}
.prod.on::after{background:var(--oak2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat;border-color:var(--oak2);animation:pop .35s both}
.checklist li{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)} .checklist li:last-child{border:0}
.checklist .ok{flex:none;width:22px;height:22px;border-radius:50%;background:var(--grn-soft);color:var(--grn);display:grid;place-items:center;font-size:12px;font-weight:800}

/* loan cards */
.lcard{border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden}
.lcard+.lcard{margin-top:16px}
.lhead{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 22px;cursor:pointer;flex-wrap:wrap}
.lhead h3{font-size:17px}
.lmeta{display:flex;gap:26px;flex-wrap:wrap} .lmeta div span{display:block;font-size:12.5px;color:var(--mut);font-weight:600} .lmeta div b{font-size:16px}
.chev{transition:transform .3s} .lcard.open .chev{transform:rotate(180deg)}
.lbody{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1)} .lcard.open .lbody{grid-template-rows:1fr}
.lbody>div{overflow:hidden} .lbody-in{padding:4px 22px 22px;border-top:1px solid var(--line)}
.mini-bar{height:8px;background:#E4EBE7;border-radius:99px;overflow:hidden;margin-top:6px} .mini-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--oak2),#3E8B71);border-radius:99px;transition:width 1.1s cubic-bezier(.2,.7,.2,1) .2s}
.legend{display:grid;gap:8px;font-size:14px} .legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}
.sim-out{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px} .sim-out div{background:var(--bg);border-radius:10px;padding:12px} .sim-out span{display:block;font-size:12.5px;color:var(--mut);font-weight:600} .sim-out b{font-size:19px;color:var(--grn)}
.more-btn{border:0;background:transparent;color:var(--oak2);font-weight:700;cursor:pointer;padding:10px 0}

/* timeline */
.timeline{position:relative;padding-left:26px}
.timeline::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line)}
.timeline li{position:relative;padding:0 0 18px;display:flex;justify-content:space-between;gap:12px}
.timeline li::before{content:"";position:absolute;left:-26px;top:5px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--oak2)}
.timeline li:first-child::before{background:var(--brass);border-color:var(--brass);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(185,138,47,.5)}100%{box-shadow:0 0 0 12px rgba(185,138,47,0)}}

/* accounts / methods */
.acct{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:var(--r);padding:16px;background:#fff}
.acct+.acct{margin-top:12px}
.acct .bk{width:44px;height:44px;border-radius:10px;background:var(--oak);color:#E6C77E;display:grid;place-items:center;flex:none}
.acct .grow{flex:1;min-width:0}
.linkbtn{border:0;background:transparent;font-weight:700;color:var(--oak2);cursor:pointer;padding:6px 8px;border-radius:8px} .linkbtn:hover{background:var(--bg)} .linkbtn.danger{color:var(--red)}

/* documents */
.dz{border:2px dashed #B9C9C1;border-radius:var(--r);background:#fff;text-align:center;padding:34px 20px;cursor:pointer;transition:all .2s}
.dz:hover,.dz.over{border-color:var(--oak2);background:#F1F7F4;transform:scale(1.005)}
.dz .up{width:54px;height:54px;border-radius:50%;background:var(--brass-soft);color:#7A5710;display:grid;place-items:center;margin:0 auto 10px;transition:transform .25s} .dz.over .up{transform:translateY(-6px) scale(1.08)}
.frow{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);animation:rise .35s both} .frow:last-child{border:0}
.fico{width:38px;height:38px;border-radius:8px;background:var(--blu-soft);color:var(--blu);display:grid;place-items:center;font-weight:800;font-size:11px;flex:none}
.prog-line{height:6px;border-radius:99px;background:#E4EBE7;overflow:hidden;margin-top:6px} .prog-line i{display:block;height:100%;width:0;background:var(--oak2);transition:width .2s}
.step-dot{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800}
.s-ok{background:var(--grn-soft);color:var(--grn)} .s-need{background:var(--brass-soft);color:#7A5710} .s-rev{background:var(--blu-soft);color:var(--blu)}

/* profile / security */
.meter{display:flex;gap:5px;margin-top:6px} .meter i{flex:1;height:5px;border-radius:99px;background:#E4EBE7;transition:background .25s}
.meter[data-s="1"] i:nth-child(-n+1){background:var(--red)} .meter[data-s="2"] i:nth-child(-n+2){background:#D98A2B} .meter[data-s="3"] i:nth-child(-n+3){background:#7BA33A} .meter[data-s="4"] i{background:var(--grn)}
.prof-top{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.big-av{width:84px;height:84px;border-radius:50%;background:var(--oak2);color:#fff;display:grid;place-items:center;font-family:'Fraunces',serif;font-size:34px;border:4px solid var(--brass-soft)}
.list-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)} .list-row:last-child{border:0}
.list-row p{font-size:13.5px;color:var(--mut)}

/* help */
.help-hero{background:var(--oak);color:#fff;border-radius:16px;padding:40px 32px;text-align:center;position:relative;overflow:hidden}
.help-hero h2{font-family:'Fraunces',serif;font-weight:600;font-size:32px;letter-spacing:-.01em}
.help-hero::before{content:"";position:absolute;left:-60px;bottom:-90px;width:260px;height:260px;border-radius:50%;border:40px solid rgba(230,199,126,.09);animation:drift 10s ease-in-out infinite alternate}
.srch{position:relative;max-width:560px;margin:18px auto 0}
.srch .input{padding:15px 16px 15px 46px;border-radius:99px;border-color:transparent;font-size:16px;color:var(--ink)}
.srch svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--mut)}
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cat{background:#fff;border:1.5px solid var(--line);border-radius:var(--r);padding:18px;text-align:left;cursor:pointer;transition:all .22s}
.cat:hover{transform:translateY(-4px);border-color:var(--oak2);box-shadow:0 12px 26px rgba(20,53,43,.1)} .cat.on{border-color:var(--oak2);background:#F1F7F4}
.cat b{display:block} .cat span{font-size:13px;color:var(--mut)}
.acc{border-bottom:1px solid var(--line)} .acc:last-child{border:0}
.acc>button{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;border:0;background:transparent;padding:16px 0;font-weight:700;font-size:15.5px;text-align:left;cursor:pointer}
.acc>button i{flex:none;width:26px;height:26px;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-style:normal;color:var(--oak2);transition:transform .3s,background .2s} .acc.open>button i{transform:rotate(45deg);background:var(--brass-soft)}
.acc .ab{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.2,.7,.2,1)} .acc.open .ab{grid-template-rows:1fr} .acc .ab>div{overflow:hidden} .acc .ab p{padding:0 0 16px;color:var(--mut);max-width:70ch}
.open-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;background:#9AA8A1} .open-dot.on{background:#27AE60;animation:pulseG 2s infinite}
@keyframes pulseG{0%{box-shadow:0 0 0 0 rgba(39,174,96,.5)}100%{box-shadow:0 0 0 10px rgba(39,174,96,0)}}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hl{background:var(--brass-soft);border-radius:3px}
textarea.input{min-height:110px;resize:vertical}

@media (max-width:1080px){.split{grid-template-columns:1fr}.sticky{position:static}.cats{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr}}
@media (max-width:560px){.prods{grid-template-columns:1fr}.cats{grid-template-columns:1fr}.banner{padding:24px}.lmeta{gap:16px}}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}










/* SilverOakLoans: shared page styles + motion */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s cubic-bezier(.2,.7,.2,1) var(--d,0ms),transform .65s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}
.reveal.in{opacity:1;transform:none}
.reveal.l{transform:translateX(-24px)} .reveal.r{transform:translateX(24px)} .reveal.l.in,.reveal.r.in{transform:none}
.lift{transition:transform .25s,box-shadow .25s,border-color .25s}
.lift:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(20,53,43,.11);border-color:#C9D7D0}

/* banner hero used on every page */
.banner{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--oak) 0%,#1B4A3B 100%);color:#fff;border-radius:16px;padding:30px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.banner h2{font-family:'Fraunces',serif;font-weight:600;font-size:26px;letter-spacing:-.01em;line-height:1.2;max-width:22ch}
.banner p{color:#BFD3CA;margin-top:6px;max-width:48ch}
.banner::before,.banner::after{content:"";position:absolute;border-radius:50%;border:30px solid rgba(230,199,126,.1);animation:drift 9s ease-in-out infinite alternate}
.banner::before{width:200px;height:200px;right:-40px;top:-70px}
.banner::after{width:120px;height:120px;right:150px;bottom:-60px;animation-delay:-4s;border-width:20px}
@keyframes drift{to{transform:translate(-16px,12px) scale(1.06)}}
.banner>*{position:relative;z-index:1}

/* tabs with sliding indicator */
.tabs{position:relative;border-bottom:1px solid var(--line);margin-bottom:22px}
.tab-list{display:flex;gap:4px;overflow-x:auto;position:relative;scrollbar-width:none}
.tab-list button{border:0;background:transparent;padding:12px 16px;font-weight:700;color:var(--mut);cursor:pointer;white-space:nowrap;transition:color .2s}
.tab-list button:hover{color:var(--ink)} .tab-list button.on{color:var(--oak2)}
.tab-ind{position:absolute;bottom:-1px;left:0;height:3px;width:0;background:var(--brass);border-radius:3px 3px 0 0;transition:left .32s cubic-bezier(.2,.7,.2,1),width .32s cubic-bezier(.2,.7,.2,1)}
.panel{display:none} .panel.on{display:block;animation:rise .45s both}

/* misc ui */
.chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:7px 14px;font-weight:700;font-size:13.5px;cursor:pointer;transition:all .18s}
.chip:hover{border-color:var(--oak2)} .chip.on{background:var(--oak2);border-color:var(--oak2);color:#fff}
.badge.bad{background:var(--red-soft);color:var(--red)} .badge.mut{background:#E9EEEB;color:var(--mut)}
.muted{color:var(--mut)} .sm{font-size:13.5px} .mt{margin-top:16px}
.empty{text-align:center;padding:46px 20px}
.empty .ico{width:68px;height:68px;border-radius:50%;background:var(--brass-soft);color:#7A5710;display:grid;place-items:center;margin:0 auto 14px;animation:bob 3s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-6px)}}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.toolbar .input{max-width:260px}
tr.hov{transition:background .15s} tr.hov:hover{background:#F7FAF8}
.split{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:start}
.sticky{position:sticky;top:84px}

/* rings */
.ring{width:120px;height:120px;transform:rotate(-90deg);flex:none}
.ring circle{fill:none;stroke-width:11;stroke-linecap:round}
.ring .bg{stroke:#E4EBE7} .ring .fg{stroke:var(--oak2);transition:stroke-dashoffset 1.3s cubic-bezier(.2,.7,.2,1) .15s} .ring .fg.b{stroke:var(--brass)}
.ring-wrap{position:relative;width:120px;height:120px;flex:none}
.ring-wrap b{position:absolute;inset:0;display:grid;place-items:center;font-size:22px;font-family:'Fraunces',serif}

/* product / select cards */
.prods{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.prod{position:relative;text-align:left;border:2px solid var(--line);background:#fff;border-radius:var(--r);padding:18px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
.prod:hover{transform:translateY(-3px)} .prod.on{border-color:var(--oak2);box-shadow:0 0 0 4px rgba(31,95,74,.12)}
.prod b{font-size:16px;display:block} .prod span{font-size:13.5px;color:var(--mut);display:block;margin-top:2px}
.prod em{font-style:normal;display:inline-block;margin-top:10px;font-weight:800;color:var(--oak2)}
.prod::after{content:"";position:absolute;top:14px;right:14px;width:22px;height:22px;border-radius:50%;border:2px solid var(--line);transition:all .2s}
.prod.on::after{background:var(--oak2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat;border-color:var(--oak2);animation:pop .35s both}
.checklist li{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)} .checklist li:last-child{border:0}
.checklist .ok{flex:none;width:22px;height:22px;border-radius:50%;background:var(--grn-soft);color:var(--grn);display:grid;place-items:center;font-size:12px;font-weight:800}

/* loan cards */
.lcard{border:1px solid var(--line);border-radius:var(--r);background:#fff;overflow:hidden}
.lcard+.lcard{margin-top:16px}
.lhead{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 22px;cursor:pointer;flex-wrap:wrap}
.lhead h3{font-size:17px}
.lmeta{display:flex;gap:26px;flex-wrap:wrap} .lmeta div span{display:block;font-size:12.5px;color:var(--mut);font-weight:600} .lmeta div b{font-size:16px}
.chev{transition:transform .3s} .lcard.open .chev{transform:rotate(180deg)}
.lbody{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.2,.7,.2,1)} .lcard.open .lbody{grid-template-rows:1fr}
.lbody>div{overflow:hidden} .lbody-in{padding:4px 22px 22px;border-top:1px solid var(--line)}
.mini-bar{height:8px;background:#E4EBE7;border-radius:99px;overflow:hidden;margin-top:6px} .mini-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--oak2),#3E8B71);border-radius:99px;transition:width 1.1s cubic-bezier(.2,.7,.2,1) .2s}
.legend{display:grid;gap:8px;font-size:14px} .legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}
.sim-out{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px} .sim-out div{background:var(--bg);border-radius:10px;padding:12px} .sim-out span{display:block;font-size:12.5px;color:var(--mut);font-weight:600} .sim-out b{font-size:19px;color:var(--grn)}
.more-btn{border:0;background:transparent;color:var(--oak2);font-weight:700;cursor:pointer;padding:10px 0}

/* timeline */
.timeline{position:relative;padding-left:26px}
.timeline::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line)}
.timeline li{position:relative;padding:0 0 18px;display:flex;justify-content:space-between;gap:12px}
.timeline li::before{content:"";position:absolute;left:-26px;top:5px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--oak2)}
.timeline li:first-child::before{background:var(--brass);border-color:var(--brass);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(185,138,47,.5)}100%{box-shadow:0 0 0 12px rgba(185,138,47,0)}}

/* accounts / methods */
.acct{display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:var(--r);padding:16px;background:#fff}
.acct+.acct{margin-top:12px}
.acct .bk{width:44px;height:44px;border-radius:10px;background:var(--oak);color:#E6C77E;display:grid;place-items:center;flex:none}
.acct .grow{flex:1;min-width:0}
.linkbtn{border:0;background:transparent;font-weight:700;color:var(--oak2);cursor:pointer;padding:6px 8px;border-radius:8px} .linkbtn:hover{background:var(--bg)} .linkbtn.danger{color:var(--red)}

/* documents */
.dz{border:2px dashed #B9C9C1;border-radius:var(--r);background:#fff;text-align:center;padding:34px 20px;cursor:pointer;transition:all .2s}
.dz:hover,.dz.over{border-color:var(--oak2);background:#F1F7F4;transform:scale(1.005)}
.dz .up{width:54px;height:54px;border-radius:50%;background:var(--brass-soft);color:#7A5710;display:grid;place-items:center;margin:0 auto 10px;transition:transform .25s} .dz.over .up{transform:translateY(-6px) scale(1.08)}
.frow{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);animation:rise .35s both} .frow:last-child{border:0}
.fico{width:38px;height:38px;border-radius:8px;background:var(--blu-soft);color:var(--blu);display:grid;place-items:center;font-weight:800;font-size:11px;flex:none}
.prog-line{height:6px;border-radius:99px;background:#E4EBE7;overflow:hidden;margin-top:6px} .prog-line i{display:block;height:100%;width:0;background:var(--oak2);transition:width .2s}
.step-dot{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800}
.s-ok{background:var(--grn-soft);color:var(--grn)} .s-need{background:var(--brass-soft);color:#7A5710} .s-rev{background:var(--blu-soft);color:var(--blu)}

/* profile / security */
.meter{display:flex;gap:5px;margin-top:6px} .meter i{flex:1;height:5px;border-radius:99px;background:#E4EBE7;transition:background .25s}
.meter[data-s="1"] i:nth-child(-n+1){background:var(--red)} .meter[data-s="2"] i:nth-child(-n+2){background:#D98A2B} .meter[data-s="3"] i:nth-child(-n+3){background:#7BA33A} .meter[data-s="4"] i{background:var(--grn)}
.prof-top{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.big-av{width:84px;height:84px;border-radius:50%;background:var(--oak2);color:#fff;display:grid;place-items:center;font-family:'Fraunces',serif;font-size:34px;border:4px solid var(--brass-soft)}
.list-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)} .list-row:last-child{border:0}
.list-row p{font-size:13.5px;color:var(--mut)}

/* help */
.help-hero{background:var(--oak);color:#fff;border-radius:16px;padding:40px 32px;text-align:center;position:relative;overflow:hidden}
.help-hero h2{font-family:'Fraunces',serif;font-weight:600;font-size:32px;letter-spacing:-.01em}
.help-hero::before{content:"";position:absolute;left:-60px;bottom:-90px;width:260px;height:260px;border-radius:50%;border:40px solid rgba(230,199,126,.09);animation:drift 10s ease-in-out infinite alternate}
.srch{position:relative;max-width:560px;margin:18px auto 0}
.srch .input{padding:15px 16px 15px 46px;border-radius:99px;border-color:transparent;font-size:16px;color:var(--ink)}
.srch svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--mut)}
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cat{background:#fff;border:1.5px solid var(--line);border-radius:var(--r);padding:18px;text-align:left;cursor:pointer;transition:all .22s}
.cat:hover{transform:translateY(-4px);border-color:var(--oak2);box-shadow:0 12px 26px rgba(20,53,43,.1)} .cat.on{border-color:var(--oak2);background:#F1F7F4}
.cat b{display:block} .cat span{font-size:13px;color:var(--mut)}
.acc{border-bottom:1px solid var(--line)} .acc:last-child{border:0}
.acc>button{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;border:0;background:transparent;padding:16px 0;font-weight:700;font-size:15.5px;text-align:left;cursor:pointer}
.acc>button i{flex:none;width:26px;height:26px;border-radius:50%;background:var(--bg);display:grid;place-items:center;font-style:normal;color:var(--oak2);transition:transform .3s,background .2s} .acc.open>button i{transform:rotate(45deg);background:var(--brass-soft)}
.acc .ab{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s cubic-bezier(.2,.7,.2,1)} .acc.open .ab{grid-template-rows:1fr} .acc .ab>div{overflow:hidden} .acc .ab p{padding:0 0 16px;color:var(--mut);max-width:70ch}
.open-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:7px;background:#9AA8A1} .open-dot.on{background:#27AE60;animation:pulseG 2s infinite}
@keyframes pulseG{0%{box-shadow:0 0 0 0 rgba(39,174,96,.5)}100%{box-shadow:0 0 0 10px rgba(39,174,96,0)}}
.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.hl{background:var(--brass-soft);border-radius:3px}
textarea.input{min-height:110px;resize:vertical}

/* ===== NEW: phone + liveness verification ===== */
.verify-box{text-align:center;padding:10px 8px 6px}
.verify-spinner{width:56px;height:56px;border-radius:50%;border:4px solid #E4EBE7;border-top-color:var(--oak2);margin:0 auto;opacity:.9}
.verify-spinner.spinning{animation:spin .85s linear infinite}
.status-line{margin-top:14px;font-weight:600;font-size:14.5px;color:var(--mut)}
.liveness-frame{position:relative;width:min(320px,100%);aspect-ratio:4/3;margin:18px auto 0;border-radius:16px;overflow:hidden;background:#0e1e19;border:2px solid var(--line)}
.liveness-frame video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.liveness-overlay{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;background:radial-gradient(ellipse 55% 70% at 50% 45%,transparent 40%,rgba(14,30,25,.55) 70%)}
.liveness-overlay span{background:rgba(0,0,0,.55);color:#fff;font-size:13px;font-weight:600;padding:6px 12px;border-radius:99px}

@media (max-width:1080px){.split{grid-template-columns:1fr}.sticky{position:static}.cats{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr}}
@media (max-width:560px){.prods{grid-template-columns:1fr}.cats{grid-template-columns:1fr}.banner{padding:24px}.lmeta{gap:16px}}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}
