.connect-portal{min-height:100dvh;display:flex;flex-direction:column;background:#f3f2e9;color:#213b2d}
.connect-site-header,.connect-site-footer,.connect-portal main{width:calc(100% - 2*min(1cm,4vw));margin-inline:auto}
.connect-site-header{display:flex;align-items:center;justify-content:space-between;padding-block:24px;border-bottom:1px solid #28432c21}
.connect-brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit}.connect-brand img{width:42px;height:42px;border-radius:13px}.connect-brand span{font-size:19px;letter-spacing:-.6px;font-weight:650}.connect-brand b{font-size:11px;letter-spacing:2px;text-transform:uppercase;display:block;color:#6d8054;margin-top:2px}
.connect-site-header>div{display:flex;gap:22px;align-items:center;font-size:13px}.connect-site-header>div>a{color:#4c6351;text-decoration:none}
.connect-portal main{flex:1}.connect-auth{display:grid;grid-template-columns:minmax(320px,.84fr) minmax(0,1.45fr);gap:clamp(35px,7vw,140px);align-items:center;padding:clamp(36px,6vh,90px) clamp(0px,3vw,70px)}
.connect-login-card{background:#fffcf4;border:1px solid #cfd7c4;border-radius:28px;padding:clamp(25px,3vw,55px);box-shadow:0 20px 65px #24463209}.connect-login-card h1{font-size:clamp(48px,4.7vw,80px);line-height:1.03;letter-spacing:-2.5px;margin:26px 0 20px}.connect-portal em{font-family:Georgia,serif;font-weight:400;color:#668342}.connect-login-card>p{font-size:15px;line-height:1.65;color:#617160}.connect-login-card .form{margin-top:25px;gap:18px}.connect-login-card .button{width:100%;justify-content:space-between;margin-top:5px}.connect-login-card input{font-size:16px;min-height:51px;border-radius:12px;background:#f5f5ec;border-color:#ced6c2}.connect-login-card>small{display:block;border-top:1px solid #dfe3d5;padding-top:20px;color:#78816b;font-size:11px;line-height:1.7}.connect-account-link{margin:24px 0!important;font-size:13px!important}.connect-account-link a{color:#2e542e}
.connect-intro{padding-block:25px}.connect-intro h2{font-size:clamp(62px,7vw,116px);line-height:1.01;letter-spacing:-4px;font-weight:500;margin:27px 0}.connect-intro>p{font-size:18px;line-height:1.85;max-width:550px;color:#60705b}.connect-orbit{display:flex;align-items:center;gap:18px;margin:46px 0;padding:32px;border-radius:25px;background:radial-gradient(ellipse at 50% 50%,#e3ebd2,transparent 70%);border:1px solid #cfd8bf}
.connect-orbit-node{display:flex;flex-direction:column;align-items:center;gap:16px;width:130px;flex-shrink:0;font-size:12px;font-weight:600}.connect-orbit-node svg{width:42px;height:42px;color:#37583c}.connect-orbit-line{flex:1;position:relative;border-top:1px dashed #8da474;height:30px;text-align:center;min-width:40px}.connect-orbit-line i{position:absolute;left:50%;top:-5px;width:9px;height:9px;border-radius:50%;background:#527b40;box-shadow:0 0 0 7px #acc28d44}.connect-orbit-line span{display:block;font-size:10px;color:#6a7e5b;padding-top:16px;white-space:nowrap}.connect-intro-footer{display:flex;gap:20px;justify-content:space-between;border-top:1px solid #d4dcc7;padding-top:22px;font-size:11px;color:#596e4d}.connect-intro .connect-computer-note{font-size:12px;margin-top:22px}
.connect-site-footer{display:flex;gap:25px;padding-block:25px;border-top:1px solid #d5dccb;color:#7b846f;font-size:11px}.connect-site-footer>span{flex:1}.connect-site-footer a{color:inherit;text-decoration:none}
.connect-dashboard{padding:55px 0 70px}.connect-dashboard-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:40px}.connect-dashboard-heading h1{font-size:clamp(43px,5vw,72px);line-height:1.06;letter-spacing:-2px;margin:20px 0}.connect-dashboard-heading p{color:#687760}.connect-computers{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:22px}.connect-computers .device-card{background:#fcfaf1;border:1px solid #d0d9c1;border-radius:23px;padding:30px}.connect-computers .device-card h2{font-size:24px;margin:24px 0 12px;overflow-wrap:anywhere}.connect-computers .device-card p{font-size:13px;color:#718064;line-height:1.8}.connect-computers .device-card .button{margin-top:20px}.connect-dashboard-note{display:flex;align-items:center;gap:20px;padding:26px 30px;background:#e8eddc;border:1px solid #d3ddc3;border-radius:20px;margin-top:35px}.connect-dashboard-note>svg{width:29px;height:29px;flex-shrink:0}.connect-dashboard-note strong{font-size:14px}.connect-dashboard-note p{font-size:13px;color:#65795a;margin:6px 0 0;line-height:1.7}.connect-empty{background:#fffaf0;border:1px dashed #b9c8a6;border-radius:22px;padding:40px;grid-column:1/-1}.connect-empty>svg{width:36px;height:36px;color:#68874d}.connect-empty h2{font-size:27px}.connect-empty p{line-height:1.8;color:#66795d}.connect-portal button:disabled{opacity:.55;cursor:wait}
@media(min-width:1600px){.connect-auth{grid-template-columns:minmax(400px,.9fr) minmax(0,1.5fr)}.connect-login-card{max-width:650px}.connect-intro h2{font-size:120px}}
@media(max-width:1000px){.connect-auth{gap:35px;padding-inline:0}.connect-intro h2{font-size:64px}.connect-orbit{padding:22px 14px;gap:5px}.connect-orbit-node{width:94px}.connect-orbit-line span{display:none}.connect-intro-footer{flex-direction:column;gap:12px}.connect-intro>p{font-size:16px}}
@media(max-width:700px){.connect-site-header{padding-block:19px}.connect-site-header>div{gap:12px;font-size:11px}.connect-site-header .button{padding:10px;font-size:11px}.connect-auth{grid-template-columns:1fr;padding-block:28px;gap:25px}.connect-login-card{padding:30px 25px}.connect-login-card h1{font-size:57px}.connect-intro{padding:14px 6px 24px}.connect-intro h2{font-size:52px;letter-spacing:-2px}.connect-orbit{margin-block:26px}.connect-intro-footer{flex-direction:row;flex-wrap:wrap}.connect-site-footer{gap:18px;flex-wrap:wrap;line-height:1.6}.connect-site-footer>span{flex-basis:100%}.connect-dashboard-heading{display:block}.connect-dashboard-heading .button{margin-top:15px}.connect-dashboard{padding-top:35px}.connect-dashboard-note{padding:23px;align-items:flex-start}.connect-brand img{width:35px;height:35px}.connect-brand span{font-size:17px}.connect-brand b{font-size:9px}}
