/* A salon-specific campaign entrance, using the live Rebooko design tokens.
   Text surfaces use a darker Rebooko red for AA white text; decorative accent stays unchanged. */
.salon-journey{--salon-accent:#f0442d;--salon-text-surface:#c53623;--salon-ink:#101010;--salon-paper:#fff;--salon-muted:#5b5b56;--salon-line:#deded8;background:var(--salon-paper)}
.salon-journey main{overflow:clip}
.salon-journey .salon-kicker{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;line-height:1.6}
.salon-hero{background:var(--salon-ink);color:#fff;padding:148px 0 64px}
.salon-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,82px);align-items:center}
.salon-hero-grid>*{min-width:0}
.salon-intro .salon-kicker{color:#ff9e8e;margin-bottom:24px}
.salon-intro h1{font-size:clamp(48px,5.5vw,82px);line-height:.99;letter-spacing:-.065em;font-weight:600;margin:0}
.salon-intro h1>span{color:#ff9e8e}
.salon-lead{font-size:18px;line-height:1.6;color:#dbdbd6;max-width:43ch;margin:26px 0}
.salon-primary{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;min-height:56px;padding:16px 24px;background:var(--salon-text-surface);color:#fff!important;font-weight:650;border-radius:12px;transition:background .2s,transform .2s}
.salon-primary:hover{background:#c42b18;transform:translateY(-2px)}
.salon-primary span{font-size:24px;line-height:1}
.salon-start-note{font-size:14px;line-height:1.55;color:#bfbfba;max-width:40ch;margin:16px 0 24px}
.salon-text-link{display:inline-flex;align-items:center;gap:14px;text-decoration:underline;text-underline-offset:5px;font-size:15px;font-weight:600;line-height:1.6}
.salon-text-link:hover{text-decoration-thickness:2px}
.salon-product{background:var(--salon-text-surface);color:#fff;border-radius:24px;padding:24px;margin:0;box-shadow:0 28px 60px #0003}
.salon-product-top{display:flex;align-items:center;justify-content:space-between;gap:20px;font-family:var(--font-mono);font-size:11px;margin-bottom:20px;line-height:1.6}
.salon-product-top>span:last-child{font-family:var(--font-sans);font-size:28px;font-weight:700;letter-spacing:-.09em}
.salon-example-site{background:#faf9f5;color:#201d18;border-radius:12px;overflow:hidden}
.salon-example-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;font-size:10px}
.salon-example-nav>b{font-size:21px;letter-spacing:-.06em;white-space:nowrap}
.salon-example-nav>b>span{color:#bd3b24}
.salon-example-nav>span{text-align:right;max-width:15ch}
.salon-example-poster{position:relative;overflow:hidden;background:#272119;color:#e7dbba;min-height:225px;padding:26px 20px 42px;display:flex;align-items:center}
.salon-poster-word{position:relative;z-index:1;font-size:clamp(52px,5.8vw,80px);font-weight:650;line-height:.93;letter-spacing:-.06em}
.salon-poster-art{position:absolute;right:-12px;bottom:-18px;width:65%;height:108%;color:#aa6b47;transform:rotate(12deg);opacity:.9}
.salon-poster-label{position:absolute;z-index:1;bottom:14px;left:20px;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em}
.salon-example-offer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 20px;font-size:17px;font-weight:650}
.salon-example-offer small{display:block;margin-top:2px;font-size:11px;color:#686156;font-weight:400}
.salon-booking-path{display:flex;align-items:center;gap:10px;font-size:12px;padding:17px 0}
.salon-booking-path>span:last-child{margin-left:auto;font-size:21px}
.salon-booking-dot{width:7px;height:7px;background:#fff;border-radius:50%}
.salon-example-calendar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--salon-ink);color:#fff;padding:19px 18px;border-radius:12px}
.salon-example-calendar small{display:block;color:#c8c8c1;font-size:11px;margin-bottom:5px}
.salon-example-calendar strong{display:block;font-size:18px;letter-spacing:-.025em;line-height:1.45}
.salon-example-calendar strong>span{font-size:14px;font-weight:500;margin-left:8px;white-space:nowrap}
.salon-calendar-state{font-size:10px;padding:4px 7px;border:1px solid #7e7e75;border-radius:5px}
.salon-product figcaption{margin-top:15px;font-size:11px;line-height:1.6;color:#fff}
.salon-control,.salon-steps,.salon-free,.salon-finish{padding:clamp(64px,8vw,104px) 0}
.salon-journey h2{font-size:clamp(38px,4.6vw,62px);font-weight:600;line-height:1.06;letter-spacing:-.055em;margin:20px 0}
.salon-section-head{max-width:690px}
.salon-section-head>p:last-child{max-width:48ch;color:var(--salon-muted);font-size:18px}
.salon-controls-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:50px}
.salon-controls-grid article{border-top:1px solid var(--salon-line);padding-top:22px}
.salon-index{font-family:var(--font-mono);font-size:11px;color:var(--salon-muted)}
.salon-controls-grid h3{font-size:24px;font-weight:600;line-height:1.2;letter-spacing:-.045em;margin:23px 0 14px}
.salon-controls-grid p,.salon-steps-grid>div>p:not(.salon-kicker){font-size:16px;line-height:1.65;color:var(--salon-muted)}
.salon-steps{background:#f5f4ef}
.salon-steps-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(40px,8vw,110px)}
.salon-steps-grid>div{align-self:start;position:sticky;top:120px}
.salon-steps-grid .salon-text-link{margin-top:24px}
.salon-step-list{list-style:none;counter-reset:salon-step;margin:0;padding:0}
.salon-step-list>li{position:relative;counter-increment:salon-step;padding:0 0 25px 48px;margin-bottom:25px;border-bottom:1px solid #d9d8d0}
.salon-step-list>li:last-child{margin-bottom:0;border-bottom:0;padding-bottom:0}
.salon-step-list>li:before{content:counter(salon-step,decimal-leading-zero);position:absolute;left:0;top:3px;font:12px var(--font-mono);color:#a52e1e}
.salon-step-list b{font-size:22px;font-weight:600;letter-spacing:-.035em;line-height:1.3}
.salon-step-list p{font-size:15px;color:var(--salon-muted);margin-top:9px;line-height:1.6}
.salon-free-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(40px,8vw,110px);align-items:center}
.salon-free h2>span{color:#b9301d}
.salon-free-summary{font-size:24px!important;color:var(--salon-ink)!important;font-weight:600;letter-spacing:-.025em;line-height:1.45!important}
.salon-free-grid>div>p:not(.salon-kicker){font-size:16px;line-height:1.65;color:var(--salon-muted);margin-bottom:22px}
.salon-finish{background:var(--salon-ink);color:#fff;text-align:center}
.salon-finish .salon-kicker{color:#c8c8c1}
.salon-finish h2{font-size:clamp(42px,6vw,80px);margin:22px 0 32px}
.salon-finish>div>p:last-child{font-size:14px;line-height:1.7;color:#c8c8c1;margin-top:26px}
.salon-finish>div>p:last-child a{color:#fff;text-decoration:underline;text-underline-offset:4px}
@media(prefers-reduced-motion:no-preference){.salon-product{animation:salon-arrive .65s ease-out both}.salon-example-calendar{animation:salon-arrive .65s .2s ease-out both}@keyframes salon-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}}
@media(max-width:900px){.salon-hero-grid{gap:30px}.salon-hero{padding:138px 0 54px}.salon-intro h1{font-size:clamp(40px,5.45vw,49px)}.salon-product{padding:17px}.salon-calendar-state{display:none}.salon-example-nav>span{font-size:9px}.salon-controls-grid{gap:22px}.salon-steps-grid,.salon-free-grid{gap:36px}.salon-step-list b{font-size:21px}}
@media(max-width:700px){.salon-hero-grid,.salon-steps-grid,.salon-free-grid{grid-template-columns:minmax(0,1fr)}.salon-hero{padding:120px 0 42px}.salon-intro h1{font-size:clamp(38px,11.5vw,76px)}.salon-lead{font-size:17px}.salon-product{margin-top:16px}.salon-example-poster{min-height:230px}.salon-poster-word{font-size:76px}.salon-example-calendar strong{font-size:20px}.salon-calendar-state{display:block}.salon-controls-grid{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:34px}.salon-controls-grid h3{margin:12px 0}.salon-steps-grid>div{position:static}.salon-steps-grid{gap:42px}.salon-free-grid{gap:18px}.salon-free h2{margin-bottom:0}.salon-free-summary{font-size:21px!important}.salon-product-top{font-size:10px}.salon-journey .salon-kicker{font-size:11px}.salon-primary{width:100%;max-width:340px}.salon-finish .salon-primary{max-width:340px}}
@media(max-width:360px){.salon-example-calendar{padding:15px 12px}.salon-example-calendar strong>span{margin-left:4px;font-size:12px}.salon-calendar-state{display:none}.salon-example-nav{padding:15px}.salon-example-offer{padding:16px}.salon-product{padding:14px}.salon-product-top{font-size:9px}}
@media(prefers-reduced-motion:reduce){.salon-primary{transition:none}.salon-primary:hover{transform:none}}
