/* Quobvyn brand: taken from the original prototype (dark + lime). */
:root{--bg:#090d0c;--card:#131b17;--card2:#19231d;--line:#304038;--lime:#baff66;--text:#f1f7ee;--muted:#a2b2a7;--danger:#ff8a7a;color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:radial-gradient(ellipse at 80% 0%,#213d24 0%,transparent 36%),var(--bg);background-repeat:no-repeat;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;min-height:100vh}
button,input,textarea{font:inherit}
button{cursor:pointer}
a{color:inherit;text-decoration:none}
a.lime{color:var(--lime)}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--lime);outline-offset:3px}
.container{width:min(1060px,92%);margin:auto;display:flex;flex-direction:column;min-height:100vh}
main{flex:1}

/* Navigation */
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #29352d;gap:12px}
.brand{font-size:27px;font-weight:800;letter-spacing:-1.4px}
.brand i{font-style:normal;color:var(--lime)}
.links{display:flex;gap:20px;align-items:center;font-size:14px}
.links a:not(.btn),.linkbtn{color:#c1cdc2}
.links form{margin:0}
.linkbtn{background:none;border:0;padding:0;font-size:14px}
.links a:not(.btn):hover,.linkbtn:hover{color:var(--text)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;border:1px solid #425248;background:#19251e;color:var(--text);padding:12px 18px;font-weight:700}
.btn.primary{background:var(--lime);border-color:var(--lime);color:#15200c}
.btn.secondary{background:transparent}
.btn.sm{padding:8px 14px;font-size:14px}
.btn.block{width:100%}
.btn:hover{filter:brightness(1.13)}
.btn:disabled{opacity:.45;cursor:not-allowed;filter:none}

/* Hero */
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:center;padding:95px 0 75px}
.eyebrow{color:var(--lime);font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:800}
.hero h1{font-size:clamp(45px,6vw,79px);line-height:1.02;letter-spacing:-3px;margin:18px 0}
.hero h1 em{color:var(--lime);font-style:normal}
.hero p,.sub{line-height:1.65;color:var(--muted)}
.hero p{max-width:500px;font-size:18px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}
.actions form{margin:0}
.feature{border:1px solid #526849;border-radius:23px;background:radial-gradient(circle at top right,#315330,#18231c 60%);padding:28px;box-shadow:0 20px 80px #0009}
.mini{font-size:12px;color:var(--muted);line-height:1.6}
.featurehead,.userhead{display:flex;gap:17px;align-items:center}
.feature h3{font-size:25px;margin:0 0 3px}
.featureprice{margin:27px 0 14px;border-top:1px solid #4a6249;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.featureprice strong{font-size:33px}

/* Avatars */
.avatar{display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#b3ce6b,#496e42 55%,#203a30);color:#f6ffe9;font-weight:800;letter-spacing:-2px;object-fit:cover;flex-shrink:0;width:51px;height:51px;font-size:18px}
.avatar.lg{width:82px;height:82px;font-size:31px}
.avatar.sm{width:51px;height:51px;font-size:18px}
.avatar.xl{width:120px;height:120px;font-size:40px}

/* Discover */
.section{padding:30px 0 90px}
.section h2{font-size:34px;letter-spacing:-1px;margin:10px 0}
.sectiontop{display:flex;align-items:end;justify-content:space-between;gap:12px}
.search{display:flex;gap:10px;margin-top:22px}
.search input{flex:1}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:27px}
.card{border:1px solid var(--line);border-radius:17px;padding:22px;background:var(--card);display:flex;flex-direction:column;gap:16px}
.card h3{margin:0 0 5px}
.cards .card .btn{width:100%;margin-top:auto}
.tag{font-size:11px;font-weight:700;color:var(--lime);background:#273b25;border-radius:100px;padding:6px 10px;display:inline-block}
.muted-tag{color:var(--muted);background:#1e2a22}

/* Profile */
.back{display:inline-block;color:var(--lime);margin:30px 0 15px;font-size:14px;font-weight:700}
.profile{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;padding:0 0 80px}
.profilemain,.offerpanel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:30px}
.profilemain h1{font-size:38px;margin:18px 0 4px;letter-spacing:-1px}
.profilemain p{color:var(--muted);line-height:1.7}
.offerpanel h2{font-size:25px;margin:8px 0}
.facts{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
.facts span{font-size:12px;padding:8px 10px;border:1px solid #405043;border-radius:25px}
.offers{display:grid;gap:12px;margin-top:18px}
.offer{position:relative;width:100%;display:flex;align-items:center;justify-content:space-between;background:#1a281e;border:1px solid #405143;border-radius:13px;color:var(--text);padding:17px;gap:12px;cursor:pointer}
.offer input{position:absolute;top:0;left:0;width:1px;height:1px;opacity:0;pointer-events:none}
.offer:has(input:checked){border:2px solid var(--lime);background:#253522;padding:16px}
.offer:has(input:focus-visible){outline:3px solid var(--lime);outline-offset:3px}
.offer>span{flex:1}
.offer strong{font-size:17px}
.offer small{display:block;color:#a0b0a3;margin-top:7px;line-height:1.4}
.offer b{white-space:nowrap;color:var(--lime)}

/* Forms, checkout and simple pages */
.checkout{width:min(660px,100%);margin:16px auto 85px;border-radius:22px;border:1px solid var(--line);background:var(--card);padding:30px}
.checkout h1{font-size:33px;margin:8px 0}
.narrow{width:min(660px,100%);margin:30px auto 85px}
.narrow h1{font-size:33px}
.narrow .card{margin-bottom:14px}
.field{margin:19px 0}
.field>label{display:block;margin-bottom:8px;font-size:13px;font-weight:750}
.field input,.field textarea,.search input{background:#0e1711;color:var(--text);border:1px solid #46584b;border-radius:11px;padding:13px;width:100%;outline-color:var(--lime)}
.field textarea{min-height:150px;resize:vertical}
.check{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--muted)}
.check input{accent-color:var(--lime);width:18px;height:18px}
.notice{font-size:13px;line-height:1.6;color:#b5c3b6;border-left:3px solid var(--lime);padding-left:12px}
.error{font-size:14px;color:var(--danger);border-left:3px solid var(--danger);padding-left:12px}
.success{padding:25px;text-align:center}
.success h2{font-size:30px}
.bigcheck{font-size:44px;color:var(--lime)}
.message-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px}
.message p{margin:0;overflow-wrap:anywhere;line-height:1.6}

.footer{border-top:1px solid #29352d;color:#8d9f91;font-size:13px;padding:28px 0 35px;display:flex;justify-content:space-between;gap:14px}

@media(max-width:730px){
  .hero,.profile{grid-template-columns:1fr;gap:24px}
  .hero{padding:58px 0 48px}
  .cards{grid-template-columns:1fr}
  .hero h1{letter-spacing:-2px}
  .links{gap:14px}
  .links a.hide-mobile{display:none}
  .feature{padding:22px}
  .profilemain,.offerpanel,.checkout{padding:23px}
  .footer{flex-direction:column}
  .section{padding-bottom:60px}
}
.card p{margin:0}
.banner{margin:16px 0 0}
