/* ============================================================
   CRYSTAL — страница «О ресторане» (владелец WD, классы cr-ab-*).
   Порт макета «Crystal - О ресторане.dc.html»: тёмный пролог с буквой
   «О» и sheen-заголовком → мост тьма→лён → «Легенда» с CSS-линзой →
   «Шеф» (портрет, цитата, школа) → «Грани» → «Пространства» → «Сервис» →
   тёмный финал с телефоном.
   Палитра — канон заглушки (ink/umber/stone/linen/wood/bordeaux/ember).
   Капса кириллицы нет: трекинг макета сохранён, буквы строчные.
   ============================================================ */

/* Тёмная страница (контракт с хромом): фон за пределами секций — ink */
body.cr-dark{background-color:#16120E}

/* Пролог уходит под стеклянную плашку шапки (в макете шапка fixed) */
.cr-about{margin-top:calc(-1 * var(--cr-hdr-full,88px))}

/* ---------- reveal: «дорогая» скорость макета + каскад задержек ---------- */
.cr-about .cr-reveal{
	transition:opacity 1.15s cubic-bezier(.22,.61,.36,1) var(--cr-rvd,0s),
		transform 1.15s cubic-bezier(.22,.61,.36,1) var(--cr-rvd,0s)}
.cr-about .cr-reveal:not(.is-in){transform:translateY(18px)}
.cr-about .cr-rvd-1{--cr-rvd:.12s}
.cr-about .cr-rvd-2{--cr-rvd:.24s}
.cr-about .cr-rvd-3{--cr-rvd:.36s}

/* ---------- пролог ---------- */
.cr-ab-hero{position:relative;min-height:62svh;display:flex;align-items:flex-end;overflow:hidden;
	color:#E7E1D6;box-sizing:border-box;
	padding:clamp(120px,18vh,200px) var(--cr-gutter) clamp(70px,10vh,120px);
	background:
		radial-gradient(80% 60% at 74% 24%,rgba(194,98,46,.4) 0%,rgba(194,98,46,0) 55%),
		radial-gradient(55% 45% at 14% 86%,rgba(74,86,69,.5) 0%,rgba(74,86,69,0) 60%),
		linear-gradient(165deg,#2A231C 0%,#1b1611 55%,#16120E 100%)}
/* пролог держит ту же колонку, что и секции ниже */
.cr-ab-hero__body{position:relative;width:100%;max-width:var(--cr-content);margin:0 auto;z-index:1}
.cr-ab-hero__body>*{max-width:var(--cr-narrow)}

/* зерно этих сцен даёт общая дизер-плёнка из cr-ui.css */

/* гигантские буквы-глифы */
.cr-ab-glyph{position:absolute;font-weight:200;line-height:.9;pointer-events:none;
	user-select:none;-webkit-user-select:none}
.cr-ab-glyph--hero{right:-8vw;top:-12vh;font-size:56vmin;color:rgba(241,235,225,.05);will-change:transform}
.cr-ab-glyph--wine{left:-4vw;bottom:-18vh;font-size:40vmin;color:rgba(107,34,51,.045)}

/* ---------- типографика ---------- */
.cr-ab-eyebrow{display:flex;align-items:center;gap:14px;margin:0;
	font-size:11px;font-weight:400;letter-spacing:.3em;color:rgba(231,225,214,.55)}
.cr-ab-eyebrow::before{content:"";flex:none;width:34px;height:1px;background:rgba(231,225,214,.4)}
.cr-ab-eyebrow--wood{color:#8A6A4B}
.cr-ab-eyebrow--wood::before{background:rgba(138,106,75,.5)}
.cr-ab-eyebrow--center{justify-content:center}
.cr-ab-eyebrow--center::after{content:"";flex:none;width:34px;height:1px;background:rgba(231,225,214,.4)}

.cr-ab-h1{margin:24px 0 0;font-weight:200;font-size:clamp(38px,5.8vw,80px);
	letter-spacing:.05em;line-height:1.04;text-wrap:balance;
	background:linear-gradient(112deg,#f5efe4 0%,#c9bda6 26%,#fffdf6 44%,#b3a488 62%,#ece4d2 80%,#cfc4b2 100%);
	background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;
	-webkit-text-stroke:1px rgba(255,255,255,.14);
	filter:drop-shadow(0 18px 40px rgba(0,0,0,.35));
	animation:crAbSheen 8s linear infinite}
@keyframes crAbSheen{to{background-position:200% 0}}

.cr-ab-lead{margin:24px 0 0;font-weight:300;font-size:16px;line-height:1.85;
	color:rgba(231,225,214,.72);max-width:52ch}

.cr-ab-h2{margin:22px 0 0;font-weight:250;font-size:clamp(28px,3.6vw,48px);
	letter-spacing:.02em;line-height:1.12;color:#2A231C;max-width:24ch;text-wrap:balance}
.cr-ab-p{margin:20px 0 0;font-weight:300;font-size:15.5px;line-height:1.85;
	color:rgba(42,35,28,.72);max-width:52ch}
.cr-ab-p + .cr-ab-p{margin-top:14px}

/* кнопка-линия «тихое действие»; линия растёт 44→66px (по Зайцу) */
.cr-ab-linebtn{display:inline-block;color:#6B2233;font-size:12px;font-weight:400;
	letter-spacing:.24em;text-decoration:none;transition:color .3s ease}
.cr-ab-linebtn::after{content:"";display:block;width:44px;height:1px;margin-top:9px;
	background:currentColor;opacity:.7;transition:width .45s cubic-bezier(.22,1,.36,1)}
.cr-ab-linebtn:hover{color:#C2622E}
.cr-ab-linebtn:hover::after{width:66px}
.cr-ab-linebtn--dark{color:#E7E1D6}
.cr-ab-linebtn--dark:hover{color:#C2622E}
.cr-ab-linebtn--mt{margin-top:26px}

/* ---------- мост тьма → лён: общая рампа темы (--cr-ramp-dawn) + дизер ---------- */
.cr-ab-bridge{height:clamp(220px,34vh,420px);
	background-image:var(--cr-ramp-dawn)}

/* ---------- светлые секции (сетка — из токенов cr-ui.css) ---------- */
.cr-ab-sec{padding:clamp(70px,10vh,120px) var(--cr-gutter);box-sizing:border-box}
.cr-ab-sec__in{position:relative;max-width:var(--cr-content);margin:0 auto}
.cr-ab-sec--linen{background:#F1EBE1;color:#2A231C}
.cr-ab-sec--linen2{background:#EAE2D4;color:#2A231C;position:relative;overflow:hidden}

/* ---------- легенда: колонки + кадр с линзой ---------- */
.cr-ab-legend__grid{display:flex;gap:clamp(40px,6vw,90px);flex-wrap:wrap;align-items:center}
.cr-ab-legend__text{flex:1 1 380px;min-width:min(380px,100%)}
.cr-ab-legend__media{position:relative;flex:1 1 340px;max-width:480px}
/* офсет-подложка бордо («паспарту» Зайца) */
.cr-ab-legend__media::before{content:"";position:absolute;left:-16px;bottom:-16px;
	width:80%;height:58%;background:rgba(107,34,51,.12)}

/* кадр «под заглушку»: матовая подложка + белая дымка + резкое окно */
.cr-ab-lens{position:relative;margin:0;aspect-ratio:4/5;overflow:hidden;border-radius:var(--cr-radius-frame);
	display:flex;align-items:center;justify-content:center;
	background:radial-gradient(80% 60% at 60% 30%,rgba(194,98,46,.5) 0%,rgba(194,98,46,0) 60%),
		linear-gradient(165deg,#4a3a28 0%,#2A231C 60%,#1b1611 100%)}
.cr-ab-lens__frost{position:absolute;inset:0;pointer-events:none;
	-webkit-backdrop-filter:blur(9px) saturate(.96);backdrop-filter:blur(9px) saturate(.96);
	background:rgba(241,235,225,.05)}
.cr-ab-lens__haze{position:absolute;inset:0;pointer-events:none;
	clip-path:circle(28% at 58% 40%);background:rgba(255,255,255,.28);
	transition:opacity .7s cubic-bezier(.22,1,.36,1)}
.cr-ab-lens__sharp{position:absolute;inset:0;pointer-events:none;
	clip-path:circle(27.3% at 58% 40%);
	background:radial-gradient(80% 60% at 60% 30%,rgba(194,98,46,.5) 0%,rgba(194,98,46,0) 60%),
		linear-gradient(165deg,#4a3a28 0%,#2A231C 60%,#1b1611 100%);
	filter:saturate(1.18) brightness(1.08);
	transition:clip-path .9s cubic-bezier(.22,1,.36,1)}
/* по наведению кадр «наводится на резкость» — окно раскрывается */
.cr-ab-lens:hover .cr-ab-lens__sharp{clip-path:circle(125% at 58% 40%)}
.cr-ab-lens:hover .cr-ab-lens__haze{opacity:0}
.cr-ab-lens__cap{position:relative;display:flex;align-items:center;gap:10px;
	color:rgba(231,225,214,.55);font-size:10px;letter-spacing:.26em;text-align:center}
.cr-ab-lens__cap::before,.cr-ab-lens__cap::after{content:"";flex:none;
	width:5px;height:5px;background:#C2622E;transform:rotate(45deg)}

/* ============================================================
   Шеф (редакция 17.08 по фидбеку: шеф — фигура первого плана, поэтому
   отдельная секция сразу после «Легенды», с портретом, цитатой и школой).
   Портрет: реальное фото из поля «Шеф — фото», иначе кадр-плейсхолдер
   того же формата 4/5 — вёрстка не меняется, когда появится съёмка.
   ============================================================ */
.cr-ab-chef-sec{position:relative;overflow:hidden}
.cr-ab-chef{display:flex;gap:clamp(36px,5.5vw,84px);flex-wrap:wrap;align-items:flex-start}
.cr-ab-chef__media{position:relative;flex:1 1 320px;max-width:440px;margin-left:16px}
/* офсет-подложка бордо («паспарту» Зайца) */
.cr-ab-chef__media::before{content:"";position:absolute;left:-16px;bottom:-16px;
	width:82%;height:62%;background:rgba(107,34,51,.14)}
.cr-ab-chef__frame{position:relative;margin:0;z-index:1;aspect-ratio:4/5;overflow:hidden;border-radius:var(--cr-radius-frame);
	display:flex;align-items:flex-end;justify-content:center;
	background:radial-gradient(80% 60% at 60% 26%,rgba(194,98,46,.42) 0%,rgba(194,98,46,0) 62%),
		linear-gradient(165deg,#4a3a28 0%,#2A231C 60%,#1b1611 100%);
	box-shadow:0 26px 50px -28px rgba(42,35,28,.55)}
.cr-ab-chef__frame img{width:100%;height:100%;object-fit:cover;display:block}
.cr-ab-chef__cap{position:relative;z-index:1;display:flex;align-items:center;gap:10px;
	margin:0 0 clamp(18px,3vh,30px);text-align:center;
	font-size:10px;letter-spacing:.26em;color:rgba(231,225,214,.55)}
.cr-ab-chef__cap::before,.cr-ab-chef__cap::after{content:"";flex:none;width:5px;height:5px;
	background:#C2622E;transform:rotate(45deg)}
/* подпись под реальным фото — на льне, а не поверх кадра */
.cr-ab-chef__credit{margin-top:14px;font-size:10px;letter-spacing:.24em;color:#8A6A4B}

.cr-ab-chef__text{flex:1 1 400px;min-width:min(400px,100%)}
.cr-ab-chef__quote{margin:24px 0 0;font-family:var(--cr-serif,Georgia,serif);font-style:italic;
	font-weight:400;font-size:clamp(19px,2.2vw,26px);line-height:1.5;color:#2A231C;
	border-left:2px solid rgba(107,34,51,.45);padding-left:clamp(18px,2.4vw,26px);
	max-width:34ch}
/* школа шефа: строки-hairline, тот же язык, что и «Грани» */
.cr-ab-chef__facts{margin-top:clamp(26px,4vh,38px);display:grid;gap:0 clamp(24px,4vw,56px);
	grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.cr-ab-chef__fact{border-top:1px solid rgba(42,35,28,.16);padding:14px 0}
.cr-ab-chef__fact-t{font-weight:250;font-size:18px;color:#2A231C}
.cr-ab-chef__fact-d{margin-top:6px;font-size:11px;letter-spacing:.2em;color:#8A6A4B;line-height:1.7}
@media(max-width:899px){
	/* портрет встаёт вровень с колонкой текста, «паспарту» уходит вправо-вниз */
	.cr-ab-chef__media{margin-left:0;max-width:none}
	.cr-ab-chef__media::before{left:auto;right:-14px;bottom:-14px;width:70%;height:52%}
	.cr-ab-chef__quote{max-width:none}
}

/* ---------- грани: строки-hairline ---------- */
.cr-ab-facets{position:relative;overflow:hidden}
.cr-ab-rows{margin-top:44px}
.cr-ab-row{display:flex;justify-content:space-between;align-items:baseline;gap:18px;
	padding:20px 0;border-top:1px solid rgba(42,35,28,.14);flex-wrap:wrap}
.cr-ab-rows > .cr-ab-row:last-child{border-bottom:1px solid rgba(42,35,28,.14)}
.cr-ab-row__t{font-weight:250;font-size:clamp(20px,2.4vw,27px);color:#2A231C;flex:0 0 auto;min-width:9ch}
.cr-ab-row__d{font-weight:300;font-size:14.5px;line-height:1.7;color:rgba(42,35,28,.62);
	flex:1 1 320px;text-align:right}
@media(max-width:639px){.cr-ab-row__d{text-align:left}}

/* ---------- пространства ---------- */
.cr-ab-spaces{margin-top:40px;display:grid;gap:clamp(18px,2.6vw,32px);
	grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}
.cr-ab-space{border-top:1px solid rgba(42,35,28,.16);padding-top:18px}
.cr-ab-space__t{font-weight:250;font-size:21px;color:#2A231C}
.cr-ab-space__cap{margin-top:8px;font-size:11px;letter-spacing:.22em;color:#8A6A4B}
.cr-ab-actions{margin-top:36px;display:flex;gap:34px;flex-wrap:wrap}

/* ---------- сервис: две колонки одного текста ---------- */
.cr-ab-service__grid{display:flex;gap:clamp(40px,6vw,90px);flex-wrap:wrap}
.cr-ab-service__col{flex:1 1 380px;min-width:min(380px,100%)}
/* абзац во второй колонке встаёт вровень с абзацем первой (под заголовком) */
.cr-ab-p--first{margin-top:0}
@media(min-width:900px){.cr-ab-p--first{margin-top:calc(22px + 1.12em * 1.12)}}

/* ---------- финал: градиент лён-2 → тьма ---------- */
.cr-ab-final{position:relative;overflow:hidden;color:#E7E1D6;text-align:center;box-sizing:border-box;
	padding:clamp(90px,14vh,160px) var(--cr-gutter) 40px;
	background-image:var(--cr-ramp-dusk-fast)}
.cr-ab-final__in{position:relative;max-width:var(--cr-narrow);margin:0 auto;padding-top:14vh;z-index:1}
.cr-ab-final__phone{display:inline-block;margin-top:22px;font-weight:200;
	font-size:clamp(32px,5vw,60px);letter-spacing:.06em;color:#F1EBE1;text-decoration:none;
	transition:color .3s ease}
.cr-ab-final__phone:hover{color:#C2622E}
.cr-ab-final__hours{margin-top:16px;font-size:11px;letter-spacing:.24em;
	color:rgba(231,225,214,.5);line-height:2.1}
.cr-ab-final__addr{margin-top:14px;font-weight:300;font-size:12px;letter-spacing:.06em;
	color:rgba(231,225,214,.4)}
.cr-ab-final__book{margin-top:30px}
.cr-ab-final__nav{margin-top:44px;padding-top:20px;border-top:1px solid rgba(231,225,214,.12);
	display:flex;justify-content:center;gap:26px;flex-wrap:wrap;
	font-size:11px;letter-spacing:.24em}
.cr-ab-final__nav a{color:rgba(231,225,214,.6);text-decoration:none;transition:color .3s ease}
.cr-ab-final__nav a:hover{color:#C2622E}
.cr-ab-final__copy{margin-top:16px;font-size:10px;letter-spacing:.2em;color:rgba(231,225,214,.3)}

/* ---------- мобайл: зерно выключено (урок заглушки) ---------- */
@media(max-width:760px){
	.cr-ab-hero::after,.cr-ab-final::after{display:none}
}
