:root { --ink:#182018; --forest:#143f2b; --forest-2:#0d3020; --cream:#f4f0e6; --paper:#fffdf8; --red:#a33a27; --gold:#d6ad57; --line:rgba(24,32,24,.16); --radius:.2rem; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; font-size:16px; line-height:1.5; }
button,a { -webkit-tap-highlight-color:transparent; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
img { display:block; max-width:100%; }
.shell { width:min(1280px,calc(100% - 48px)); margin:0 auto; }

.utility-bar { background:var(--forest-2); color:rgba(255,255,255,.78); font-size:12px; letter-spacing:.02em; }
.utility-inner { min-height:34px; display:flex; align-items:center; gap:28px; }
.utility-inner span,.utility-inner a { display:flex; align-items:center; gap:7px; }
.utility-inner a { margin-left:auto; color:white; }
.site-header { position:sticky; top:0; z-index:30; background:rgba(255,253,248,.96); border-bottom:1px solid var(--line); backdrop-filter:blur(12px); }
.header-inner { min-height:82px; display:flex; align-items:center; gap:30px; }
.brand { display:flex; align-items:center; min-width:246px; gap:12px; }
.brand img { width:58px; height:58px; object-fit:contain; }
.brand span { font-family:Georgia,"Times New Roman",serif; font-size:22px; line-height:1.02; }
.brand b { display:block; font:700 10px/1.5 Arial,sans-serif; letter-spacing:.16em; text-transform:uppercase; }
.nav { display:flex; align-items:center; justify-content:center; gap:clamp(16px,2vw,32px); flex:1; font-size:14px; font-weight:700; }
.nav a { padding:30px 0 27px; border-bottom:3px solid transparent; transition:color .2s,border-color .2s; }
.nav a:hover { color:var(--red); border-bottom-color:var(--red); }
.header-actions { display:flex; align-items:center; gap:8px; }
.cart-button { border:0; background:var(--forest); color:white; min-height:46px; padding:0 14px; display:flex; align-items:center; gap:9px; cursor:pointer; }
.cart-button b { display:grid; place-items:center; min-width:22px; height:22px; border-radius:50%; background:var(--gold); color:var(--forest-2); font-size:12px; }
.menu-button { display:none; width:46px; height:46px; border:1px solid var(--line); background:white; place-items:center; }

.hero { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(480px,.88fr); min-height:615px; background:var(--forest); color:white; }
.hero-image { min-height:615px; overflow:hidden; }
.hero-image img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.002); }
.hero-copy { padding:clamp(60px,7vw,108px) clamp(42px,6vw,92px); display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; }
.hero-copy::after { content:"Ф"; position:absolute; right:-32px; bottom:-145px; color:rgba(255,255,255,.04); font:700 440px/1 Georgia,serif; pointer-events:none; }
.eyebrow { margin:0 0 20px; font-size:11px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); }
.eyebrow--green { color:#4c795b; }
.hero h1,.section-heading h2,.visit h2 { margin:0; font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-.04em; }
.hero h1 { font-size:clamp(52px,5.5vw,84px); line-height:.94; max-width:680px; }
.hero-lead { max-width:560px; margin:30px 0 0; font-size:18px; line-height:1.65; color:rgba(255,255,255,.78); }
.hero-buttons { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.button { min-height:52px; padding:0 22px; display:inline-flex; align-items:center; justify-content:center; gap:12px; font-weight:800; font-size:14px; transition:transform .2s,background .2s; }
.button:hover { transform:translateY(-2px); }
.button--primary { background:var(--red); color:white; }
.button--primary:hover { background:#bd4933; }
.button--light { border:1px solid rgba(255,255,255,.35); color:white; }
.button--dark { background:var(--forest); color:white; width:fit-content; }
.hero-facts { display:flex; gap:34px; margin-top:42px; position:relative; z-index:1; }
.hero-facts span { border-left:1px solid rgba(255,255,255,.24); padding-left:14px; font-size:12px; color:rgba(255,255,255,.65); }
.hero-facts b { display:block; font:400 19px Georgia,serif; color:white; }

.catalog-strip { padding:82px 0 0; background:var(--paper); }
.section-heading--row { display:flex; align-items:end; justify-content:space-between; gap:30px; }
.section-heading h2,.visit h2 { font-size:clamp(38px,4.2vw,62px); line-height:1.02; }
.text-link { display:inline-flex; align-items:center; gap:10px; padding-bottom:8px; border-bottom:1px solid var(--ink); font-weight:800; font-size:14px; }
.category-row { display:grid; grid-template-columns:repeat(8,1fr); margin-top:44px; border:1px solid var(--line); border-right:0; }
.category { min-height:112px; padding:18px 14px; border-right:1px solid var(--line); display:flex; flex-direction:column; justify-content:space-between; gap:20px; font-weight:800; font-size:13px; transition:color .2s,background .2s; }
.category span { color:#888b83; font-size:11px; font-weight:400; }
.category:hover,.category--active { background:var(--forest); color:white; }
.category:hover span,.category--active span { color:var(--gold); }
.products { padding-top:38px; padding-bottom:104px; }
.product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.product-card { border:1px solid var(--line); background:white; }
.product-image { height:245px; display:grid; place-items:center; overflow:hidden; background:#f7f5ef; }
.product-image img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }
.product-card:hover .product-image img { transform:scale(1.035); }
.product-info { padding:18px; }
.product-info p { margin:0 0 5px; min-height:20px; color:#74776f; font-size:12px; }
.product-info h3 { margin:0; min-height:50px; font:400 21px/1.2 Georgia,serif; }
.product-buy { margin-top:20px; padding-top:15px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; }
.price { font-weight:800; font-size:19px; }
.price small { color:#777; font-size:12px; font-weight:400; }
.product-buy>button { border:0; width:42px; height:42px; display:grid; place-items:center; background:var(--red); color:white; cursor:pointer; }
.counter { height:42px; display:flex; align-items:center; background:var(--forest); color:white; }
.counter button { width:34px; height:42px; border:0; background:transparent; color:white; display:grid; place-items:center; cursor:pointer; }
.counter b { min-width:22px; text-align:center; font-size:13px; }

.places-section { padding:100px 0 110px; background:var(--forest-2); color:white; }
.section-heading--light { display:flex; align-items:end; justify-content:space-between; margin-bottom:50px; }
.places-grid { display:grid; grid-template-columns:1.25fr .75fr; grid-template-rows:repeat(2,330px); gap:18px; }
.place-card { position:relative; overflow:hidden; min-height:330px; }
.place-card--wide { grid-row:1/span 2; }
.place-photo { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .7s; }
.place-card:hover .place-photo { transform:scale(1.04); }
.place-shade { position:absolute; inset:0; background:linear-gradient(0deg,rgba(7,24,15,.92),rgba(7,24,15,.02) 72%); }
.place-logo { position:absolute; top:22px; right:22px; width:70px; height:70px; }
.place-content { position:absolute; left:0; right:0; bottom:0; padding:28px; }
.place-content p { margin:0 0 6px; color:var(--gold); font-size:10px; letter-spacing:.16em; text-transform:uppercase; font-weight:800; }
.place-content h3 { margin:0 0 8px; font:400 clamp(27px,3vw,43px)/1 Georgia,serif; }
.place-content>span { display:block; max-width:530px; color:rgba(255,255,255,.72); font-size:14px; }
.place-content a { display:inline-flex; align-items:center; gap:4px; margin-top:18px; font-weight:800; font-size:13px; }

.visit { display:grid; grid-template-columns:1fr 1fr; padding-top:112px; padding-bottom:112px; }
.visit-photo { min-height:590px; position:relative; }
.visit-photo>img { width:100%; height:100%; object-fit:cover; }
.round-note { position:absolute; right:-55px; bottom:48px; width:145px; height:145px; border-radius:50%; background:var(--red); color:white; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; }
.round-note b { font:400 32px/1 Georgia,serif; }
.round-note span { margin-top:5px; font-size:11px; line-height:1.3; }
.visit-copy { padding:54px 0 40px clamp(72px,8vw,130px); display:flex; flex-direction:column; justify-content:center; }
.visit-copy>p:not(.eyebrow) { margin:26px 0; color:#686b64; font-size:17px; line-height:1.7; }
.visit-options { margin-bottom:32px; border-top:1px solid var(--line); }
.visit-options div { padding:17px 0; border-bottom:1px solid var(--line); }
.visit-options b,.visit-options span { display:block; }
.visit-options b { font-size:15px; }
.visit-options span { margin-top:3px; color:#777; font-size:13px; }

.projects { padding:90px 0; background:var(--cream); }
.projects-inner { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:start; }
.project-list { border-top:1px solid var(--ink); }
.project-list article { display:grid; grid-template-columns:150px 1fr 1.1fr; gap:30px; padding:28px 0; border-bottom:1px solid var(--line); }
.project-list span { color:#6f746c; font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.project-list h3 { margin:0; font:400 30px/1.1 Georgia,serif; }
.project-list p { margin:0; color:#666a63; font-size:14px; line-height:1.6; }

footer { padding:70px 0 24px; background:#101b14; color:white; }
.footer-grid { display:grid; grid-template-columns:1.2fr repeat(3,1fr); gap:40px; }
.footer-brand { display:flex; align-items:center; gap:14px; }
.footer-brand img { width:74px; height:74px; }
.footer-brand p { margin:0; font:400 23px/1.15 Georgia,serif; }
.footer-grid>div:not(.footer-brand) { display:flex; flex-direction:column; align-items:flex-start; }
.footer-grid span { margin-bottom:10px; color:rgba(255,255,255,.48); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.footer-grid b,.footer-grid a { font-size:14px; line-height:1.75; }
.footer-grid a:hover { color:var(--gold); }
.footer-bottom { margin-top:50px; padding-top:20px; border-top:1px solid rgba(255,255,255,.12); display:flex; justify-content:space-between; gap:20px; color:rgba(255,255,255,.4); font-size:11px; }

@media (max-width:1100px) {
  .nav { gap:15px; } .nav a:nth-last-child(2) { display:none; } .brand { min-width:auto; } .brand span { display:none; }
  .hero { grid-template-columns:1.05fr .95fr; } .category-row { grid-template-columns:repeat(4,1fr); } .category { border-bottom:1px solid var(--line); }
  .project-list article { grid-template-columns:120px 1fr; } .project-list p { grid-column:2; }
}
@media (max-width:820px) {
  .shell { width:min(100% - 32px,720px); } .utility-inner span:nth-child(2) { display:none; } .header-inner { min-height:70px; }
  .brand img { width:50px; height:50px; } .cart-button span { display:none; } .menu-button { display:grid; }
  .nav { display:none; position:absolute; left:0; right:0; top:70px; padding:12px 16px 24px; background:var(--paper); border-bottom:1px solid var(--line); flex-direction:column; align-items:stretch; gap:0; }
  .nav--open { display:flex; } .nav a,.nav a:nth-last-child(2) { display:block; padding:14px 8px; border-bottom:1px solid var(--line); }
  .hero { grid-template-columns:1fr; } .hero-image { min-height:360px; } .hero-copy { padding:54px 32px 58px; }
  .product-grid { grid-template-columns:repeat(2,1fr); } .places-grid { grid-template-columns:1fr; grid-template-rows:430px 330px 330px; }
  .place-card--wide { grid-row:auto; } .visit { grid-template-columns:1fr; } .visit-photo { min-height:460px; } .round-note { right:22px; }
  .visit-copy { padding:55px 0 0; } .projects-inner { grid-template-columns:1fr; gap:45px; } .footer-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:540px) {
  .shell { width:min(100% - 24px,480px); } .utility-inner { justify-content:space-between; gap:10px; } .utility-inner>span:first-child { max-width:190px; }
  .utility-inner a { margin-left:0; } .header-inner { gap:12px; } .header-actions { margin-left:auto; } .hero-image { min-height:265px; }
  .hero-copy { padding:44px 20px 50px; } .hero h1 { font-size:47px; } .hero-lead { font-size:16px; margin-top:22px; }
  .hero-buttons { flex-direction:column; align-items:stretch; } .hero-facts { gap:16px; } .catalog-strip { padding-top:64px; }
  .section-heading--row { align-items:start; flex-direction:column; } .section-heading h2,.visit h2 { font-size:40px; }
  .category-row { grid-template-columns:repeat(2,1fr); margin-top:32px; } .product-grid { grid-template-columns:1fr; } .product-image { height:280px; }
  .products { padding-bottom:75px; } .places-section { padding:74px 0; } .places-grid { grid-template-rows:repeat(3,400px); }
  .place-content { padding:22px; } .visit { padding-top:72px; padding-bottom:78px; } .visit-photo { min-height:390px; }
  .round-note { width:124px; height:124px; right:14px; bottom:18px; } .projects { padding:72px 0; }
  .project-list article { grid-template-columns:1fr; gap:8px; } .project-list p { grid-column:auto; } .footer-grid { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; }
}
@media (prefers-reduced-motion:reduce) { * { scroll-behavior:auto!important; transition-duration:.01ms!important; } }

/* Внутренние страницы */
.inner-hero { padding:72px 0 66px; background:var(--cream); border-bottom:1px solid var(--line); }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:25px; color:#6f746c; font-size:12px; }
.breadcrumbs a:hover { color:var(--red); }
.inner-hero h1 { max-width:920px; margin:0; font:400 clamp(44px,6vw,76px)/.98 Georgia,serif; letter-spacing:-.04em; }
.inner-hero p { max-width:760px; margin:24px 0 0; color:#62665f; font-size:18px; line-height:1.7; }
.content-section { padding:76px 0 96px; }
.content-section--tint { background:var(--cream); }
.content-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr); gap:70px; align-items:start; }
.prose h2 { margin:0 0 22px; font:400 clamp(32px,4vw,52px)/1.05 Georgia,serif; letter-spacing:-.03em; }
.prose h3 { margin:36px 0 12px; font:400 28px/1.1 Georgia,serif; }
.prose p { margin:0 0 18px; color:#60645d; font-size:16px; line-height:1.75; }
.info-card { padding:28px; background:var(--forest); color:white; position:sticky; top:112px; }
.info-card h2 { margin:0 0 20px; font:400 30px/1.1 Georgia,serif; }
.info-card p,.info-card span { color:rgba(255,255,255,.72); }
.info-card a { display:block; margin-top:10px; font-weight:800; }
.catalog-layout { display:grid; grid-template-columns:230px 1fr; gap:36px; }
.catalog-menu { border-top:1px solid var(--line); }
.catalog-menu a { display:flex; justify-content:space-between; padding:13px 0; border-bottom:1px solid var(--line); font-size:14px; font-weight:700; }
.catalog-menu a:hover,.catalog-menu a[aria-current="page"] { color:var(--red); }
.catalog-main .product-grid { grid-template-columns:repeat(3,1fr); }
.catalog-main h2 { margin:0 0 25px; font:400 38px/1.1 Georgia,serif; }
.category-intro { margin:0 0 32px; max-width:760px; color:#666a63; }
.direction-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.direction-card { min-height:280px; padding:28px; background:var(--cream); border:1px solid var(--line); display:flex; flex-direction:column; }
.direction-card span { color:var(--red); font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.direction-card h2 { margin:22px 0 12px; font:400 30px/1.05 Georgia,serif; }
.direction-card p { color:#676b64; }
.direction-card a { margin-top:auto; font-weight:800; }
.product-page { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:start; }
.product-gallery { aspect-ratio:1/1; background:#f4f1e9; border:1px solid var(--line); }
.product-gallery img { width:100%; height:100%; object-fit:cover; }
.product-details h1 { margin:0; font:400 clamp(42px,5vw,68px)/1 Georgia,serif; letter-spacing:-.04em; }
.product-kicker { color:#777b73; font-size:13px; text-transform:uppercase; letter-spacing:.12em; }
.product-price { display:block; margin:30px 0 22px; font-size:32px; font-weight:800; }
.product-meta { margin:32px 0; border-top:1px solid var(--line); }
.product-meta div { display:flex; justify-content:space-between; gap:20px; padding:14px 0; border-bottom:1px solid var(--line); }
.product-meta span { color:#73766f; }
.notice { padding:18px 20px; border-left:3px solid var(--gold); background:var(--cream); color:#5e625b; }
.legal-links { display:flex; flex-wrap:wrap; gap:16px; margin-top:20px; font-size:13px; }
@media (max-width:900px) { .content-grid,.product-page { grid-template-columns:1fr; gap:42px; } .info-card { position:static; } .catalog-layout { grid-template-columns:1fr; } .catalog-menu { display:grid; grid-template-columns:repeat(2,1fr); column-gap:24px; } .catalog-main .product-grid,.direction-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:540px) { .inner-hero { padding:48px 0; } .inner-hero h1 { font-size:43px; } .inner-hero p { font-size:16px; } .content-section { padding:54px 0 70px; } .catalog-menu,.catalog-main .product-grid,.direction-grid { grid-template-columns:1fr; } .product-page { gap:30px; } }

/* Полноценная версия каталога */
.utility{background:var(--forest-2);color:#d8e2d9;font-size:12px}.utility .shell{height:36px;display:flex;align-items:center;gap:28px}.utility a{margin-left:auto;color:#fff}
header{position:sticky;top:0;z-index:40;background:rgba(255,253,248,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.head{height:82px;display:flex;align-items:center;gap:24px}.brand{min-width:205px}.brand img{width:54px;height:54px}.brand b{font:700 10px/1.35 Arial;letter-spacing:.13em;text-transform:uppercase}.brand em{font:400 25px/1 Georgia,serif;letter-spacing:0;text-transform:none}.head nav{display:flex;justify-content:center;align-items:center;gap:clamp(12px,1.5vw,25px);flex:1}.head nav a{padding:30px 0 27px;border-bottom:3px solid transparent;font-size:13px;font-weight:800}.head nav a:hover,.head nav a[aria-current=page]{color:var(--red);border-color:var(--red)}.cart-link{display:flex;align-items:center;gap:8px;padding:12px 14px;background:var(--forest);color:#fff;font-size:13px;font-weight:800}.cart-link strong{display:grid;place-items:center;min-width:23px;height:23px;border-radius:20px;background:var(--gold);color:var(--forest)}.menu{display:none;border:1px solid var(--line);background:#fff;width:44px;height:44px}
.home-hero{min-height:650px;display:grid;grid-template-columns:1.05fr .95fr;background:var(--forest);color:#fff}.home-hero>img{width:100%;height:650px;object-fit:cover}.home-hero>div{padding:90px clamp(45px,7vw,110px);display:flex;flex-direction:column;justify-content:center}.home-hero h1{margin:0;font:400 clamp(52px,5.8vw,86px)/.94 Georgia,serif;letter-spacing:-.05em}.home-hero>div>p:not(.eyebrow){max-width:600px;font-size:18px;color:#d0d9d2;line-height:1.7}.home-hero>div>div{display:flex;gap:12px;margin-top:20px}.button{border:0;background:var(--red);color:#fff;cursor:pointer}.button.ghost{background:transparent;border:1px solid #8aa091}
.home-section{padding:96px 0}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.section-head h2,.home-visit h2,.form-grid h2{margin:0;font:400 clamp(38px,4vw,60px)/1 Georgia,serif;letter-spacing:-.04em}.section-head>a{font-weight:800;border-bottom:1px solid}.home-visit{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding-top:100px;padding-bottom:100px}.home-visit img{width:100%;height:530px;object-fit:cover}.home-visit p:not(.eyebrow){color:#646960;font-size:18px;line-height:1.7}
.inner-hero .eyebrow{color:var(--red)}.inner-hero .lead{font-size:18px}.catalog{display:grid;grid-template-columns:230px minmax(0,1fr);gap:38px;padding-top:62px;padding-bottom:100px}.cat-menu{position:sticky;top:120px;display:flex;flex-direction:column}.cat-menu a{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px;font-weight:800}.cat-menu a.active,.cat-menu a:hover{color:var(--red)}.cat-menu span{color:#858980;font-weight:400}.catalog-tools{display:grid;grid-template-columns:1fr 200px auto;gap:10px}.catalog-tools input,.catalog-tools select,.catalog-tools button,.event-form input,.event-form select,.event-form textarea,.order-box input,.order-box textarea{min-height:48px;border:1px solid var(--line);background:#fff;padding:10px 13px;font:inherit}.catalog-tools button{border:0;background:var(--forest);color:#fff;padding:0 20px;font-weight:800}.found{color:#757971;font-size:13px}.product-grid{grid-template-columns:repeat(3,1fr)}.product-card{display:flex;flex-direction:column}.product-card .pic{height:245px;background:#f2eee5;overflow:hidden}.product-card .pic img{width:100%;height:100%;object-fit:cover}.product-copy{padding:18px;display:flex;flex-direction:column;flex:1}.overline{margin:0;color:#797d75;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.product-copy h3{margin:7px 0;font:400 21px/1.2 Georgia,serif}.spec{min-height:36px;margin:0;color:#6f736b;font-size:12px}.buy{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.buy b{font-size:18px}.buy small{font-size:11px;color:#777}.buy-control{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.add{height:42px;border:0;padding:0 15px;background:var(--red);color:#fff;font-weight:800;cursor:pointer}.counter{white-space:nowrap}.counter b{min-width:70px}.remove{border:0;background:transparent;color:#8d3123;font-size:11px;cursor:pointer}.pager{display:flex;gap:6px;margin-top:35px}.pager a{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line)}.pager a.active{background:var(--forest);color:#fff}
.product-page{padding-top:70px;padding-bottom:100px}.product-photo{min-height:580px}.product-details .sku{color:#777;font-size:13px}.product-description{color:#62675e;line-height:1.75}.product-main-buy{margin:26px 0}.product-main-buy .add{height:52px;padding:0 24px}.product-main-buy .counter{height:52px}.product-main-buy .counter button{height:52px;width:45px}.product-details dl{border-top:1px solid var(--line)}.product-details dl div{display:flex;justify-content:space-between;gap:25px;padding:13px 0;border-bottom:1px solid var(--line)}.product-details dt{color:#777}.product-details dd{margin:0;text-align:right;font-weight:800}.fine{padding:15px;background:var(--cream);font-size:12px;color:#777}
.story-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center;padding-top:80px;padding-bottom:100px}.feature-img{width:100%;height:560px;object-fit:cover}.story-grid h2,.program-grid h2,.text-page h2,.contact-grid h2,.direction-grid b{font-family:Georgia,serif;font-weight:400}.story-grid h2{font-size:50px;line-height:1;margin:0 0 20px}.story-grid p{color:#61665d;font-size:17px;line-height:1.75}.program-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-top:70px;padding-bottom:80px}.program-grid article{min-height:320px;padding:32px;background:var(--cream);display:flex;flex-direction:column}.program-grid span,.contact-grid span{color:var(--red);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.program-grid h2{font-size:36px}.program-grid p{color:#656a61}.program-grid b{margin-top:auto}.form-section{background:var(--forest);color:#fff;padding:80px 0}.form-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.form-grid>div>p:not(.eyebrow){color:#bfcbbf}.event-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.event-form label,.order-box label{display:flex;flex-direction:column;gap:5px;font-size:12px}.event-form label:nth-child(6),.event-form .consent,.event-form button{grid-column:1/-1}.event-form textarea{resize:vertical}.consent{flex-direction:row!important;align-items:start}.consent input{min-height:auto!important;width:auto!important;margin-top:3px}.event-form .button{min-height:52px}
.direction-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding-top:70px;padding-bottom:100px}.direction-grid>a,.direction-grid>div{min-height:220px;padding:25px;border:1px solid var(--line);background:var(--cream);display:flex;flex-direction:column}.direction-grid b{font-size:27px;line-height:1.05}.direction-grid span{margin-top:auto;color:#676c63;font-size:13px}.direction-grid i{width:max-content;margin-bottom:20px;padding:4px 8px;background:var(--gold);color:var(--forest);font:800 10px Arial;text-transform:uppercase}.text-page{max-width:900px;padding-top:70px;padding-bottom:100px}.text-page h2{font-size:38px}.text-page p{color:#62675e;font-size:17px;line-height:1.8}.text-page a{text-decoration:underline}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-top:70px;padding-bottom:100px}.contact-grid>div{padding:30px;background:var(--cream)}.contact-grid h2{font-size:31px}
.cart-layout{display:grid;grid-template-columns:1fr 370px;gap:45px;padding-top:65px;padding-bottom:100px}.cart-item{display:grid;grid-template-columns:90px 1fr auto auto;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.cart-item img{width:90px;height:90px;object-fit:cover}.cart-item h3{margin:0;font:400 21px Georgia,serif}.cart-item p{margin:5px 0;color:#777;font-size:12px}.order-box{padding:28px;background:var(--cream);position:sticky;top:120px}.order-box h2{margin:0 0 20px;font:400 32px Georgia,serif}.order-box form{display:grid;gap:13px}.order-total{display:flex;justify-content:space-between;margin-bottom:22px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.order-box .button{min-height:50px}.empty{padding:40px;background:var(--cream)}
footer{padding-top:65px}.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px}.footer-logo{width:68px}.footer-main h3{font:400 25px Georgia,serif}.footer-main p{color:#c3cbc4}.legal{margin-top:45px;padding-top:24px;border-top:1px solid #344239;color:#8f9a91;font-size:11px}.legal>p{max-width:1000px}.legal-links{margin:20px 0;display:flex;gap:20px;flex-wrap:wrap}.legal-links a{text-decoration:underline}.copyright{display:flex;justify-content:space-between;gap:30px;padding-top:18px;border-top:1px solid #28362c}.copyright a{color:#d6ad57}
@media(max-width:1120px){.head nav a:nth-last-child(2){display:none}.product-grid{grid-template-columns:repeat(2,1fr)}.direction-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:860px){.utility span:nth-child(2){display:none}.head{height:70px}.menu{display:block}.head nav{display:none;position:absolute;left:0;right:0;top:70px;background:var(--paper);padding:12px 20px 24px;flex-direction:column;align-items:stretch}.head nav.open{display:flex}.head nav a,.head nav a:nth-last-child(2){display:block;padding:12px;border-bottom:1px solid var(--line)}.brand b{display:none}.brand{min-width:auto}.cart-link{margin-left:auto}.home-hero{grid-template-columns:1fr}.home-hero>img{height:390px}.home-hero>div{padding:60px 34px}.catalog,.story-grid,.home-visit,.form-grid,.cart-layout{grid-template-columns:1fr}.cat-menu{position:static;display:grid;grid-template-columns:1fr 1fr}.story-grid{gap:35px}.direction-grid{grid-template-columns:repeat(2,1fr)}.order-box{position:static}.footer-main{grid-template-columns:1fr 1fr}.copyright{flex-direction:column}.product-page{grid-template-columns:1fr}}
@media(max-width:560px){.utility .shell{font-size:10px;gap:8px}.utility a{margin-left:auto}.brand img{width:46px;height:46px}.cart-link{padding:10px}.home-hero>img{height:280px}.home-hero>div{padding:46px 22px}.home-hero h1{font-size:48px}.home-hero>div>div{flex-direction:column}.home-section{padding:65px 0}.section-head{align-items:start;flex-direction:column;gap:18px}.product-grid,.cat-menu,.direction-grid,.program-grid,.contact-grid,.event-form{grid-template-columns:1fr}.catalog-tools{grid-template-columns:1fr}.product-card .pic{height:285px}.home-visit{padding-top:70px;padding-bottom:70px;gap:35px}.home-visit img,.feature-img{height:380px}.story-grid{padding-top:55px;padding-bottom:70px}.story-grid h2{font-size:40px}.program-grid{padding-top:55px}.form-grid{gap:38px}.event-form label:nth-child(6),.event-form .consent,.event-form button{grid-column:auto}.cart-item{grid-template-columns:70px 1fr}.cart-item img{width:70px;height:70px}.cart-item>div:nth-child(3),.cart-item>b{grid-column:2}.footer-main{grid-template-columns:1fr}.copyright{font-size:10px}}

/* v4 — укрупнённый каталог и новая главная */
.home-hero{min-height:600px;grid-template-columns:1.08fr .92fr}.home-hero>img{height:600px}.home-hero>div{position:relative;overflow:hidden}.home-hero>div:after{content:"Ф";position:absolute;right:-35px;bottom:-145px;font:430px/1 Georgia,serif;color:rgba(255,255,255,.035);pointer-events:none}.home-hero>div>*{position:relative;z-index:1}
.home-intro{padding:105px 0 95px;display:grid;grid-template-columns:.55fr 1.35fr;gap:55px 80px;align-items:start}.home-intro .eyebrow{padding-top:13px}.home-intro h2{margin:0;font:400 clamp(42px,5vw,72px)/1 Georgia,serif;letter-spacing:-.045em}.home-intro>p:last-child{grid-column:2;max-width:760px;margin:0;color:#62675e;font-size:18px;line-height:1.75}
.home-catalog{padding:90px 0 100px;background:var(--cream)}.home-category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.home-category-grid a{min-height:150px;padding:23px;background:var(--paper);border:1px solid transparent;display:flex;flex-direction:column;justify-content:space-between;transition:.2s}.home-category-grid a:hover{border-color:var(--forest);transform:translateY(-3px)}.home-category-grid b{font:400 25px/1.1 Georgia,serif}.home-category-grid span{color:#777c73;font-size:12px}
.home-directions{padding-top:105px;padding-bottom:110px}.visual-directions{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:315px 315px;gap:16px}.visual-directions>a{position:relative;overflow:hidden;color:#fff}.visual-directions .direction-large{grid-row:1/span 2}.visual-directions img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.visual-directions>a:hover img{transform:scale(1.035)}.visual-directions>a:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,25,16,.9),rgba(7,25,16,.04) 72%)}.visual-directions span{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:28px;display:flex;flex-direction:column;align-items:flex-start}.visual-directions small{color:var(--gold);font-weight:800;letter-spacing:.13em;text-transform:uppercase}.visual-directions b{margin-top:7px;font:400 clamp(27px,3vw,45px)/1 Georgia,serif}.visual-directions em{margin-top:18px;font:700 13px Arial;font-style:normal}
.home-new{padding:88px 0;background:var(--forest);color:#fff}.home-new h2{margin:0 0 40px;font:400 clamp(40px,5vw,66px)/1 Georgia,serif}.home-new>.shell>div{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.2)}.home-new article{padding:30px 0}.home-new article+article{padding-left:40px;border-left:1px solid rgba(255,255,255,.2)}.home-new b{font:400 31px Georgia,serif}.home-new p{color:#bdc9bf}
.catalog{display:block;padding-top:50px}.catalog-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:32px}.catalog-groups a{min-height:105px;padding:18px;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:space-between;background:#fff}.catalog-groups a:hover,.catalog-groups a.active{background:var(--forest);color:#fff}.catalog-groups b{font:400 20px/1.12 Georgia,serif}.catalog-groups span{font-size:11px;color:#7c8178}.catalog-groups a.active span,.catalog-groups a:hover span{color:var(--gold)}.catalog-tools{padding:18px;background:var(--cream);margin-bottom:34px}.catalog-result-head{display:flex;align-items:end;justify-content:space-between;margin:0 0 25px}.catalog-result-head h2{margin:0;font:400 42px/1 Georgia,serif}.catalog-result-head p{margin:0;color:#777}.catalog .product-grid{grid-template-columns:repeat(4,1fr);gap:14px}.catalog .product-card{border-color:#dedbd2}.catalog .product-card .pic{height:230px}.catalog .product-copy{padding:16px}.catalog .product-copy h3{font-size:19px;min-height:46px}.catalog .spec{min-height:18px}.catalog .buy{padding-top:13px}.catalog .buy b{font-size:17px}
@media(max-width:1050px){.home-category-grid,.catalog-groups,.catalog .product-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.home-intro{grid-template-columns:1fr;gap:24px}.home-intro>p:last-child{grid-column:auto}.home-category-grid,.catalog-groups,.catalog .product-grid{grid-template-columns:repeat(2,1fr)}.visual-directions{grid-template-columns:1fr;grid-template-rows:430px 310px 310px}.visual-directions .direction-large{grid-row:auto}}
@media(max-width:560px){.home-intro{padding:70px 0}.home-intro h2{font-size:42px}.home-catalog,.home-directions{padding-top:70px;padding-bottom:75px}.home-category-grid{grid-template-columns:1fr 1fr}.home-category-grid a{min-height:125px;padding:16px}.home-category-grid b{font-size:20px}.catalog-groups{grid-template-columns:1fr 1fr}.catalog-groups a{min-height:92px;padding:14px}.catalog-groups b{font-size:17px}.catalog .product-grid{grid-template-columns:1fr}.catalog-result-head{align-items:start;flex-direction:column;gap:8px}.home-new>.shell>div{grid-template-columns:1fr}.home-new article+article{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.2)}}

/* v5 — полноценные направления, программы и запись */
.brand-family{display:flex;align-items:center;gap:8px;min-width:178px}.brand-main{min-width:auto;gap:0}.brand-main img{width:44px;height:44px}.brand-main b{display:none}.brand-mini{display:grid;place-items:center;width:42px;height:42px;border-left:1px solid var(--line);padding-left:8px}.brand-mini img{width:34px;height:34px;object-fit:contain}.vk-link{margin-left:auto!important}.utility .vk-link+ a{margin-left:0}
.footer-logos{display:flex;align-items:center;gap:10px}.footer-logos img{width:54px;height:54px;object-fit:contain;background:#fff;border-radius:50%;padding:3px}
.home-hero>img{object-position:center 45%}
.cards-intro{padding-top:62px}.cards-intro p{max-width:850px;margin:0;color:#62675e;font:400 24px/1.55 Georgia,serif}.program-grid-three{grid-template-columns:repeat(3,1fr);padding-top:38px}.program-grid-three article{min-height:390px}.card-actions{display:flex;align-items:center;gap:16px;margin-top:24px}.card-actions a{font-weight:800;border-bottom:1px solid}.card-actions button,.museum-grid button{border:0;background:var(--red);color:#fff;padding:11px 15px;font-weight:800;cursor:pointer}
.detail-page{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:70px;padding-top:76px;padding-bottom:65px;align-items:start}.prose-rich{max-width:850px}.prose-rich h2{margin:38px 0 18px;font:400 clamp(34px,4vw,52px)/1.05 Georgia,serif}.prose-rich h3{margin:30px 0 8px;font:400 27px/1.15 Georgia,serif}.prose-rich p,.prose-rich li{color:#5e635b;font-size:17px;line-height:1.75}.prose-rich ol{padding-left:24px}.detail-cover{width:100%;max-height:580px;object-fit:cover;margin-bottom:34px}.detail-aside{position:sticky;top:118px;padding:30px;background:var(--forest);color:#fff}.detail-aside>b{font:400 34px Georgia,serif}.detail-aside p{color:#c1cec4;line-height:1.7}.detail-aside a{text-decoration:underline}.detail-aside .button{width:100%;margin-top:10px}
.gallery-section{padding-top:35px;padding-bottom:95px}.photo-gallery{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:14px;height:470px}.photo-gallery img{width:100%;height:100%;object-fit:cover}.photo-gallery img:nth-child(2),.photo-gallery img:nth-child(3){object-position:center}.related-section{background:var(--cream)}.text-action{margin-top:24px;font-weight:800;border-bottom:1px solid;width:max-content}
.museum-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-top:70px;padding-bottom:100px}.museum-grid article{background:var(--cream)}.museum-grid img{width:100%;height:340px;object-fit:cover}.museum-grid article>div{padding:28px}.museum-grid h2{margin:6px 0 13px;font:400 38px/1.05 Georgia,serif}.museum-grid p:not(.eyebrow){color:#62675e;line-height:1.7}.museum-grid a{font-weight:800;border-bottom:1px solid}.museum-grid button{margin-left:14px}
.booking-modal{width:min(820px,calc(100% - 30px));max-height:90vh;border:0;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.35)}.booking-modal::backdrop{background:rgba(7,24,15,.72);backdrop-filter:blur(3px)}.booking-modal-head{display:flex;justify-content:space-between;gap:25px;padding:28px 30px 18px;border-bottom:1px solid var(--line)}.booking-modal-head .eyebrow{color:var(--red);margin-bottom:6px}.booking-modal-head h2{margin:0;font:400 37px/1 Georgia,serif}.booking-modal-head>button{width:42px;height:42px;border:1px solid var(--line);background:transparent;font-size:28px;cursor:pointer}.modal-form{padding:26px 30px 30px}.modal-form input,.modal-form select,.modal-form textarea{color:var(--ink)}
.producer-popup-link{color:inherit;text-decoration:underline;text-decoration-color:rgba(21,59,38,.35);text-underline-offset:3px}.producer-modal{width:min(760px,calc(100% - 30px));max-height:88vh;border:0;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.35)}.producer-modal::backdrop{background:rgba(7,24,15,.72);backdrop-filter:blur(3px)}.producer-modal-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:24px;padding:28px 30px 20px;border-bottom:1px solid var(--line);background:var(--paper)}.producer-modal-head .eyebrow{margin:0 0 7px;color:var(--red)}.producer-modal-head h2{margin:0;font:400 clamp(30px,5vw,48px)/1 Georgia,serif}.producer-modal-head>button{flex:0 0 42px;width:42px;height:42px;border:1px solid var(--line);background:transparent;font-size:28px;cursor:pointer}.producer-modal-body{padding:28px 30px 36px;line-height:1.72}.producer-modal-body h2{display:none}.producer-modal-body p{margin:0 0 1em}.producer-logo{display:flex;align-items:center;justify-content:center;min-height:112px;margin:-4px 0 24px;padding:18px 24px;border:1px solid var(--line);background:#fff}.producer-logo img{display:block;max-width:250px;max-height:84px;object-fit:contain}.producer-note{padding-bottom:18px;border-bottom:1px solid var(--line);color:#747971;font-size:13px}.producer-loading{color:#747971}
.direction-grid>a img{width:70px;height:70px;object-fit:contain;margin-bottom:20px;mix-blend-mode:multiply}.project-detail{padding-top:75px;padding-bottom:100px}.project-brand{display:grid;grid-template-columns:330px 1fr;gap:65px;align-items:center;margin-bottom:60px}.project-brand>img{width:100%;max-height:330px;object-fit:contain}.project-brand h2{margin:0;font:400 clamp(42px,5vw,70px)/1 Georgia,serif}.project-brand p:not(.eyebrow){color:#62675e;font-size:18px;line-height:1.7}.project-visuals{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}.project-visuals img{width:100%;height:430px;object-fit:cover}.project-visuals img:first-child{grid-row:span 2;height:876px}.project-note{margin-top:22px;color:#74786f;font-size:13px}.project-brand-centered{max-width:950px;margin-left:auto;margin-right:auto}
.home-new>.shell>div{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.2)}.home-new a{display:flex;align-items:center;gap:25px;padding:28px 0;color:#fff}.home-new a+a{padding-left:40px;border-left:1px solid rgba(255,255,255,.2)}.home-new a>img{width:105px;height:105px;object-fit:contain;background:#fff}.home-new a b{font:400 28px Georgia,serif}.home-new a p{margin:8px 0 0;color:#bdc9bf}
@media(max-width:1100px){.program-grid-three{grid-template-columns:1fr 1fr}.brand-family{min-width:142px}.brand-mini{width:38px}.head nav{gap:11px}.head nav a{font-size:12px}}
@media(max-width:860px){.brand-mini{display:none}.brand-family{min-width:auto}.vk-link{display:none}.program-grid-three,.detail-page,.museum-grid,.project-brand{grid-template-columns:1fr}.detail-aside{position:static}.photo-gallery{height:auto;grid-template-columns:1fr 1fr}.photo-gallery img{height:330px}.photo-gallery img:first-child{grid-column:1/-1}.project-visuals{grid-template-columns:1fr}.project-visuals img,.project-visuals img:first-child{height:auto;grid-row:auto}.project-brand>img{max-width:280px}.home-new a+a{padding-left:24px}}
@media(max-width:560px){.program-grid-three,.museum-grid,.photo-gallery{grid-template-columns:1fr}.photo-gallery img,.photo-gallery img:first-child{grid-column:auto;height:300px}.museum-grid img{height:280px}.museum-grid button{display:block;margin:16px 0 0}.booking-modal-head,.modal-form{padding-left:20px;padding-right:20px}.booking-modal-head h2{font-size:30px}.home-new>.shell>div{grid-template-columns:1fr}.home-new a+a{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.2)}.home-new a>img{width:82px;height:82px}}
@media(max-width:560px){.producer-modal{width:100%;max-height:90dvh;margin:auto 0 0}.producer-modal-head{padding:20px}.producer-modal-head h2{font-size:32px}.producer-modal-body{padding:22px 20px 30px}}

/* v6 — мобильная юзабилити-коррекция */
button,a,input,select,textarea{touch-action:manipulation}.order-box button:disabled{background:#9a9d96;cursor:not-allowed}.order-note{margin:-8px 0 20px;color:#666b63;font-size:13px;line-height:1.55}
@media(max-width:860px){
  .home-hero{min-height:auto;grid-template-columns:1fr}
  .home-hero>img{height:min(72vw,430px);object-position:center 44%}
  .home-hero>div{padding:54px max(22px,calc((100vw - 720px)/2));overflow:visible}
  .home-hero>div:after{font-size:280px;right:-20px;bottom:-95px}
  .home-hero h1{font-size:clamp(44px,11vw,66px);line-height:.98;letter-spacing:-.045em}
  .home-hero>div>p:not(.eyebrow){font-size:17px;line-height:1.58}
  .catalog-tools input,.catalog-tools select,.catalog-tools button{width:100%}
}
@media(max-width:560px){
  .shell{width:min(100% - 32px,1180px)}
  .utility .shell{height:32px}.utility span:first-child,.utility a{white-space:nowrap}
  .head{height:64px;gap:10px}.brand-main img{width:40px;height:40px}.cart-link{min-height:44px}.menu{width:44px;height:44px}
  .head nav{top:64px}.head nav a{min-height:44px;display:flex!important;align-items:center}
  .home-hero>img{height:72vw;min-height:240px;max-height:330px}
  .home-hero>div{padding:38px 20px 42px}
  .home-hero h1{font-size:clamp(40px,12vw,54px)}
  .home-hero>div>p:not(.eyebrow){margin-bottom:8px;font-size:16px}
  .home-hero .button{min-height:48px;display:flex;align-items:center;justify-content:center}
  .home-intro{padding:58px 0;gap:18px}.home-intro .eyebrow{padding-top:0}.home-intro h2{font-size:38px}.home-intro>p:last-child{font-size:16px;line-height:1.65}
  .home-catalog,.home-directions{padding-top:58px;padding-bottom:62px}
  .section-head h2,.home-visit h2,.form-grid h2{font-size:38px}
  .home-category-grid{grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}
  .home-category-grid a{min-height:0;padding:17px 2px;border:0;border-bottom:1px solid var(--line);background:transparent;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}
  .home-category-grid a:hover{transform:none;border-color:var(--line)}.home-category-grid b{font-size:21px}.home-category-grid span{white-space:nowrap}
  .visual-directions{grid-template-rows:none;gap:10px}.visual-directions>a,.visual-directions .direction-large{height:300px}.visual-directions span{padding:22px}.visual-directions em{margin-top:12px}
  .home-new{padding:58px 0}.home-new h2{font-size:38px;margin-bottom:26px}.home-new a{gap:17px;padding:22px 0}.home-new a b{font-size:24px}.home-new a p{font-size:13px;line-height:1.5}
  .inner-hero{padding:38px 0}.inner-hero h1{font-size:38px;overflow-wrap:anywhere}.inner-hero .lead{font-size:16px;line-height:1.55}
  .catalog{padding-top:34px;padding-bottom:65px}.catalog-groups{grid-template-columns:1fr;gap:0;border-top:1px solid var(--line);margin-bottom:24px}.catalog-groups a{min-height:0;padding:14px 2px;border:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;align-items:center}.catalog-groups a.active{padding-left:12px;padding-right:12px}
  .catalog-tools{padding:14px;margin-bottom:28px}.catalog-result-head h2{font-size:34px}.catalog .product-card .pic{height:min(82vw,360px)}
  .product-copy{padding:17px}.product-copy h3{min-height:0!important}.add,.counter button{min-width:44px;min-height:44px}
  .cart-layout{padding-top:35px;padding-bottom:65px;gap:26px}.cart-item{grid-template-columns:76px 1fr;gap:12px}.cart-item img{width:76px;height:76px}.cart-item h3{font-size:19px}.cart-item>div:nth-child(3),.cart-item>b{grid-column:2}.order-box{padding:22px 18px}.order-box input,.order-box textarea,.order-box .button{font-size:16px}
  .program-grid article{min-height:0;padding:23px}.program-grid h2{font-size:31px}.card-actions{align-items:flex-start;flex-direction:column}
  .booking-modal{width:100%;max-height:92dvh;margin:auto 0 0}.booking-modal-head{padding-top:20px}.modal-form{overflow-y:auto}.event-form input,.event-form select,.event-form textarea{font-size:16px}
  .footer-main{gap:30px}.legal{margin-top:30px}.copyright{gap:12px}
}

/* v7 — страницы производителей и универсальные фотогалереи */
.overline a,.product-details .eyebrow a,.product-details dd a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.farmers-directory{padding-top:68px;padding-bottom:105px}.farmer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.farmer-card{min-width:0;background:var(--cream);border:1px solid var(--line)}.farmer-card-image{display:grid;place-items:center;height:245px;overflow:hidden;background:#fff}.farmer-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s}.farmer-card-image .farmer-card-logo{width:auto;height:auto;max-width:72%;max-height:62%;object-fit:contain}.farmer-card:hover .farmer-card-image img{transform:scale(1.025)}.farmer-card>div{padding:25px}.farmer-card h2{margin:7px 0 12px;font:400 29px/1.08 Georgia,serif}.farmer-card h2 a{color:inherit}.farmer-card>div>p:not(.eyebrow){min-height:66px;color:#656a62;font-size:14px;line-height:1.6}.farmer-archive{margin-top:75px;padding-top:42px;border-top:1px solid var(--line)}.farmer-archive h2{margin:0 0 8px;font:400 39px/1.05 Georgia,serif}.farmer-archive>p{color:#686d65}.farmer-archive>div{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.farmer-archive a{padding:12px 15px;border:1px solid var(--line);background:#fff}.farmer-detail{padding-top:42px;padding-bottom:105px}.breadcrumbs{display:flex;gap:10px;align-items:center;color:#747971;font-size:13px}.breadcrumbs a{text-decoration:underline}.farmer-heading{display:grid;grid-template-columns:150px minmax(0,1fr);gap:32px;align-items:center;padding:45px 0 52px;border-bottom:1px solid var(--line)}.farmer-monogram,.farmer-logo-wrap{display:grid;place-items:center;width:150px;height:150px}.farmer-monogram{background:var(--forest);color:var(--gold);font:400 82px/1 Georgia,serif}.farmer-logo-wrap{padding:18px;border:1px solid var(--line);background:#fff}.farmer-logo{display:block;max-width:100%;max-height:100%;object-fit:contain}.farmer-logo-wrap.logo-error img{display:none}.farmer-logo-wrap.logo-error::after{content:'ТД ФЕРМЕР';color:var(--forest);font:700 15px/1.2 Arial,sans-serif;letter-spacing:.09em;text-align:center}.farmer-heading h1{max-width:940px;margin:5px 0 10px;font:400 clamp(44px,6vw,78px)/.98 Georgia,serif;letter-spacing:-.04em}.farmer-heading>div>p:last-child{color:#73786f}.farmer-story{max-width:930px;padding:62px 0}.farmer-story h2{margin-top:0}.farmer-products{padding-top:55px;border-top:1px solid var(--line)}.farmer-products .product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.farmer-note{padding:22px;background:var(--cream);color:#666b63}

.photo-gallery{height:auto!important;min-height:0;display:grid!important;grid-template-columns:minmax(0,1fr) 112px!important;grid-template-rows:minmax(0,1fr);gap:12px;overflow:hidden}.photo-gallery:not(.gallery-ready){max-height:620px}.photo-gallery:not(.gallery-ready)>img{min-width:0;min-height:0;height:560px!important;object-fit:contain!important;background:#151b17}.photo-gallery:not(.gallery-ready)>img:not(:first-child){display:none}.gallery-stage{position:relative;min-width:0;height:clamp(420px,55vw,650px);overflow:hidden;background:#151b17}.gallery-main{display:block;width:100%;height:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.gallery-main img{display:block;width:100%;height:100%;object-fit:contain;background:#151b17}.gallery-zoom,.gallery-count{position:absolute;bottom:15px;z-index:2;padding:7px 10px;background:rgba(7,20,12,.76);color:#fff;font:700 11px Arial,sans-serif;letter-spacing:.04em}.gallery-zoom{left:15px}.gallery-count{right:15px}.gallery-arrow{position:absolute;top:50%;z-index:3;display:grid;place-items:center;width:46px;height:46px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--forest);font-size:23px;cursor:pointer;transform:translateY(-50%)}.gallery-prev{left:15px}.gallery-next{right:15px}.gallery-thumbs{display:flex;min-height:0;max-height:650px;flex-direction:column;gap:9px;overflow:auto;scrollbar-width:thin}.gallery-thumb{flex:0 0 92px;width:100%;padding:3px;border:1px solid transparent;background:transparent;cursor:pointer}.gallery-thumb.active{border-color:var(--red)}.gallery-thumb img{display:block;width:100%;height:100%!important;object-fit:cover!important}.gallery-lightbox{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgba(6,12,8,.97);color:#fff}.gallery-lightbox::backdrop{background:rgba(6,12,8,.97)}.gallery-lightbox[open]{display:grid;grid-template-columns:80px minmax(0,1fr) 80px;align-items:center}.gallery-lightbox figure{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100dvh;min-width:0;margin:0;padding:40px 0 22px}.gallery-lightbox figure img{width:100%;height:100%;min-height:0;object-fit:contain}.gallery-lightbox figcaption{text-align:center;padding-top:12px;color:#cbd1cc;font:13px Arial,sans-serif}.lightbox-close{position:fixed;right:20px;top:18px;z-index:5;width:48px;height:48px;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:rgba(0,0,0,.35);color:#fff;font-size:31px;cursor:pointer}.lightbox-arrow{width:52px;height:52px;justify-self:center;border:1px solid rgba(255,255,255,.35);border-radius:50%;background:transparent;color:#fff;font-size:25px;cursor:pointer}
@media(max-width:1050px){.farmer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.farmer-products .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.photo-gallery{grid-template-columns:1fr!important;grid-template-rows:auto auto}.gallery-stage{height:clamp(300px,75vw,500px)}.gallery-thumbs{max-height:none;flex-direction:row;overflow-x:auto;padding-bottom:4px}.gallery-thumb{flex-basis:82px;width:82px;height:70px}.gallery-lightbox[open]{grid-template-columns:54px minmax(0,1fr) 54px}.gallery-lightbox figure{padding-top:60px}.lightbox-arrow{width:42px;height:42px}.farmer-products .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.farmer-grid,.farmer-products .product-grid{grid-template-columns:1fr}.farmers-directory{padding-top:40px;padding-bottom:70px}.farmer-card-image{height:220px}.farmer-card>div>p:not(.eyebrow){min-height:0}.farmer-heading{grid-template-columns:88px minmax(0,1fr);gap:18px;padding:30px 0 38px}.farmer-monogram,.farmer-logo-wrap{width:88px;height:88px}.farmer-logo-wrap{padding:10px}.farmer-monogram{font-size:44px}.farmer-heading h1{font-size:39px;overflow-wrap:anywhere}.farmer-story{padding:42px 0}.farmer-archive{margin-top:52px}.gallery-stage{height:72vw;min-height:270px;max-height:390px}.gallery-arrow{width:42px;height:42px}.gallery-zoom{display:none}.gallery-lightbox[open]{grid-template-columns:1fr}.gallery-lightbox figure{grid-column:1;grid-row:1;padding:70px 10px 24px}.lightbox-arrow{position:fixed;z-index:4;bottom:24px}.lightbox-prev{left:20px}.lightbox-next{right:20px}}

/* v10 — мягкие автослайдеры и полные тематические галереи */
.fade-slider{position:relative;isolation:isolate;overflow:hidden;background:#18251d}.fade-slider>img{position:absolute!important;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;opacity:0;z-index:0!important;transition:opacity 1.45s ease-in-out}.fade-slider>img.is-active{opacity:1;z-index:1!important}.fade-slider-dots{position:absolute!important;left:22px;bottom:20px;z-index:3!important;display:flex!important;gap:8px!important;padding:8px 10px!important;border-radius:18px;background:rgba(8,18,12,.48);backdrop-filter:blur(6px)}.fade-slider-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.48);cursor:pointer;transition:width .3s,background .3s}.fade-slider-dots button.is-active{width:24px;border-radius:8px;background:#fff}.home-hero>.home-hero-slider{display:block;height:600px;padding:0}.home-hero>.home-hero-slider:after{content:none}.home-visit>.home-visit-slider{height:530px;min-width:0}.museum-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.museum-reference .lead{font-size:21px;line-height:1.6;color:var(--forest)}.museum-reference ul{padding-left:22px;color:#4f554e;line-height:1.75}.museum-note{margin-top:35px;padding:22px 24px;background:var(--cream);border-left:4px solid var(--gold)}.museum-note p{margin-bottom:0}.source-link{margin-top:30px}.source-link a{font-weight:800;border-bottom:1px solid}
@media(max-width:1050px){.museum-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.home-hero>.home-hero-slider{height:min(72vw,430px)}.home-visit>.home-visit-slider{height:430px}.museum-grid{grid-template-columns:1fr}}
@media(max-width:560px){.home-hero>.home-hero-slider{height:72vw;min-height:240px;max-height:330px}.home-visit>.home-visit-slider{height:380px}.fade-slider-dots{left:14px;bottom:14px}.museum-reference .lead{font-size:18px}}
@media(prefers-reduced-motion:reduce){.fade-slider>img{transition:none}.fade-slider-dots{display:none!important}}

/* v11 — единый оптический размер семейства логотипов */
.brand-family{gap:7px;min-width:190px}.brand-main img,.brand-mini img{width:40px;height:40px;object-fit:contain}.brand-mini{width:49px;height:44px;padding-left:9px}
@media(max-width:1100px){.brand-family{min-width:166px}.brand-mini{width:45px;padding-left:7px}}
@media(max-width:860px){.brand-family{min-width:auto}}
