
:root{
  --bg:#fff;
  --paper:#f7f3ec;
  --ink:#1e1e1e;
  --muted:#6b6b6b;
  --gold:#c7a46a;
  --beige:#ede6dd;
  --radius:14px;
  --shadow: 0 8px 28px rgba(0,0,0,.06);
  --container: 1100px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.6}
h1,h2,h3{font-family:'Playfair Display',serif;letter-spacing:.2px;margin:0 0 .5rem 0}
h1{font-size:clamp(28px,4vw,42px);}
h1 em{font-style:italic}
h2{font-size:clamp(22px,3vw,28px);}
h3{font-size:clamp(20px,2.6vw,24px);}
p{margin:.5rem 0 1rem 0;color:var(--muted)}

.topbar{max-width:var(--container);margin:0 auto;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{display:flex;align-items:center;gap:12px}
.logo{display:inline-flex;width:40px;height:40px;border-radius:10px;background:var(--ink);color:#fff;align-items:center;justify-content:center;font-weight:700;box-shadow:var(--shadow)}
.brand-text{font-size:14px}
.brand-text .meta{color:var(--muted);font-size:12.5px}

.nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.chip{display:inline-flex;padding:8px 12px;border-radius:100px;background:#f0f0f0;color:var(--ink);text-decoration:none;font-weight:600;border:1px solid #ececec}
.chip:hover{background:#eaeaea}
.lang .lang-btn{border:1px solid #e0e0e0;background:#fafafa;padding:7px 10px;border-radius:20px;cursor:pointer;font-weight:600}
.lang .lang-btn.active{background:var(--ink);color:#fff}

.hero{max-width:var(--container);margin:12px auto 0;display:grid;grid-template-columns:1.2fr .9fr;gap:28px;padding:0 16px}
.hero .pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}
.pill{background:var(--beige);padding:6px 10px;border-radius:999px;border:1px solid #e7ddd1;color:#7a6e58;font-weight:600;font-size:12px}
.lead{font-size:16px}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 6px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:999px;text-decoration:none;font-weight:700;border:1.5px solid transparent}
.btn.primary{background:var(--ink);color:#fff}
.btn.primary:hover{opacity:.9}
.btn.outline{border-color:#ddd;color:var(--ink)}
.btn.ghost{background:#f6f6f6;color:var(--ink)}
.gift{color:#5a5a5a;font-size:14px;margin-top:6px}
.hero-img img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}

.special{max-width:var(--container);margin:24px auto 10px;background:linear-gradient(180deg,#fff,var(--paper));border:1px solid #eee;border-radius:var(--radius);padding:18px 16px;box-shadow:var(--shadow)}
.badge{display:inline-block;background:var(--gold);color:#fff;font-weight:800;letter-spacing:.4px;padding:6px 10px;border-radius:999px;margin-bottom:8px;font-size:12px}
.special-title{margin:.2rem 0 .1rem 0}
.special-desc{margin:0 0 .8rem 0}

.services{max-width:var(--container);margin:10px auto;padding:0 16px}
.services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.svc{border:1px solid #eee;border-radius:16px;padding:14px;background:#fff;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr auto;grid-template-areas:'name price' 'desc btn'}
.svc .name{grid-area:name;font-weight:700}
.svc .price{grid-area:price;font-family:'Playfair Display',serif;font-weight:600}
.svc .desc{grid-area:desc;color:var(--muted);font-size:14px;margin-top:2px}
.svc-book{grid-area:btn;justify-self:end;background:var(--ink);color:#fff;text-decoration:none;padding:8px 12px;border-radius:999px;font-weight:700}
.note{font-size:13.5px;color:#777;margin-top:10px}

.portfolio{max-width:var(--container);margin:6px auto;padding:0 16px}
.portfolio .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.portfolio img{width:100%;aspect-ratio:1/1;border-radius:14px;object-fit:cover;box-shadow:var(--shadow)}

.why{max-width:var(--container);margin:10px auto;padding:0 16px}
.checks{list-style:none;padding:0;margin:8px 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.checks li{position:relative;padding-left:24px}
.checks li:before{content:'✓';position:absolute;left:0;top:0;color:var(--gold);font-weight:900}
.license-card{display:flex;gap:14px;align-items:center;border:1px solid #eee;background:#fff;border-radius:16px;padding:12px;box-shadow:var(--shadow);margin-top:8px}
.license-img{width:260px;max-width:40%;border-radius:10px;object-fit:cover}
.caption{font-family:'Playfair Display',serif;font-weight:600}
.small{color:#666;font-size:14px}

.findus{max-width:var(--container);margin:10px auto 30px;padding:0 16px}
.socials{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}
.soc{display:inline-flex;padding:8px 12px;border:1px solid #e5e5e5;border-radius:999px;text-decoration:none;color:var(--ink);background:#fafafa;font-weight:600}

.footer{border-top:1px solid #eee;background:#fcfbf8;padding:18px 0;margin-top:30px;color:#5b5b5b}
.footer .wrap{max-width:var(--container);margin:0 auto;padding:0 16px;display:grid;gap:4px}
.footer a{color:inherit}

.sticky-cta{position:fixed;left:0;right:0;bottom:0;display:none;justify-content:space-between;gap:6px;padding:10px 16px;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-top:1px solid #eee}
.sticky-cta a{flex:1;text-align:center;padding:10px 12px;border-radius:999px;text-decoration:none;font-weight:800}
.sticky-cta a:first-child{background:#f2f2f2;color:#000}
.sticky-cta a:last-child{background:var(--ink);color:#fff}

.reveal{opacity:0;transform:translateY(12px);transition:all .6s ease}
.reveal.visible{opacity:1;transform:none}

/* Responsive */
@media (max-width: 880px){
  .hero{grid-template-columns:1fr}
  .services-grid{grid-template-columns:1fr}
  .portfolio .grid{grid-template-columns:repeat(2,1fr)}
  .checks{grid-template-columns:1fr}
  .license-img{max-width:48%}
  .sticky-cta{display:flex}
}
