*{margin:0;padding:0;box-sizing:border-box}:root{--ink:#171412;--muted:#6b625c;--paper:#f7f4ef;
    --card:#fff;--accent:#a9825a}
body{font-family:Inter,Arial,sans-serif;
    background:var(--paper);color:var(--ink);overflow-x:hidden}.topbar{display:flex;justify-content:space-between;
        align-items:center;padding:22px 4%;background:rgba(255,255,255,.96);position:sticky;top:0;z-index:
        10;box-shadow:0 4px 20px rgba(0,0,0,.08);backdrop-filter:blur(14px)}
        .logo{font-size:26px;font-weight:900;color:var(--ink);text-decoration:none;letter-spacing:-.5px}
        nav{display:flex;gap:17px;flex-wrap:wrap;justify-content:flex-end}nav a{text-decoration:none;
            color:var(--ink);font-weight:800;font-size:14px}
            .hero{height:560px;background-size:cover;background-position:center;border-radius:0 0 44px 44px;overflow:hidden}
            .overlay{width:100%;height:100%;background:linear-gradient(90deg,rgba(0,0,0,.66),rgba(0,0,0,.28));
                display:flex;flex-direction:column;justify-content:center;align-items:center;
                text-align:center;color:white;padding:30px}
                .hero h1{font-size:68px;line-height:1.08;margin:20px 0;letter-spacing:-2px}
                .desc{font-size:21px;max-width:820px;line-height:1.6}
                .mini{font-size:12px;letter-spacing:4px;font-weight:900}
                .home-hero{
                    background-image:url('https://images.unsplash.com/photo-1514933651103-005eec06c04b?auto=format&fit=crop&w=1800&q=80')}
                    .cafe-hero{
                        background-image:url('https://images.unsplash.com/photo-1495474472287-4d71bcdd2085?auto=format&fit=crop&w=1800&q=80')}
                    .mood-hero{
                        background-image:url('https://images.unsplash.com/photo-1509042239860-f550ce710b93?auto=format&fit=crop&w=1800&q=80')}
                    .gallery-hero{
                        background-image:url('https://images.unsplash.com/photo-1445116572660-236099ec97a0?auto=format&fit=crop&w=1800&q=80')}
                    .ads-hero{
                        background-image:url('https://images.unsplash.com/photo-1511920170033-f8396924c348?auto=format&fit=crop&w=1800&q=80')}
                    .inquiry-hero{
                        background-image:url('https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?auto=format&fit=crop&w=1800&q=80')}
                    .admin-hero{
                        background-image:url('https://images.unsplash.com/photo-1442512595331-e89e73853f31?auto=format&fit=crop&w=1800&q=80')}
                    .map-hero{
                        background-image:url('https://images.unsplash.com/photo-1554118811-1e0d58224f24?auto=format&fit=crop&w=1800&q=80')}
                    .login-hero{
                        background-image:url('https://images.unsplash.com/photo-1523942839745-7848c839b661?auto=format&fit=crop&w=1800&q=80')}
                    .signup-hero{
                        background-image:url('https://images.unsplash.com/photo-1517701604599-bb29b565090c?auto=format&fit=crop&w=1800&q=80')}
                    .saved-hero{
                        background-image:url('https://images.unsplash.com/photo-1521017432531-fbd92d768814?auto=format&fit=crop&w=1800&q=80')}
                    .section{
                        padding:76px 4%}.section h2{font-size:44px;margin:10px 0 35px;letter-spacing:-1px}
                    .section-label{
                        letter-spacing:4px;font-size:12px;font-weight:900;color:var(--accent);text-align:center}
                    .grid{
                        display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px}
                    .card{
                        background:white;border-radius:30px;overflow:hidden;box-shadow:0 18px 45px rgba(0,0,0,.09);
                        position:relative;text-decoration:none;color:var(--ink);padding:26px}
                    .card.mood,.card.gallery{height:330px;padding:0;color:white}
                    .card img,.thumb{width:100%;height:255px;object-fit:cover;border-radius:22px;margin-bottom:15px}
                    .card.mood img,.card.gallery img{height:100%;border-radius:0;margin:0}
                    .card.mood:before,.card.gallery:before{content:'';
                        position:absolute;inset:0;background:linear-gradient(transparent,rgba(0,0,0,.72));z-index:1}
                    .card span{position:absolute;left:24px;bottom:58px;font-size:34px;font-weight:900;z-index:2;color:white}
                    .card small{position:absolute;left:24px;bottom:28px;z-index:2;color:white;font-weight:700}button,
                    .btn-link{display:inline-block;padding:14px 22px;border:0;border-radius:18px;
                        background:var(--ink);color:white;text-decoration:none;font-weight:900;cursor:pointer}
                    .sub-btn{background:var(--accent)}input,select,textarea{width:100%;padding:16px;border:0;border-radius:16px;
                        background:white;font-size:15px}textarea{min-height:130px}
                    .form-box{display:grid;gap:14px;background:white;border-radius:28px;padding:28px;
                        box-shadow:0 18px 45px rgba(0,0,0,.08);margin-bottom:35px}
                    .search-box{display:grid;grid-template-columns:1fr auto;gap:12px;margin-bottom:25px}
                    .region-filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}
                    .region-filter button{background:white;color:var(--ink);border:1px solid #ddd;border-radius:999px}
                    .region-filter button.active{background:var(--ink);color:white}
                    .price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:28px}
                    .price-card{background:white;border-radius:28px;padding:30px;box-shadow:0 18px 45px rgba(0,0,0,.08)}
                    .price-card h2{font-size:30px;margin:10px 0}.price-card ul{padding-left:18px;line-height:1.8}
                    .ad-label{letter-spacing:3px;font-size:12px;font-weight:900;color:var(--accent)}
                    .ad-desc{line-height:1.7;color:var(--muted);margin:15px 0}
                    .map-box{width:100%;height:1500px;border-radius:30px;background:white;box-shadow:0 18px 45px rgba(0,0,0,.08);
                        overflow:hidden}.hidden{display:none}@media(max-width:900px){
                            .topbar{display:block}nav{margin-top:15px;justify-content:flex-start}
                            .hero h1{font-size:40px}
                            .search-box{grid-template-columns:1fr}
                            .hero{height:500px}}