*{box-sizing:border-box;margin:0;padding:0}
:root{
  --text:#23152f;--muted:#675b73;--gold:#ba8b3f;--purple:#6d3fa7;--purple-dark:#31184b;
  --soft:#faf7ff;--line:#eadff5;--shadow:0 18px 40px rgba(49,24,75,.10);
  --shadow-strong:0 24px 60px rgba(22,10,34,.18);--container:1160px;
}
html{scroll-behavior:smooth}
body{font-family:Georgia,"Times New Roman",serif;color:var(--text);background:
radial-gradient(circle at top left, rgba(109,63,167,.08), transparent 24%),
radial-gradient(circle at top right, rgba(186,139,63,.10), transparent 24%),#fff;line-height:1.65}
img{max-width:100%;display:block} a{text-decoration:none;color:inherit}
.container{width:min(var(--container),calc(100% - 32px));margin:0 auto}
.header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative}
.brand{display:flex;align-items:center;gap:14px}
.logo-wrap{width:72px;height:72px;border-radius:50%;background:radial-gradient(circle at center, #fffdf5 0%, #fff3cd 38%, #f1ddb0 68%, #fffdf8 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 14px 28px rgba(186,139,63,.25);border:2px solid rgba(186,139,63,.28);padding:7px;flex:0 0 auto}
.logo-wrap img{width:100%;height:100%;border-radius:50%;object-fit:contain;filter:brightness(1.35) contrast(1.10) saturate(1.06)}
.brand strong{display:block;font-size:1.1rem;letter-spacing:.08em}
.brand span{display:block;font-family:Arial,Helvetica,sans-serif;color:var(--muted);font-size:.83rem}
.menu{display:flex;gap:18px;align-items:center}
.menu a{font-family:Arial,Helvetica,sans-serif;color:var(--muted);font-size:.95rem}
.menu a:hover{color:var(--purple)} .menu-btn{display:none;border:none;background:transparent;font-size:1.5rem;cursor:pointer}

.hero{position:relative;min-height:92vh;padding:90px 0 40px;overflow:hidden;display:flex;align-items:center}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:brightness(1.14) contrast(1.05) saturate(1.04)}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg, rgba(19,10,26,.68) 0%, rgba(34,16,45,.46) 35%, rgba(49,24,75,.20) 70%, rgba(255,255,255,.06) 100%)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:32px;align-items:center}
.glass{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(12px);border-radius:32px;padding:32px;box-shadow:var(--shadow-strong)}
.hero-side{display:grid;gap:18px;justify-items:end}
.hero-card{overflow:hidden;border-radius:28px;border:1px solid rgba(255,255,255,.3);box-shadow:var(--shadow-strong)}
.hero-card.big{width:min(100%,420px)} .hero-card.small{width:min(100%,320px)}
.hero-card img{width:100%;height:100%;object-fit:cover;filter:brightness(1.10) contrast(1.04)}
.tag,.section-tag{display:inline-block;margin-bottom:16px;font:700 .78rem Arial,Helvetica,sans-serif;letter-spacing:.18em;text-transform:uppercase}
.tag{color:#f6dfae}.section-tag{color:var(--purple)}
h1,h2{line-height:1.08;margin-bottom:16px} h1{font-size:clamp(2.2rem,5vw,4.3rem);color:#fff} h2{font-size:clamp(1.9rem,4vw,3rem);color:var(--text)} h3{margin-bottom:10px;font-size:1.35rem}
.hero-text p{color:rgba(255,255,255,.96)} p{margin-bottom:14px;color:var(--muted)}
.hero-highlight{color:#fff1c9;font-weight:700}.section-highlight{color:var(--purple-dark);font-weight:700}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.btn{min-height:48px;padding:0 20px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font:700 .95rem Arial,Helvetica,sans-serif}
.btn-primary{background:linear-gradient(135deg,#fff0c7,var(--gold));color:#2a193d;box-shadow:var(--shadow)}
.btn-secondary{border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.14);color:#fff}
.section{padding:72px 0}.soft{background:linear-gradient(180deg,var(--soft),#fff)} .band{padding-top:10px}
.statement{padding:24px;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);text-align:center;font-size:1.08rem;color:var(--text)}
.title-block{max-width:820px;margin-bottom:28px}.title-block.center{text-align:center;margin-left:auto;margin-right:auto}
.cards{display:grid;gap:18px}.cards.three{grid-template-columns:repeat(3,1fr)}.cards.two{grid-template-columns:repeat(2,1fr)}
.card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:var(--shadow)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;margin-top:28px}
.framed img,.gallery-item img{width:100%;border-radius:28px;box-shadow:var(--shadow);border:1px solid #f0e4db;filter:brightness(1.11) contrast(1.05) saturate(1.03)}
.list{padding-left:18px;color:var(--muted)} .list li{margin-bottom:8px}
.gallery-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:18px;grid-auto-rows:230px}
.gallery-item{overflow:hidden;border-radius:28px;box-shadow:var(--shadow);background:linear-gradient(180deg,#fff,#faf7ff)}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.gallery-item:hover img{transform:scale(1.03)} .gallery-item.tall{grid-row:span 2}
.portrait-fit{display:flex;align-items:center;justify-content:center;padding:10px}
.portrait-fit img{object-fit:contain !important;background:#fff}
.featured-portrait{border-radius:28px;border:1px solid #f0e4db;box-shadow:var(--shadow);padding:16px;background:linear-gradient(180deg,#fff,#faf7ff)}
.featured-portrait img{width:100%;max-height:1200px;object-fit:contain;border-radius:20px;margin:0 auto}
.price-layout{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
.price-box{background:linear-gradient(180deg,#fffdf8,#fff2de);border:1px solid #f0dfbf;border-radius:28px;padding:30px;box-shadow:var(--shadow)}
.price-box span{display:inline-block;margin-bottom:14px;padding:8px 12px;border-radius:999px;background:#f4e9ff;color:var(--purple);font:700 .82rem Arial,Helvetica,sans-serif}
.price-box strong{display:block;font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.05;color:var(--purple-dark);margin-bottom:10px}
.contact-box{display:grid;grid-template-columns:1.2fr .8fr;gap:22px;background:linear-gradient(180deg,#fff,#fcf9ff);border:1px solid var(--line);border-radius:28px;padding:28px;box-shadow:var(--shadow)}
.contact-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.mini-card{min-height:92px;border-radius:22px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-weight:700;background:#fff;box-shadow:0 10px 24px rgba(49,24,75,.06)}
.footer{padding:28px 0;border-top:1px solid var(--line);background:#fff}.footer-wrap{display:flex;justify-content:space-between;align-items:center;gap:18px}.footer p{margin:0}.footer-logo{width:62px;height:62px}
@media (max-width:900px){
  .hero{min-height:auto}.hero-grid,.split,.cards.three,.cards.two,.price-layout,.contact-box{grid-template-columns:1fr}
  .hero-side{justify-items:stretch}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:220px}
}
@media (max-width:720px){
  .menu-btn{display:block}
  .menu{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:0}
  .menu.open{display:flex}.menu a{display:block;width:100%;padding:14px 16px;border-top:1px solid #f3edf8}
  .footer-wrap{flex-direction:column;align-items:flex-start}.glass{padding:24px}
  .hero-overlay{background:linear-gradient(180deg, rgba(19,10,26,.72) 0%, rgba(34,16,45,.54) 46%, rgba(49,24,75,.34) 100%)}
  .gallery-grid{grid-template-columns:1fr;grid-auto-rows:240px}.gallery-item.tall{grid-row:span 1}
}
