:root{ --bg:#fbf8f3; --paper:#fffaf3; --ink:#2f2a25; --muted:#6b625a; --line:#e7dfd6; --accent:#b89b7a; --btn:#2f2a25; --btnText:#fff; --radius:18px; --shadow: 0 14px 35px rgba(0,0,0,.08); --max: 1080px; } *{box-sizing:border-box} html,body{margin:0;padding:0} body{ font-family: ui-serif, Georgia, "Times New Roman", serif; color:var(--ink); background:linear-gradient(180deg, var(--bg), #ffffff); } a{color:inherit;text-decoration:none} img{max-width:100%;display:block;border-radius:14px} .container{max-width:var(--max);margin:0 auto;padding:0 18px} .topbar{ position:sticky; top:0; z-index:50; backdrop-filter: blur(10px); background: rgba(251,248,243,.75); border-bottom:1px solid var(--line); } .nav{ display:flex; align-items:center; justify-content:space-between; padding:14px 0; gap:14px; } .brand{ display:flex; flex-direction:column; line-height:1.05; } .brand .name{font-weight:700; letter-spacing:.6px; font-size:18px} .brand .tag{font-size:12px; color:var(--muted); letter-spacing:1.4px; text-transform:uppercase} .links{display:flex; gap:14px; flex-wrap:wrap; justify-content:flex-end} .links a{ font-size:14px; padding:10px 12px; border-radius:999px; border:1px solid transparent; } .links a:hover{border-color:var(--line); background:rgba(255,255,255,.6)} .links a.active{border-color:var(--accent);} .btn{ display:inline-flex; align-items:center; justify-content:center; padding:12px 16px; border-radius:999px; background:var(--btn); color:var(--btnText); font-size:14px; border:1px solid var(--btn); gap:10px; } .btn:hover{transform:translateY(-1px); box-shadow:var(--shadow)} .btn.outline{ background:transparent; color:var(--ink); border:1px solid var(--line); } .hero{ padding:34px 0 14px; } .heroCard{ background:var(--paper); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); } .heroGrid{ display:grid; grid-template-columns: 1.1fr .9fr; } .heroMedia{min-height:320px} .heroMedia img{ width:100%; height:100%; object-fit:cover; border-radius:0; } .heroCopy{ padding:26px 22px; display:flex; flex-direction:column; justify-content:center; gap:12px; } .kicker{ text-transform:uppercase; letter-spacing:2px; font-size:12px; color:var(--muted); } h1{ margin:0; font-size:40px; letter-spacing:.4px; } .lede{ margin:0; font-size:16px; color:var(--muted); line-height:1.6; } .heroActions{display:flex; gap:12px; flex-wrap:wrap; margin-top:6px} .section{padding:22px 0} .section h2{ margin:0 0 10px; font-size:26px; } .sub{ margin:0 0 16px; color:var(--muted); line-height:1.6; } .cards{ display:grid; grid-template-columns: repeat(3, 1fr); gap:14px; } .card{ background:rgba(255,255,255,.75); border:1px solid var(--line); border-radius:var(--radius); padding:16px; } .card h3{margin:0 0 8px; font-size:18px} .card p{margin:0; color:var(--muted); line-height:1.6; font-size:14px} .gallery{ display:grid; grid-template-columns: repeat(3, 1fr); gap:10px; } .gallery img{height:290px; object-fit:cover} .pricingGrid{ display:grid; grid-template-columns: repeat(3, 1fr); gap:14px; } .price{ background:rgba(255,255,255,.8); border:1px solid var(--line); border-radius:var(--radius); padding:18px; box-shadow: 0 10px 24px rgba(0,0,0,.05); } .price .label{ text-transform:uppercase; letter-spacing:2px; font-size:12px; color:var(--muted); } .price .amount{ font-size:34px; margin:10px 0 8px; } .price ul{margin:10px 0 0; padding-left:18px; color:var(--muted); line-height:1.7} .badge{ display:inline-block; margin-left:8px; font-size:11px; padding:6px 10px; border-radius:999px; background:rgba(184,155,122,.18); border:1px solid rgba(184,155,122,.35); color:var(--ink); } .footer{ margin-top:28px; padding:22px 0 30px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; } .footer a{font-weight:700} @media (max-width: 900px){ .heroGrid{grid-template-columns:1fr} h1{font-size:34px} .cards{grid-template-columns:1fr} .gallery{grid-template-columns:1fr 1fr} .gallery img{height:240px} .pricingGrid{grid-template-columns:1fr} }