
:root{
  --cream:#ebe7e0; --cream2:#f7f4ee; --ink:#1e1f1e; --slate:#3d464a;
  --olive:#5a5d52; --olive-dark:#48502d; --brown:#644f2e; --rust:#975f2d;
  --mustard:#b08038; --taupe:#a4a299; --white:#fff; --line:#d8d2c8;
  --ok:#5f6d3c; --shadow:0 12px 32px rgba(41,39,34,.09);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--cream2);color:var(--ink);line-height:1.5}
a{color:var(--brown);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}
.brand-header{background:rgba(247,244,238,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}
.nav-wrap{max-width:1180px;margin:auto;padding:11px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{width:210px;max-height:70px;object-fit:contain;object-position:left center}
.nav-links{display:flex;align-items:center;gap:19px;flex-wrap:wrap}
.nav-links a{font-weight:750;color:var(--slate)}
.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:10px;padding:12px 18px;font-weight:850;cursor:pointer;text-decoration:none!important;background:var(--olive-dark);color:#fff}
.btn:hover{filter:brightness(.95)}
.btn-secondary{background:var(--brown)}
.btn-mustard{background:var(--mustard);color:#1d1b17}
.btn-outline{background:transparent;border:2px solid var(--olive-dark);color:var(--olive-dark)}
.hero{background:linear-gradient(135deg,var(--cream) 0%,#f9f6f0 70%);border-bottom:1px solid var(--line)}
.hero-inner{max-width:1180px;margin:auto;padding:70px 22px 62px;display:grid;grid-template-columns:1.5fr .8fr;gap:48px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;font-weight:900;color:var(--rust)}
h1,h2,h3{line-height:1.08;margin-top:0}
h1{font-size:clamp(2.7rem,6vw,5.5rem);letter-spacing:-.045em;margin-bottom:17px}
h2{font-size:clamp(2rem,4vw,3.2rem);letter-spacing:-.03em}
.hero p{font-size:1.16rem;max-width:720px}
.hero-card{background:#fff;border:1px solid var(--line);padding:28px;border-radius:20px;box-shadow:var(--shadow)}
.hero-card strong{display:block;font-size:1.2rem;margin-bottom:8px}
.hero-card .big{font-size:2.2rem;font-weight:950;color:var(--olive-dark)}
.section{max-width:1180px;margin:auto;padding:66px 22px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:26px}
.section-head p{max-width:650px;color:#555}
.filters{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0 28px}
.chip{display:inline-block;padding:7px 11px;border-radius:999px;background:#e3ded5;color:var(--slate);font-weight:750;font-size:.9rem}
.catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:22px}
.product-card{background:#fff;border:1px solid var(--line);border-radius:19px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 5px 16px rgba(41,39,34,.055)}
.product-photo{aspect-ratio:4/3;background:#e7e2d9;display:grid;place-items:center;overflow:hidden}
.product-photo img{width:100%;height:100%;object-fit:cover}
.product-photo.placeholder img{width:76%;height:76%;object-fit:contain;opacity:.72}
.product-body{padding:20px;display:flex;flex-direction:column;flex:1}
.product-category{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--rust)}
.product-card h3{font-size:1.45rem;margin:5px 0 9px}
.rate{font-size:1.8rem;font-weight:950;color:var(--olive-dark);margin:8px 0}
.rate small{font-size:.82rem;font-weight:700;color:#555}
.status{display:inline-flex;width:max-content;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;font-weight:850;font-size:.88rem;margin:5px 0 15px}
.status-available{background:#e7ecd9;color:#44542a}
.status-reserved{background:#f1e5c5;color:#795c16}
.status-rented{background:#e2e4e4;color:#3d464a}
.status-service{background:#f0dcd0;color:#82491e}
.status-neutral{background:#e9e5df;color:#666}
.product-actions{margin-top:auto;padding-top:13px}
.public-note{background:var(--slate);color:#fff;border-radius:20px;padding:28px}
.public-note h2{font-size:2rem}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.step{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}
.step-num{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--mustard);font-weight:950;margin-bottom:12px}
.footer{background:var(--slate);color:#eee;padding:36px 22px;margin-top:30px}
.footer-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}
.footer .logo{background:#f7f4ee;border-radius:10px;padding:6px;width:180px}

/* Admin */
.admin-body{background:#eeeae3}
.admin-header{background:var(--slate);color:#fff;position:sticky;top:0;z-index:40}
.admin-nav{max-width:1260px;margin:auto;padding:9px 18px;display:flex;align-items:center;gap:18px}
.admin-nav .logo{background:var(--cream2);border-radius:9px;padding:4px;width:160px;max-height:52px}
.admin-links{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-left:auto}
.admin-links a{color:#fff;font-weight:750}
.admin-main{max-width:1260px;margin:auto;padding:28px 18px 55px}
.admin-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:14px}
.metric{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px}
.metric .number{font-size:2.25rem;font-weight:950;color:var(--olive-dark)}
.panel{background:#fff;border:1px solid var(--line);border-radius:17px;padding:22px;margin-bottom:20px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
label{display:block;font-weight:780;color:var(--slate)}
input,select,textarea{width:100%;border:1px solid #c8c2b8;border-radius:9px;padding:11px 12px;background:#fff;font:inherit;color:var(--ink);margin-top:5px}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(176,128,56,.2);border-color:var(--mustard)}
.full{grid-column:1/-1}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{padding:11px 10px;border-bottom:1px solid #e1ddd6;text-align:left;vertical-align:top}
th{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:#666}
.thumb{width:70px;height:58px;object-fit:cover;border-radius:8px;background:#eee}
.scan-box{max-width:680px;margin:35px auto}
.scan-input{font-size:1.6rem;padding:17px}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:25px;background:linear-gradient(135deg,var(--cream),var(--cream2))}
.login-card{width:min(470px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:31px;box-shadow:var(--shadow)}
.login-card .logo{width:230px;margin:0 auto 20px}
.alert{padding:11px 14px;border-radius:10px;background:#f1e5c5;margin:12px 0}
.asset-photo-large{max-width:360px;max-height:260px;object-fit:contain;background:#f2eee7;border-radius:12px;padding:7px}
.muted{color:#67645f}
.mobile-bar{display:none}

@media(max-width:850px){
 .hero-inner{grid-template-columns:1fr;padding-top:46px}
 .nav-links a:not(.btn){display:none}
 .steps{grid-template-columns:1fr 1fr}
 .form-grid{grid-template-columns:1fr}
 .full{grid-column:auto}
 .admin-links a{font-size:.88rem}
}
@media(max-width:600px){
 .logo{width:165px}
 h1{font-size:3rem}
 .section{padding:45px 16px}
 .hero-inner{padding-left:16px;padding-right:16px}
 .catalog{grid-template-columns:1fr}
 .steps{grid-template-columns:1fr}
 .section-head{align-items:start;flex-direction:column}
 .admin-nav{align-items:flex-start;flex-wrap:wrap}
 .admin-links{width:100%;margin-left:0;overflow:auto;flex-wrap:nowrap;padding-bottom:3px}
 .admin-main{padding:20px 12px 45px}
 table{font-size:.88rem}
 .table-scroll{overflow:auto}
 .mobile-bar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--slate);padding:7px;gap:7px}
 .mobile-bar a{text-align:center;color:#fff;font-weight:800;padding:8px}
 body{padding-bottom:58px}
}
