/* Shared outer shell. Typefaces and weights of existing controls stay inherited. */
html:has([data-shell-v14]) { scroll-padding-top:112px; }
html body :is(.header,.legacy-header)[data-shell-v14] {
  --shell-paper:#fff4dc;
  --shell-ink:#442d1d;
  --shell-brand:#a63225;
  --shell-line:#dacdb5;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:16px;
  height:92px;
  min-height:92px;
  padding:8px var(--site-gutter,clamp(22px,5vw,88px));
  position:sticky;
  inset-block-start:0;
  z-index:30;
  background:var(--shell-paper);
  border-bottom:1px solid var(--shell-line);
}
[data-shell-v14] > a:first-child { justify-self:start; display:flex; align-items:center; min-width:0; }
html body [data-shell-v14] :is(.logo,.legacy-logo) { width:105px; height:66px; object-fit:contain; display:block; }
html[lang] body [data-shell-v14] :is(#nav,.legacy-primary) {
  grid-column:2;
  grid-row:1;
  justify-self:center;
  position:static;
  display:flex;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:center;
  gap:24px;
  padding:0;
  margin:0;
  border:0;
  font-size:14px;
  line-height:1.35;
  background:transparent;
}
html[lang] body [data-shell-v14] :is(#nav,.legacy-primary) > a:not(.legacy-header-cta) {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-size:14px;
  line-height:1.35;
  white-space:nowrap;
  color:var(--shell-ink);
  text-decoration:none;
}
[data-shell-v14] :is(#nav,.legacy-primary) > a:hover { text-decoration:underline; text-underline-offset:5px; }
[data-shell-v14] .site-header-actions { grid-column:3; grid-row:1; justify-self:end; display:flex; align-items:center; gap:12px; }
html[lang] body [data-shell-v14] :is(.language-switch,.legacy-language-switch) {
  display:flex;
  position:static;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  gap:2px;
  padding:0;
  margin:0;
  border:0;
  background:none;
}
html[lang] body [data-shell-v14] :is(.language-switch,.legacy-language-switch) :is(a,span) {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  min-height:44px;
  font-size:11px;
  line-height:1.3;
  border-bottom:2px solid transparent;
  color:var(--shell-ink);
  text-decoration:none;
}
html[lang] body [data-shell-v14] :is(.language-switch,.legacy-language-switch) [aria-current=page] { border-color:var(--shell-brand); color:var(--shell-brand); }
html[lang] body [data-shell-v14] :is(.header-cta,.legacy-header-cta) {
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  min-height:46px;
  margin:0;
  padding:12px 16px;
  gap:16px;
  border:0;
  border-radius:0;
  background:var(--shell-brand);
  color:var(--shell-paper)!important;
  font-size:13px;
  line-height:1.35;
  white-space:nowrap;
  text-decoration:none;
  cursor:pointer;
}
html body [data-shell-v14] :is(.header-cta,.legacy-header-cta) svg { display:block; width:20px; height:20px; flex:0 0 20px; margin:0; }
html body [data-shell-v14] :is(.menu,.legacy-menu) { display:none; }
[data-shell-v14] :is(a,button):focus-visible { outline:2px solid var(--shell-brand); outline-offset:4px; }

/* Inside pages retain the signature and every useful link without a billboard. */
html body:not(.home-page) footer.original-footer { padding:36px var(--site-gutter,clamp(22px,5vw,88px)) 32px; }
body:not(.home-page) .original-footer .footer-line { flex-wrap:wrap; gap:18px 28px; }
html body:not(.home-page) .original-footer .footer-line img { width:76px; }
body:not(.home-page) .original-footer .footer-line .button { min-height:46px; padding:12px 18px; font-size:14px; }
body:not(.home-page) .original-footer .footer-word { font-size:clamp(42px,6vw,88px); line-height:1.1; padding:24px 0; text-align:start; }
body:not(.home-page) .original-footer .footer-bottom { padding-right:0; gap:16px 28px; }
html body .legacy-footer {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:20px 36px;
  padding:30px var(--site-gutter,clamp(22px,5vw,88px));
  border-top:1px solid #fff4dc66;
  background:#a63225;
  color:#fff4dc;
  font-size:13px;
}
html body .legacy-footer a { color:inherit; }
html body .legacy-footer :is(a,button):focus-visible { outline-color:#fff4dc; }
.legacy-footer .legacy-footer-links { justify-content:flex-end; margin:0; }
.legacy-footer .growth-foot { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:12px 28px; padding-top:16px; border-top:1px solid #fff4dc66; }
.legacy-footer .growth-foot a { min-height:44px; text-decoration:none; }
.legacy-footer .growth-foot a:hover { text-decoration:underline; }

/* Footer links are secondary in hierarchy, not smaller touch targets. */
html body footer.original-footer :is(.footer-bottom a,.growth-foot a,.seo-footer-links a,.footer-line > a:last-child,.footer-legal button) {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding-block:4px;
  font-size:13px;
  line-height:1.5;
}
html body.home-page footer.original-footer .footer-line > a:last-child { font-size:13px; line-height:1.5; }
html body footer.original-footer .footer-legal button { font-size:13px!important; }

@media(max-width:1180px) {
  html body :is(.header,.legacy-header)[data-shell-v14] { grid-template-columns:minmax(0,1fr) auto; }
  [data-shell-v14] .site-header-actions { grid-column:2; gap:16px; }
  html[lang] body [data-shell-v14] :is(#nav,.legacy-primary) {
    display:none;
    position:absolute;
    grid-column:auto;
    grid-row:auto;
    top:100%;
    left:0;
    right:0;
    margin:0;
    padding:20px var(--site-gutter,clamp(22px,5vw,88px));
    background:var(--shell-paper);
    border-bottom:1px solid var(--shell-line);
    align-items:flex-start;
    gap:8px;
    max-height:calc(100dvh - 92px);
    overflow:auto;
    justify-self:stretch;
  }
  html[lang] body [data-shell-v14] :is(#nav,.legacy-primary).open { display:flex; flex-direction:column; }
  html[lang] body [data-shell-v14] :is(#nav,.legacy-primary) > a:not(.legacy-header-cta) { font-size:17px; min-height:44px; padding:6px 0; }
  html body [data-shell-v14] :is(.menu,.legacy-menu) {
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    flex:0 0 44px;
    width:44px;
    height:44px;
    padding:10px;
    gap:6px;
    background:none;
    border:0;
    cursor:pointer;
  }
  [data-shell-v14] :is(.menu,.legacy-menu) span { display:block; width:24px; height:1px; background:var(--shell-ink); }
}
@media(max-width:700px) {
  html:has([data-shell-v14]) { scroll-padding-top:96px; }
  html body :is(.header,.legacy-header)[data-shell-v14] { height:77px; min-height:77px; gap:8px; }
  html body [data-shell-v14] :is(.logo,.legacy-logo) { width:83px; height:56px; }
  [data-shell-v14] .site-header-actions { gap:8px; }
  html[lang] body [data-shell-v14] :is(.language-switch,.legacy-language-switch) { gap:0; }
  html[lang] body [data-shell-v14] :is(.language-switch,.legacy-language-switch) :is(a,span) { min-width:36px; }
  html[lang] body [data-shell-v14] :is(#nav,.legacy-primary) { max-height:calc(100dvh - 77px); }
  html[lang] body [data-shell-v14] .site-header-actions > :is(.header-cta,.legacy-header-cta) { display:none; }
  html[lang] body [data-shell-v14] :is(#nav,.legacy-primary) > :is(.header-cta,.legacy-header-cta) { display:inline-flex; align-self:flex-start; margin-top:10px; white-space:normal; font-size:14px; }
  html body:not(.home-page) footer.original-footer { padding:28px var(--site-gutter,22px) calc(28px + env(safe-area-inset-bottom)); }
  body:not(.home-page) .original-footer .footer-word { font-size:clamp(36px,10vw,60px); padding-block:24px; }
  html body .legacy-footer { grid-template-columns:1fr; gap:16px; padding:26px var(--site-gutter,22px) max(26px,env(safe-area-inset-bottom)); }
  .legacy-footer .legacy-footer-brand { justify-content:flex-start; }
  .legacy-footer .legacy-footer-links { justify-content:flex-start; gap:8px 24px; }
  .legacy-footer .growth-foot { gap:8px 24px; }
}

/* New enquiry on retained editorial pages: exact fields and service contract,
   with the same paper, controls and native modal geometry as modern pages. */
@font-face { font-family:ELInstrument; src:url('/newsite2/assets/fonts-v5/instrument-latin.woff2') format('woff2'); font-weight:400; font-display:swap; }
body.el-editorial #inquiry {
  --cream:#fff4dc;
  --red:#a63225;
  --ink:#442d1d;
  --line:#dacdb5;
  box-sizing:border-box;
  width:min(620px,calc(100% - 28px));
  max-height:calc(100dvh - 36px);
  margin:auto;
  padding:0;
  border:0;
  border-radius:0;
  background:var(--cream);
  color:var(--ink);
  font-family:var(--editorial-body);
  font-size:16px;
  line-height:1.5;
  overflow:hidden;
}
body.el-editorial #inquiry::backdrop { background:#281b12b8; backdrop-filter:blur(5px); }
body.el-editorial #inquiry svg { display:block; width:24px; height:24px; }
body.el-editorial #inquiry .dialog-close { display:grid; place-items:center; padding:0; border:0; background:none; color:inherit; cursor:pointer; }
body.el-editorial #inquiry .eyebrow { margin:0; font-size:10px; letter-spacing:.12em; line-height:1.5; font-weight:750; text-transform:uppercase; }
body.el-editorial #inquiry h2 { margin:18px 0 0; font-family:var(--editorial-heading); font-weight:var(--editorial-weight); font-size:clamp(28px,calc(25.2px + .75vw),36px); line-height:1.08; letter-spacing:-.045em; color:var(--red); }
body.el-editorial #inquiry h2 em { font-family:ELInstrument,Georgia,serif; font-weight:400; font-style:italic; }
html[lang=ru] body.el-editorial #inquiry h2 em { font-family:var(--editorial-heading); font-weight:450; }
body.el-editorial #inquiry .dialog-intro { margin:18px 0 22px; font-size:15px; }
body.el-editorial #inquiry form { display:grid; gap:18px; }
body.el-editorial #inquiry label { display:block; font-size:13px; line-height:1.5; font-weight:650; }
body.el-editorial #inquiry :is(input:not([type=checkbox]),textarea,select) { display:block; width:100%; min-width:0; min-height:49px; border:0; border-bottom:1px solid var(--ink); padding:12px 0; border-radius:0; background:transparent; color:inherit; font-family:inherit; font-size:16px; line-height:24px; }
body.el-editorial #inquiry textarea { resize:vertical; }
body.el-editorial #inquiry select { appearance:none; padding-right:30px; background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%); background-position:calc(100% - 10px) 22px,calc(100% - 5px) 22px; background-size:5px 5px; background-repeat:no-repeat; }
body.el-editorial #inquiry .form-row { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
body.el-editorial #inquiry .form-row > label { min-width:0; }
body.el-editorial #inquiry fieldset { border:0; padding:0; margin:0; }
body.el-editorial #inquiry legend { padding:0; font-size:13px; font-weight:650; margin-bottom:10px; }
body.el-editorial #inquiry .product-choices { display:flex; gap:10px; flex-wrap:wrap; }
body.el-editorial #inquiry .product-choices label { position:relative; cursor:pointer; }
body.el-editorial #inquiry .product-choices input { position:absolute; opacity:0; }
body.el-editorial #inquiry .product-choices span { display:block; padding:10px 15px; border:1px solid var(--line); font-size:14px; }
body.el-editorial #inquiry .product-choices input:checked + span { background:var(--red); color:var(--cream); border-color:var(--red); }
body.el-editorial #inquiry .product-choices input:focus-visible + span { outline:2px solid var(--red); outline-offset:3px; }
body.el-editorial #inquiry .button { display:inline-flex; align-items:center; justify-content:space-between; min-height:58px; gap:32px; padding:18px 24px; border:0; border-radius:0; font-family:inherit; font-size:15px; font-weight:700; background:var(--red); color:var(--cream); cursor:pointer; }
body.el-editorial #inquiry .button:disabled { cursor:wait; opacity:.6; }
body.el-editorial #inquiry .form-note { margin:0; max-width:460px; font-size:12px; line-height:1.5; }
body.el-editorial #inquiry .email-alternative { display:inline-block; margin-top:15px; border-bottom:1px solid var(--line); font-size:12px; text-decoration:none; }
body.el-editorial #form-status { margin:0; font-size:13px; }
body.el-editorial #form-status:empty { display:none; }
body.el-editorial #inquiry .form-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
body.el-editorial.dialog-open { overflow:hidden; }
@media(max-width:700px) {
  body.el-editorial #inquiry { width:calc(100% - 20px); margin-inline:auto; }
  body.el-editorial #inquiry .form-row { grid-template-columns:1fr; gap:18px; }
  body.el-editorial #inquiry .dialog-intro { font-size:14px; }
  body.el-editorial #inquiry .product-choices { gap:7px; }
  body.el-editorial #inquiry .product-choices span { padding:10px 12px; font-size:13px; }
  body.el-editorial #inquiry .button { padding:16px; gap:15px; font-size:13px; }
}
@media (max-width:700px), (max-height:600px), (max-width:1100px) and (pointer:coarse) {
  body.el-editorial #inquiry {
    margin-block:0;
    max-height:calc(var(--inquiry-viewport-height,100dvh) - 2 * var(--inquiry-edge,10px) - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    max-block-size:calc(var(--inquiry-viewport-height,100dvh) - 2 * var(--inquiry-edge,10px) - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  }
}
