/* CABARET — ivory stationery, wine velvet and champagne metal. */
body[data-vertical=cabaret] {
  --cabaret-wine:#531c31;
  --cabaret-deep:#28131d;
  --cabaret-champagne:#d7ba83;
  --cabaret-ivory:#fbf7ef;
  background-color:#28131d;
  background-image:radial-gradient(ellipse at 8% 12%,#71304475,transparent 48%),radial-gradient(ellipse at 94% 85%,#b28a4633,transparent 47%),repeating-linear-gradient(90deg,transparent 0 79px,#d6bd8c08 80px 81px);
  background-size:auto;
}
body[data-vertical=cabaret]::before {
  background:radial-gradient(ellipse at 49% 0,#d9bc7522,transparent 35%);
}
body[data-vertical=cabaret] .page { background:#fbf7ef;border-color:#c7ab7459;box-shadow:0 0 90px #170d1680; }
body[data-vertical=cabaret] :is(.topbar,.rail-wordmark) { background:#3d1929;border:1px solid #ba9b63;box-shadow:0 7px 24px #28131d2b; }
body[data-vertical=cabaret] .topbar { border-radius:11px; }
body[data-vertical=cabaret] .wordmark>span { color:#e4c990; }
body[data-vertical=cabaret] .rail-wordmark { border-radius:7px; }
body[data-vertical=cabaret] .rail-title { font-family:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;font-weight:800;line-height:1.85; }
body[data-vertical=cabaret] .rail-title em { color:#ebd2a1;background:none;border-bottom:1px solid #b28e58; }
body[data-vertical=cabaret] .rail-eyebrow { color:#d4bdac;letter-spacing:2.5px; }
body[data-vertical=cabaret] .rail-proof small { color:#c7b8b9; }
body[data-vertical=cabaret] .right-rail h2 { font-style:normal;letter-spacing:2px; }
body[data-vertical=cabaret] .index-nav a.is-active { color:#f4dca7; }
body[data-vertical=cabaret] :is(.cta,.small-cta,.mobile-sticky a:last-child) { color:#382416;background:linear-gradient(110deg,#e9d5ad,#d8b982 63%,#eddcbb);border-color:#d2ae70; }
body[data-vertical=cabaret] .cta { border-width:1px;border-radius:10px;box-shadow:inset 0 0 0 4px #fff4,0 7px 18px #5731171c; }
body[data-vertical=cabaret] .cta:hover { box-shadow:inset 0 0 0 4px #fff6,0 12px 25px #57311726; }
body[data-vertical=cabaret] .arrow-circle { background:#4b2431;color:#f5dfb5;border-radius:50%; }
body[data-vertical=cabaret] .small-cta { border-radius:6px; }
body[data-vertical=cabaret] .mobile-sticky { background:#391a29;border-color:#b9986380;border-radius:12px; }
body[data-vertical=cabaret] .mobile-sticky a { border-radius:8px; }
body[data-vertical=cabaret] #mobile-menu { background:#3b1b2c;border-color:#b99a67;border-radius:10px; }

/* The opening reads like a gilded lounge invitation. */
body[data-vertical=cabaret] .hero-section { background:#fbf7ef; }
body[data-vertical=cabaret] .hero-card {
  border:1px solid #b69965;border-radius:39px 39px 10px 10px;
  background-color:#fffaf0;
  background-image:radial-gradient(ellipse at 50% -10%,#e2c79940,transparent 48%),repeating-linear-gradient(90deg,transparent 0 45px,#bca67e0b 46px 47px);
  background-size:auto;background-repeat:no-repeat;
  box-shadow:0 6px 0 #eadfcf,0 18px 30px #4f233b0d;
}
body[data-vertical=cabaret] .hero-card::before { content:"";position:absolute;inset:8px;border:1px solid #c9af783b;border-radius:31px 31px 4px 4px;pointer-events:none;z-index:1; }
body[data-vertical=cabaret] .hero-product { background:transparent;border:0;border-bottom:1px solid #bd9b5d;border-radius:0;color:#765567;letter-spacing:.1em;padding:4px 4px 7px; }
body[data-vertical=cabaret] .hero-product strong { color:#613448; }
body[data-vertical=cabaret] .hero-eyebrow { color:#806773; }
body[data-vertical=cabaret] .hero-card h1 { font-family:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;color:#401e2e; }
body[data-vertical=cabaret] .hero-card h1 strong { color:#7a334d;transform:none;text-shadow:2px 3px 0 #d5b57945;font-weight:900;letter-spacing:-.045em; }
body[data-vertical=cabaret] .hero-line { font-weight:700;letter-spacing:-.045em; }
body[data-vertical=cabaret] .hero-question { font-family:inherit;font-weight:800;letter-spacing:-.055em;padding-top:4px; }
body[data-vertical=cabaret] .vertical-hero-lead { color:#78636c; }
body[data-vertical=cabaret] .vertical-seal { margin-top:21px;border-top:1px solid #d6c19c;border-bottom:1px solid #d6c19c;padding:10px 0; }
body[data-vertical=cabaret] .vertical-seal>span { color:#8a6630;letter-spacing:2px; }
body[data-vertical=cabaret] .vertical-seal>strong { border-left-color:#cab695;color:#866c75; }
body[data-vertical=cabaret] .vertical-seal>i { color:#b18b46; }
body[data-vertical=cabaret] .hero-brand { background:#482032;border-top:1px solid #b39663; }
body[data-vertical=cabaret] .hero-brand>span:last-child { color:#d7c5cc; }
body[data-vertical=cabaret] .terminal { background:#3b1d2b;color:#f8edf0;border:1px solid #b699665c;border-radius:6px;box-shadow:5px 7px 0 #b99b6420; }
body[data-vertical=cabaret] .hero-label>span { background:#512437; }
body[data-vertical=cabaret] .hero-bubble { background:#f2e3c5;border-color:#9e7a44;border-width:1px;box-shadow:3px 5px 0 #b18a4126; }
body[data-vertical=cabaret] .hero-bubble::after { background:#f2e3c5;border-color:#9e7a44;border-width:1px; }
body[data-vertical=cabaret] .hero-lights .beam-gold { background:linear-gradient(#f1ce8273,transparent 86%);animation-duration:13s; }
body[data-vertical=cabaret] .hero-lights .beam-blue { background:linear-gradient(#c48a9e40,transparent 86%);animation-duration:16s; }
body[data-vertical=cabaret] .hero-character { animation-duration:7.2s; }
body[data-vertical=cabaret] .ticker span { border-color:#cebc9e;border-radius:4px;background:#fffcf6;color:#694354; }
body[data-vertical=cabaret] .ticker { border-bottom-color:#d7c7ac; }
body[data-vertical=cabaret] .hero-feature-links a { color:#744053;border-bottom-color:#d7bfa1; }

/* Slim rules and Mincho headings give long sections a quieter rhythm. */
body[data-vertical=cabaret] .section h2 { font-family:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;font-weight:800;line-height:1.7;letter-spacing:-.05em; }
body[data-vertical=cabaret] mark { background:linear-gradient(transparent 77%,#d7bc8369 77%,#d7bc8369 92%,transparent 92%); }
body[data-vertical=cabaret] .section-kicker { color:#916b37;font-style:normal;letter-spacing:2.1px; }
body[data-vertical=cabaret] :is(.night-section,.service-section,.crew-section,.customer-section,.plans-section,.faq-section) { border-top:1px solid #c8b48c;background:#f7f1e7; }
body[data-vertical=cabaret] :is(.manager-section,.screen-section,.flow-section) { background:#fffcf7;border-top-color:#d6c6aa; }
body[data-vertical=cabaret] .section-lead { color:#78636b; }
body[data-vertical=cabaret] .crew-tab { border:1px solid #bca37e;border-radius:45px 45px 8px 8px;box-shadow:0 5px 0 #ded0b8;background:#fffbf5;padding-top:22px; }
body[data-vertical=cabaret] .crew-tab:hover { box-shadow:0 8px 0 #d9c6a6; }
body[data-vertical=cabaret] .crew-tab[data-app-target].is-active { background:#f2e4d7;border-color:#8c5d47;box-shadow:0 5px 0 #9e7959; }
body[data-vertical=cabaret] .app-panel { border:1px solid #bca37e;border-radius:9px;background:#fffcf7; }
body[data-vertical=cabaret] :is(.manager-demo,.customer-demo,.plan-card,.plan-matrix-wrap,.official-screen,.inquiry-builder) { border-width:1px;border-color:#bea37a;border-radius:10px;box-shadow:0 7px 18px #60314a0d; }
body[data-vertical=cabaret] .plan-card { border-top:3px solid #7f3e55;border-radius:0 0 10px 10px; }
body[data-vertical=cabaret] .plan-overview button { border-radius:5px;border-width:1px; }
body[data-vertical=cabaret] .plan-overview button.is-selected { border-color:#9d7840;box-shadow:0 3px 0 #bca06e; }
body[data-vertical=cabaret] .switch-offer { border-width:1px;border-color:#b6965c;border-radius:9px;background:#f4e9d1; }
body[data-vertical=cabaret] .flow-list li>span { background:#592b3e;color:#e7c98f;border-color:#fffbf5;box-shadow:0 0 0 1px #b69a69; }
body[data-vertical=cabaret] .faq-list details { border-color:#c9b79a; }

/* Velvet columns and champagne light keep the animated floor unmistakable. */
body[data-vertical=cabaret] .night-stage { border:1px solid #ad8e5d;border-radius:20px 20px 8px 8px;box-shadow:0 7px 0 #dfcfae,0 20px 30px #46213417; }
body[data-vertical=cabaret] :is(.stage-topline,.stage-toolbar,.night-controls,.night-relay,.stage-caption) { background:#361927;border-color:#ab875a40; }
body[data-vertical=cabaret] .night-stage .night-floor { background:radial-gradient(ellipse at 50% 0,#97614745,transparent 65%),linear-gradient(120deg,#512333,#25121d); }
body[data-vertical=cabaret] .night-stage .lounge-arch { border-color:#b99a648a;background:repeating-linear-gradient(90deg,#7d3b4d66 0 8px,#481a2a70 9px 16px);border-radius:70px 70px 0 0;box-shadow:inset 0 0 25px #d9ac6322; }
body[data-vertical=cabaret] .night-stage .floor-counter { background:linear-gradient(115deg,#6b3d42,#33232a);border-color:#c4a46d;box-shadow:0 8px 0 #1f131a; }
body[data-vertical=cabaret] .night-stage .floor-table { background:linear-gradient(125deg,#aa8c61,#654b3b);border-color:#d7bb86;box-shadow:0 6px 0 #21151c,0 0 20px #edcd8214; }
body[data-vertical=cabaret] .night-stage .beam-blue { background:linear-gradient(#ba899a91,#944c6636 50%,transparent 90%);animation-duration:14s; }
body[data-vertical=cabaret] .night-stage .beam-gold { background:linear-gradient(#f2d394b0,#d7a65e35 45%,transparent 90%);animation-duration:12s; }
body[data-vertical=cabaret] .stage-caption h3 { font-family:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;letter-spacing:-.025em; }
body[data-vertical=cabaret] .night-controls button[aria-pressed=true] { background:#e5c999;color:#3b2430;border-color:#f4ddb2; }
body[data-vertical=cabaret] .night-controls button[aria-pressed=true] small { color:#735030; }
body[data-vertical=cabaret] .night-stage .stage-message { background:#572c3f;border-color:#c9a770;color:#f4dcaa; }

/* The dedicated table scene is a velvet booth with a paper ledger. */
body[data-vertical=cabaret] .service-demo { border:1px solid #ac8b57;border-radius:15px 15px 7px 7px;background:#fffdf7;color:#51293a;box-shadow:0 6px 0 #dfcfb0; }
body[data-vertical=cabaret] .service-topbar { background:#512538;border-bottom:1px solid #ad8858; }
body[data-vertical=cabaret] .service-topbar b { letter-spacing:3px;font-weight:700; }
body[data-vertical=cabaret] .service-context { background:#f3ebde;color:#827064; }
body[data-vertical=cabaret] .service-steps button { border-radius:5px;background:#f7efe6;border-color:#d6c4a7;color:#8a6b68; }
body[data-vertical=cabaret] .service-steps button[aria-pressed=true] { background:#603044;border-color:#603044;color:#fff5e9; }
body[data-vertical=cabaret] .service-steps button[aria-pressed=true] small { color:#e8c98c; }
body[data-vertical=cabaret] .service-lounge { border-radius:55px 55px 8px 8px;background:radial-gradient(ellipse at 50% 0,#a7774260,transparent 60%),linear-gradient(125deg,#5b2639,#29141f); }
body[data-vertical=cabaret] .service-lounge:before,body[data-vertical=cabaret] .service-lounge:after { border-color:#b79a666e;background:repeating-linear-gradient(90deg,#5b25334a 0 5px,#38131f70 6px 11px); }
body[data-vertical=cabaret] .service-seat { background:linear-gradient(#8a4759,#4c2337);border-color:#bc995d; }
body[data-vertical=cabaret] .service-seat.is-extra { background:transparent; }
body[data-vertical=cabaret] .service-ledger { border-color:#d8c6a8;border-radius:5px; }
body[data-vertical=cabaret] .service-ledger>div { background:linear-gradient(90deg,#f5eddf,#fffdf8);border-color:#e2d7c5; }
body[data-vertical=cabaret] .service-ledger dt { color:#8c746c; }
body[data-vertical=cabaret] .service-ledger dd { color:#5b2d40; }
body[data-vertical=cabaret] .service-result { background:#f0e2c5;border:1px solid #c4a36b;border-radius:5px; }
body[data-vertical=cabaret] .service-result>strong { color:#5a2e40;font-family:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif; }
body[data-vertical=cabaret] .service-playback { background:#f5eee3;border-color:#ddccb0; }
body[data-vertical=cabaret] .service-playback button { border-color:#c6ad88;color:#704151;background:#fffaf2;border-radius:5px; }
body[data-vertical=cabaret] .cast-section { background:radial-gradient(ellipse at 100% 0,#9d6e4638,transparent 55%),#381a2a; }
body[data-vertical=cabaret] .cast-device-frame { border-color:#25131d;background:#25131d;box-shadow:0 16px 30px #1b0c1899,0 0 0 1px #c3a16b60; }
body[data-vertical=cabaret] .cast-cards>button { border-radius:38px 38px 7px 7px;overflow:hidden; }
body[data-vertical=cabaret] :is(.statement,.contact-section) { background-color:#3a1a29;background-image:repeating-linear-gradient(90deg,transparent 0 56px,#ccaa6a0a 57px 58px); }
body[data-vertical=cabaret] .contact-bubble { border-width:1px;border-color:#c4a575;background:#f0dfbc;color:#4c2937; }
body[data-vertical=cabaret] .contact-bubble::after { border-width:1px;border-color:#c4a575;background:#f0dfbc; }
body[data-vertical=cabaret] .document-cta { border-radius:8px;border-color:#bda78290; }
body[data-vertical=cabaret] .footer { background:#eee4d3; }
body[data-vertical=cabaret] .footer .wordmark>span { color:#6f384b; }

@media(max-width:540px) {
  body[data-vertical=cabaret] .hero-card { border-radius:32px 32px 8px 8px; }
  body[data-vertical=cabaret] .hero-card::before { inset:6px;border-radius:26px 26px 3px 3px; }
  body[data-vertical=cabaret] .vertical-seal { padding:9px 0;margin-top:16px; }
  body[data-vertical=cabaret] .vertical-seal>span { letter-spacing:1.2px; }
  body[data-vertical=cabaret] .section h2 { line-height:1.7; }
  body[data-vertical=cabaret] .crew-tab { border-radius:35px 35px 7px 7px;padding-top:18px; }
  body[data-vertical=cabaret] .service-topbar b { letter-spacing:2px; }
}
@media(max-width:350px) {
  body[data-vertical=cabaret] .hero-card h1 strong { font-size:clamp(31px,13.4cqw,70px); }
  body[data-vertical=cabaret] .hero-product { font-size:8px;letter-spacing:.04em; }
  body[data-vertical=cabaret] .vertical-seal>span { letter-spacing:.6px; }
  body[data-vertical=cabaret] .service-lounge { border-radius:35px 35px 6px 6px; }
}
