.build{background:#0b0b0b;color:var(--bone);min-height:100vh;padding:calc(var(--header) + 50px) 5vw 80px}
.build .eyebrow{color:#8f8980} .build .body{color:#aaa49a}
.build-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end}
.build-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.build-stage{height:680px;margin-top:40px;background:radial-gradient(circle at 50% 10%,rgba(255,255,255,.08),transparent 24%),linear-gradient(180deg,#151515,#090909);border:1px solid rgba(255,255,255,.14)}
.build .bubble{color:#efe8dd;background:radial-gradient(circle at 28% 20%,rgba(255,255,255,.24),rgba(255,255,255,.08) 34%,rgba(255,255,255,.025) 58%);border-color:rgba(255,255,255,.26);box-shadow:inset 0 0 40px rgba(255,255,255,.06),0 18px 40px rgba(0,0,0,.36)}
.build .bubble small,.build .bubble .status{color:#aaa49a}
.request-list{margin-top:52px;border-top:1px solid rgba(255,255,255,.16)}
.request-row{display:grid;grid-template-columns:1.15fr .45fr .5fr auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.request-row span{font-size:12px;color:#aaa49a}
.vote{border:1px solid rgba(255,255,255,.28);background:transparent;color:#fff;border-radius:999px;padding:9px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}

.idea-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.idea-card{min-height:460px;border-radius:24px;background:#e4dfd7;padding:34px;display:flex;flex-direction:column;justify-content:space-between}
.idea-card.dark{background:#101010;color:var(--bone)}
.idea-card .big{font-size:clamp(44px,5vw,78px);line-height:.9;letter-spacing:-.06em}
.idea-card p{line-height:1.7;color:var(--muted)} .idea-card.dark p{color:#aaa49a}

.footer{padding:42px 5vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:11px;letter-spacing:.11em;text-transform:uppercase}

.overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:150;display:none} .overlay.open{display:block}
.drawer{position:absolute;right:0;top:0;height:100%;width:min(460px,94vw);background:#f4f1eb;color:#111;padding:28px;display:flex;flex-direction:column}
.drawer-head{display:flex;justify-content:space-between;align-items:center} .drawer h2{font-size:38px;letter-spacing:-.05em;margin:0}
.icon{border:0;background:none;font-size:24px}
.cart-items{margin-top:30px;flex:1;overflow:auto} .cart-line{display:grid;grid-template-columns:1fr auto;gap:10px;padding:18px 0;border-top:1px solid var(--line)} .cart-line small{display:block;color:var(--muted);margin-top:4px}
.remove{border:0;background:none;text-decoration:underline;font-size:11px} .total{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;font-weight:700}
.checkout{margin-top:14px;width:100%;border:0;background:#111;color:#fff;border-radius:999px;padding:16px;text-transform:uppercase;letter-spacing:.12em;font-size:11px}
.modal{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(640px,92vw);background:#f4f1eb;color:#111;border-radius:24px;padding:28px}
.modal input,.modal textarea{width:100%;margin-top:8px;padding:14px;border-radius:12px;border:1px solid var(--line);background:#fff}
.form-row{margin-top:16px} .form-row label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)} .modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
.toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(30px);opacity:0;z-index:170;background:#111;color:#fff;border-radius:999px;padding:12px 18px;font-size:12px;transition:.24s}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

@media(max-width:980px){
  .nav{display:none} .mobile{display:block}
  .header.mobile-open{mix-blend-mode:normal;background:#111;color:#fff}
  .header.mobile-open .nav{display:flex;position:absolute;left:0;right:0;top:var(--header);background:#111;padding:28px;flex-direction:column;align-items:flex-start}
  .hero-grid{grid-template-columns:1fr} .hero-products{height:62vh;margin-top:20px} .hero-sub{display:block;max-width:60vw} .hero-sub .pill{margin-top:18px}
  .section-head,.routine-top,.build-intro{display:block} .section-head p,.build-intro p{margin-top:24px} .build-actions{justify-content:flex-start;margin-top:24px}
  .product-grid,.idea-grid{grid-template-columns:1fr}
  .product-detail{grid-template-columns:1fr} .product-visual{position:relative;min-height:70vh}
  .request-row{grid-template-columns:1fr auto} .request-row .votes,.request-row .status{display:none}
}
@media(max-width:560px){
  .header{padding:0 18px}
  .hero,.section,.routine,.community,.simple,.build,.footer{padding-left:18px;padding-right:18px}
  .title-xl{font-size:64px} .hero-sub{max-width:82vw} .hero-products{height:52vh}
  .hero-product.shower{transform:translate(8%,8px)} .hero-product.am{transform:translate(-3%,16px)} .hero-product.pm{transform:translate(-12%,16px)}
  .product-card{min-height:650px} .flow-row{grid-template-columns:44px 1fr} .flow-row span,.flow-row em{grid-column:2}
  .product-copy{padding-left:18px;padding-right:18px} .build-stage{height:580px}
}
