/* Presentation profiles, navigation, and action states. */
.and-site { --page-bg:#fff; --card-bg:#fafafa; --raised-bg:#fff; --subtle-bg:#f4f4f4; --accent-text:#c60000; --ink:#1a1a1a; --muted:#595959; --line:#dedede; background:var(--page-bg); color:var(--ink); }
html[data-tone="story"] .and-site { --page-bg:#f7f1e7; --card-bg:#fffaf2; --raised-bg:#fffdf8; --subtle-bg:#eee3d2; --muted:#5b5148; --line:#d9cbb8; --accent-text:#aa3f35; }
html[data-tone="expert"] .and-site { --page-bg:#eef5fc; --card-bg:#f8fbff; --raised-bg:#fff; --subtle-bg:#e2edf9; --muted:#47596d; --line:#c9d8e8; }
html[data-tone="plain"] .and-site { --page-bg:#111315; --card-bg:#1a1d20; --raised-bg:#23272b; --subtle-bg:#202428; --ink:#f0f2f4; --muted:#c2c7cc; --line:#42484f; --accent-text:#ff8181; --firm-text:#f0f2f4; --firm-white-very-easy:#1a1d20; }
.and-site .site-header { background:var(--page-bg); }
.and-site .competence-panel,.and-site .summary-card,.and-site .contact-section,.and-site .compact-cta { background:var(--subtle-bg); border-color:var(--line); }
.and-site .destination-card,.and-site .service-card,.and-site .situations-section,.and-site .quiz-container { background:var(--card-bg); border-color:var(--line); }
.and-site .direction-panel,.and-site .option-card,.and-site .field input,.and-site .field textarea,.and-site .field select,.and-site .quiz-step .form-control,.and-site .quiz-step .form-select { background:var(--raised-bg); color:var(--ink); border-color:var(--line); }
.and-site .reading-section,.and-site .editorial-note,.and-site .faq-list details,.and-site .related-nav a,.and-site .service-list li { border-color:var(--line); }
.and-site .destination-card:hover,.and-site .option-card:hover,.and-site .option-card.selected { background:var(--raised-bg); }
.and-site .icon-tile { background:var(--raised-bg); color:var(--accent-text); }
.and-site .card-arrow { color:var(--muted); }
.and-site .summary-card p { font-size:17px; color:var(--muted); line-height:1.7; }
.and-site .text-link { min-height:48px; padding:12px 18px; border:1px solid var(--firm-red); border-radius:10px; color:#fff; background:var(--firm-red); font-size:16px; justify-content:space-between; transition:background-color .18s,transform .18s; }
.and-site .text-link:hover { background:#a90000; color:#fff; }
.and-site .action-secondary,.and-site .action-row .text-link,.and-site .catalog-heading .text-link { background:transparent; color:var(--accent-text) !important; border:1px solid var(--accent-text); }
.and-site .action-secondary:hover,.and-site .action-row .text-link:hover,.and-site .catalog-heading .text-link:hover { color:#fff !important; background:var(--firm-red); border-color:var(--firm-red); }
.and-site nav.related-nav .text-link { background:none; border:0; border-bottom:1px solid var(--line); border-radius:0; color:var(--accent-text); padding:14px 0; }
.and-site nav.related-nav .text-link:hover { color:var(--ink); }
.and-site .compact-cta { text-decoration:none; color:inherit; transition:background .2s,box-shadow .2s; }
.and-site .compact-cta h2 { color:var(--accent-text); }
.and-site .compact-cta:hover { box-shadow:0 0 0 2px var(--accent-text); }
.and-site .compact-cta:hover .action-button { background:#a90000; }
.and-site .compact-cta .action-button { white-space:nowrap; }
.and-site .role-stage { min-height:265px; }
.and-site .role-slide { width:100%; }
.and-site .role-name { max-width:100%; white-space:normal; color:var(--accent-text); }
.and-site .role-detail-link { margin-top:20px; min-height:48px; padding:10px 16px; font-size:15px; }
.and-site .role-catalog-link { color:var(--accent-text); display:inline-flex; align-items:center; gap:8px; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.and-site .rotator-controls { margin-top:22px; flex-wrap:wrap; }
.presentation-intro { padding:34px; margin-bottom:32px; border:1px solid var(--line); border-radius:20px; background:var(--card-bg); }
.and-site .presentation-intro h2 { font-size:clamp(27px,3vw,38px); margin:17px 0; }
.presentation-intro > p:not(.eyebrow) { color:var(--muted); font-size:18px; line-height:1.7; }
.tone-choices { display:grid; grid-template-columns:1fr; gap:8px; }
.intro-choices { grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:24px; }
.tone-choices button { text-align:left; padding:14px 16px; border:1px solid var(--line); border-radius:10px; background:var(--raised-bg); color:var(--ink); cursor:pointer; transition:border-color .18s,background .18s; }
.tone-choices button span { display:block; font-weight:600; font-size:16px; }
.tone-choices button small { display:block; color:var(--muted); font-size:13px; line-height:1.5; margin-top:5px; }
.tone-choices button:hover { border-color:var(--accent-text); }
.tone-choices button[aria-pressed="true"] { border-color:var(--accent-text); box-shadow:inset 0 0 0 1px var(--accent-text); }
.tone-widget { position:fixed; right:22px; bottom:22px; z-index:55; }
.tone-widget-toggle { display:flex; align-items:center; gap:10px; min-height:48px; padding:12px 16px; border:1px solid var(--line); border-radius:12px; background:var(--raised-bg); color:var(--ink); box-shadow:0 5px 24px #00000013; cursor:pointer; font-size:14px !important; }
.tone-widget-toggle > .ui-icon { color:var(--accent-text); width:20px; height:20px; }
.tone-widget-panel { position:absolute; right:0; bottom:calc(100% + 10px); width:310px; max-height:calc(100dvh - 100px); overflow:auto; padding:20px; background:var(--raised-bg); border:1px solid var(--line); border-radius:15px; box-shadow:0 12px 40px #00000020; }
.tone-widget-panel > p { font-size:17px; font-weight:600; margin-bottom:15px; }
.mobile-tones { display:none; }
.presentation-note { margin-bottom:32px; padding:25px 30px; background:var(--raised-bg); border:1px solid var(--line); border-left:3px solid var(--accent-text); border-radius:12px; }
.and-site .presentation-note h2 { font-size:24px; line-height:1.3; margin-bottom:12px; }
.presentation-note p { max-width:950px; font-size:18px; line-height:1.8; color:var(--muted); }
.and-site .site-nav { gap:15px; font-size:14px; }
.and-site .nav-contact { padding:11px 14px; background:var(--firm-red); color:#fff !important; border-color:var(--firm-red); gap:8px; }
.and-site .direction-panel { left:auto; right:-145px; background:var(--raised-bg); }
.and-site .direction-title .ui-icon { margin-left:0; }
.and-site .direction-column a:hover,.and-site .competency-menu a:hover { background:var(--subtle-bg); color:var(--accent-text); }
.and-site .dropdown-all { grid-column:1/-1; display:flex; justify-content:center; align-items:center; gap:12px; border-top:1px solid var(--line); padding:18px 0 0; color:var(--accent-text); }
.competency-menu { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:5px 20px; }
.competency-menu a { display:flex; align-items:center; gap:12px; padding:12px; border-radius:8px; }
.competency-menu .ui-icon { color:var(--accent-text); }
.and-site .menu-lines { width:24px; height:18px; border:0; position:relative; display:block; }
.menu-lines i { position:absolute; display:block; height:2px; width:24px; background:currentColor; left:0; transition:transform .2s,opacity .2s; }
.menu-lines i:nth-child(1) { top:0; }.menu-lines i:nth-child(2) { top:8px; }.menu-lines i:nth-child(3) { top:16px; }
.and-site .menu-toggle[aria-expanded="true"] .menu-lines { height:18px; border:0; transform:none; }
.and-site .menu-toggle[aria-expanded="true"] .menu-lines::after { display:none; }
.menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(1) { transform:translateY(8px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(2) { opacity:0; }
.menu-toggle[aria-expanded="true"] .menu-lines i:nth-child(3) { transform:translateY(-8px) rotate(-45deg); }
.section-navigation { position:sticky; top:102px; z-index:29; background:var(--card-bg); border-bottom:1px solid var(--line); box-shadow:0 8px 18px #0000000b; }
.section-navigation > div { padding-block:12px; }
.section-links { display:flex; align-items:center; gap:6px; flex-wrap:wrap; width:100%; }
.section-links a { padding:7px 10px; font-size:14px; border-radius:7px; white-space:nowrap; }
.section-links a:hover,.section-links a[aria-current="page"] { color:var(--accent-text); background:var(--subtle-bg); }
.section-links a[aria-current="page"] { font-weight:600; box-shadow:inset 0 -2px var(--accent-text); }
.expert-sidebar { display:none; }
html[data-tone="plain"] .and-site .hero h1 span,html[data-tone="plain"] .and-site .reading-section h2 .ui-icon,html[data-tone="plain"] .and-site .eyebrow .ui-icon { color:var(--accent-text); }
html[data-tone="plain"] .and-site .site-brand { background:#fff; border-radius:8px; padding:3px 6px; }
html[data-tone="plain"] .and-site .field :disabled { -webkit-text-fill-color:var(--muted); color:var(--muted); }
html[data-tone="plain"] .and-site .field input::placeholder,html[data-tone="plain"] .and-site .field textarea::placeholder { color:var(--muted); }
html[data-tone="plain"] .and-site .inquiry-form .action-button:disabled { background:#3f454c; color:#ccd0d5 !important; border-color:#3f454c; }
html[data-tone="plain"] .and-site .skip-link { background:var(--raised-bg); }
html[data-tone="plain"] .and-site .direction-toggle:hover,html[data-tone="plain"] .and-site .direction-toggle[aria-expanded="true"] { background:var(--subtle-bg); color:var(--accent-text); }
html[data-tone="plain"] .and-site .plain-list li::marker { color:var(--accent-text); }
html[data-tone="plain"] .and-site .hero { grid-template-columns:1fr; }
html[data-tone="plain"] .and-site .hero-copy { max-width:950px; }
html[data-tone="plain"] .and-site .destination-card:hover h3,html[data-tone="plain"] .and-site .site-nav a[aria-current],html[data-tone="plain"] .and-site .site-nav a:hover { color:var(--accent-text); }
@media(min-width:1280px) {
  html[data-tone="expert"] .and-site { padding-left:220px; }
  html[data-tone="expert"] .expert-sidebar { display:block; position:fixed; left:16px; top:26px; bottom:26px; width:188px; padding:20px 14px; overflow:auto; background:var(--raised-bg); border:1px solid var(--line); border-radius:14px; }
  .sidebar-brand { font-size:17px; font-weight:600; color:var(--accent-text) !important; display:block; }
  .sidebar-page { font-size:14px; color:var(--muted); margin:22px 0 12px !important; }
  [data-page-toc] a { display:block; padding:9px 0; font-size:14px; line-height:1.45; border-bottom:1px solid var(--line); }
  [data-page-toc] a:hover { color:var(--accent-text); }
  .sidebar-contact { display:flex; gap:8px; align-items:center; font-size:14px; color:var(--accent-text) !important; margin-top:24px; }
  html[data-tone="expert"] .section-shell { width:calc(100% - 52px); max-width:1180px; }
  html[data-tone="expert"] .and-site .site-nav { gap:10px; font-size:13px; }
  html[data-tone="expert"] .and-site .header-inner { gap:16px; }
}
@media(max-width:1279px) and (min-width:1051px) { .and-site .site-nav { gap:10px; font-size:13px; }.and-site .nav-contact { gap:5px;padding:10px; } }
@media(max-width:1050px) {
  .and-site .header-inner { min-height:82px; flex-wrap:wrap; gap:0; }
  .and-site .site-brand img { width:88px;height:70px; }
  .and-site .site-nav { width:100%;flex-direction:column;align-items:stretch;font-size:17px;gap:0;padding-bottom:20px;max-height:calc(100dvh - 90px);overflow-y:auto; }
  .and-site.is-enhanced .site-nav { display:none; }.and-site.is-enhanced .site-nav.is-open { display:flex; }
  .and-site .menu-toggle { display:flex;align-items:center;gap:12px;padding:12px 0 12px 12px;background:none;border:0;color:var(--ink);cursor:pointer;font-size:15px; }
  .and-site .site-nav > a { padding:13px 0; }
  .and-site .nav-direction-label > a { padding:16px 0 8px;font-weight:700; }
  .and-site .direction-toggle { display:none; }
  .and-site .direction-panel { position:static;display:block;width:100%;padding:0 0 15px;border:0;border-radius:0;box-shadow:none;background:transparent; }
  .and-site .direction-column { gap:0;margin-bottom:12px; }
  .and-site .direction-column a,.and-site .competency-menu a { padding:10px 12px;font-size:16px;border-radius:0; }
  .and-site .direction-column .direction-title { padding:12px 0 4px;border:0;font-size:16px;color:var(--accent-text); }
  .and-site .direction-column .direction-title .ui-icon { width:20px;height:20px; }
  .and-site .dropdown-all { display:flex;justify-content:flex-start;padding:12px 0;font-size:16px;border:0;text-decoration:underline;text-underline-offset:4px; }
  .competency-menu { display:block; }.competency-menu .ui-icon { width:19px;height:19px; }
  .and-site .site-nav .nav-contact { padding:14px 18px;margin:10px 0;justify-content:space-between; }
  .tone-widget { display:none; }
  .mobile-tones { display:block;border-top:1px solid var(--line);padding-top:20px;margin-top:12px; }
  .mobile-tones > p { font-size:16px;font-weight:600;margin-bottom:12px; }
  .mobile-tones .tone-choices { grid-template-columns:1fr 1fr; }
  .intro-choices { grid-template-columns:1fr 1fr; }
}
@media(max-width:700px) {
  .presentation-intro { padding:24px; }.presentation-note { padding:22px; }
  .section-links { flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:4px; }
  .and-site .role-stage { min-height:295px; }
  .and-site .compact-cta .action-button { white-space:normal; }
}
@media(max-width:380px) { .intro-choices,.mobile-tones .tone-choices { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .and-site * { scroll-behavior:auto !important;transition:none !important; } }

/* Reading width and Russian line breaks. */
.and-site .eyebrow { color:var(--accent-text); }
.and-site .page-intro { max-width:none; }
.and-site .page-intro .page-description { max-width:none; width:100%; }
.tone-choices button { min-width:0; }
.tone-choices button small { overflow-wrap:anywhere; }
.and-site .editorial-note > div { min-width:0; }
.and-site :is(p,li) { text-wrap:pretty; hyphens:none; }
.and-site :is(h1,h2,h3) { text-wrap:balance; }
.and-site [id] { scroll-margin-top:185px; }
.and-site .reading-aside { top:190px; }
@media(max-width:1050px) {
  .section-navigation { top:82px; }
  .and-site [id] { scroll-margin-top:180px; }
}
@media(max-width:700px) {
  .section-navigation > div { padding-block:8px; }
  .section-links { scrollbar-width:none; -ms-overflow-style:none; mask-image:linear-gradient(90deg,#000 0%,#000 calc(100% - 18px),transparent 100%); }
  .section-links::-webkit-scrollbar { display:none; }
  .and-site [id] { scroll-margin-top:176px; }
}
