/* «FlowBerry» Studio: page-scoped calculator presentation. Existing global tokens and controls stay intact. */
.calculator-page--studio { --calc-paper:#fffafc; --calc-blush:#ffe8f0; --calc-pink:#f45d92; --calc-pink-dark:#c62f67; --calc-plum:#352735; --calc-ink:#211b21; --calc-muted:#746b73; --calc-line:#eadde5; color:var(--calc-ink); background:var(--calc-paper); }
.calculator-page--studio .calculator-hero { position:relative; padding:42px 0 58px; overflow:hidden; background:var(--calc-paper); border-bottom:0; }
.calculator-page--studio .calculator-hero::before { top:auto; right:auto; bottom:-150px; left:-110px; width:340px; height:340px; background:var(--calc-blush); border-radius:44% 56% 58% 42%/53% 47% 53% 47%; transform:rotate(18deg); }
.calculator-page--studio .calculator-hero::after { position:absolute; top:28px; right:4vw; width:92px; height:92px; border:1px solid rgba(198,47,103,.2); border-radius:50%; box-shadow:0 0 0 18px rgba(244,93,146,.045),0 0 0 38px rgba(244,93,146,.025); content:""; }
.calculator-page--studio .calculator-hero__layout { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,.84fr); align-items:center; gap:58px; }
.calculator-page--studio .calculator-hero__copy { min-width:0; padding:28px 0; }
.calculator-page--studio .calculator-hero__copy .product-breadcrumbs { margin-bottom:34px; }
.calculator-page--studio .product-breadcrumbs a,.calculator-page--studio .button { font-size:16px; }
.calculator-page--studio .calculator-hero__copy h1 { max-width:720px; margin:17px 0 0; font-size:clamp(58px,5.25vw,76px); line-height:.94; letter-spacing:-.062em; }
.calculator-page--studio .calculator-hero__copy h1 em { display:block; color:var(--calc-pink-dark); font-style:normal; }
.calculator-page--studio .calculator-hero__copy>p { max-width:650px; margin:24px 0 0; color:var(--calc-muted); font-size:18px; line-height:1.65; }
.calculator-page--studio .calculator-hero__actions { display:flex; flex-wrap:wrap; align-items:center; gap:14px 18px; margin-top:29px; }
.calculator-page--studio .calculator-hero__actions>.button { min-height:56px; margin:0; padding-inline:24px; border-radius:18px; }
.calculator-page--studio .calculator-hero__actions>span { display:inline-flex; align-items:center; gap:8px; color:var(--calc-muted); font-size:16px; font-weight:700; }
.calculator-page--studio .calculator-hero__actions>span .ui-icon { width:19px; height:19px; color:var(--calc-pink-dark); }
.calculator-page--studio .calculator-hero__board { position:relative; min-height:462px; padding:27px 26px 27px 132px; overflow:hidden; background:var(--calc-plum); border-radius:42px 42px 42px 116px; box-shadow:0 32px 70px rgba(53,39,53,.18); }
.calculator-page--studio .calculator-hero__board::before { position:absolute; inset:20px; border:1px solid rgba(255,255,255,.13); border-radius:29px 29px 29px 88px; content:""; pointer-events:none; }
.calculator-page--studio .calculator-hero__ticket { position:absolute; z-index:2; top:58px; bottom:58px; left:24px; display:flex; width:116px; flex-direction:column; align-items:center; justify-content:center; padding:34px 10px; color:var(--calc-plum); background:var(--calc-blush); border-radius:58px; text-align:center; transform:rotate(-5deg); }
.calculator-page--studio .calculator-hero__ticket::before,.calculator-page--studio .calculator-hero__ticket::after { position:absolute; left:50%; width:11px; height:11px; background:var(--calc-plum); border-radius:50%; content:""; transform:translateX(-50%); }
.calculator-page--studio .calculator-hero__ticket::before { top:12px; }.calculator-page--studio .calculator-hero__ticket::after { bottom:12px; }
.calculator-page--studio .calculator-hero__ticket>span { max-width:96px; font-size:12px; font-weight:900; line-height:1.2; letter-spacing:.02em; }
.calculator-page--studio .calculator-hero__ticket>strong { margin-top:12px; font-size:48px; line-height:1; letter-spacing:-.06em; }
.calculator-page--studio .calculator-hero__ticket>small { max-width:96px; margin-top:8px; font-size:12px; font-weight:750; line-height:1.25; }
.calculator-page--studio .calculator-hero__media { position:relative; width:100%; height:408px; aspect-ratio:auto; margin:0; padding:0; overflow:hidden; background:#f4edf2; border-radius:27px 27px 27px 74px; box-shadow:none; transform:none; }
.calculator-page--studio .calculator-hero__media>img { width:100%; height:100%; object-fit:cover; border-radius:0; }
.calculator-page--studio .calculator-hero__media::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(33,27,33,.32)); content:""; pointer-events:none; }
.calculator-page--studio .calculator-hero__media figcaption { z-index:1; right:18px; bottom:18px; left:18px; display:flex; align-items:center; gap:10px; padding:13px 15px; color:var(--calc-plum); background:rgba(255,255,255,.92); border:0; border-radius:17px; backdrop-filter:blur(10px); }
.calculator-page--studio .calculator-hero__media figcaption>b { display:grid; width:38px; height:38px; place-items:center; color:#fff; background:var(--calc-pink-dark); border-radius:50%; }
.calculator-page--studio .calculator-hero__media figcaption .ui-icon { width:18px; height:18px; }
.calculator-page--studio .calculator-hero__media figcaption>span { display:grid; gap:1px; font-size:16px; }
.calculator-page--studio .calculator-hero__media figcaption small { color:var(--calc-muted); font-size:16px; font-weight:700; }
.calculator-page--studio .calculator-hero__media figcaption strong { color:var(--calc-plum); font-size:16px; text-transform:none; letter-spacing:0; }

.calculator-page--studio .calculator-builder { padding:72px 0 96px; background:#fff; }
.calculator-page--studio .calculator-builder__heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,470px); align-items:end; gap:32px; }
.calculator-page--studio .calculator-builder__heading h2 { max-width:720px; margin:14px 0 0; font-size:clamp(43px,4.2vw,60px); line-height:1; letter-spacing:-.052em; }
.calculator-page--studio .calculator-builder__heading>p { max-width:470px; margin:0; color:var(--calc-muted); font-size:17px; line-height:1.55; }
.calculator-page--studio .calculator-stage-nav { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; margin:34px 0 22px; padding:8px; background:var(--calc-paper); border:1px solid var(--calc-line); border-radius:24px; }
.calculator-page--studio .calculator-stage-nav>a { display:grid; min-width:0; min-height:72px; grid-template-columns:29px 40px minmax(0,1fr) auto; align-items:center; gap:9px; padding:9px 12px; color:var(--calc-muted); background:transparent; border:0; border-radius:17px; cursor:pointer; text-align:left; text-decoration:none; transition:background-color .18s ease,color .18s ease,transform .18s ease; }
.calculator-page--studio .calculator-stage-nav>a:hover { background:#fff; color:var(--calc-plum); }
.calculator-page--studio .calculator-stage-nav>a[aria-selected=true] { color:#fff; background:var(--calc-plum); box-shadow:0 13px 28px rgba(53,39,53,.16); }
.calculator-page--studio .calculator-stage-nav>a>span { font-size:16px; font-weight:850; }
.calculator-page--studio .calculator-stage-nav>a>b { display:grid; width:40px; height:40px; place-items:center; color:var(--calc-pink-dark); background:var(--calc-blush); border-radius:13px; }
.calculator-page--studio .calculator-stage-nav>a[aria-selected=true]>b { color:var(--calc-plum); background:var(--calc-blush); }
.calculator-page--studio .calculator-stage-nav>a>b .ui-icon { width:21px; height:21px; }
.calculator-page--studio .calculator-stage-nav>a>strong { min-width:0; overflow:hidden; font-size:16px; text-overflow:ellipsis; white-space:nowrap; }
.calculator-page--studio .calculator-stage-nav>a>small { display:grid; min-width:30px; height:30px; place-items:center; color:var(--calc-plum); background:#fff; border-radius:50%; font-size:16px; font-weight:850; }
.calculator-page--studio .calculator-nojs { margin:28px 0 0; padding:18px 20px; color:var(--calc-plum); background:var(--calc-blush); border-radius:18px; font-size:16px; line-height:1.55; }.calculator-page--studio .calculator-nojs a { color:var(--calc-plum); font-weight:800; text-decoration:underline; text-underline-offset:3px; }
.calculator-page--studio .calculator-price-note { grid-template-columns:42px minmax(0,1fr) auto; margin:0 0 22px; padding:14px 16px; color:var(--calc-plum); background:#fff8e8; border:1px solid #f0dfb3; border-radius:17px; }
.calculator-page--studio .calculator-price-note>.ui-icon { color:#986e17; }
.calculator-page--studio .calculator-price-note strong { font-size:16px; }.calculator-page--studio .calculator-price-note small { font-size:16px; }
.calculator-page--studio .calculator-layout { display:grid; grid-template-columns:minmax(0,1fr) 370px; align-items:start; gap:22px; }
.calculator-page--studio .calculator-steps { grid-column:1; grid-row:1; gap:0; }
.calculator-page--studio .calculator-step { padding:27px; background:var(--calc-paper); border:1px solid var(--calc-line); border-radius:29px; }
.calculator-page--studio .calculator-step[hidden] { display:none!important; }
.calculator-page--studio .calculator-step>header { grid-template-columns:42px 54px minmax(0,1fr); gap:12px; margin-bottom:22px; }
.calculator-page--studio .calculator-step>header>span { width:42px; height:42px; color:var(--calc-plum); background:var(--calc-blush); border:0; border-radius:50%; font-size:16px; }
.calculator-page--studio .calculator-step>header>i { width:54px; height:54px; color:#fff; background:var(--calc-pink-dark); border-radius:50% 50% 44% 56%/46% 58% 42% 54%; transform:rotate(-7deg); }
.calculator-page--studio .calculator-step>header>i .ui-icon { width:25px; height:25px; transform:rotate(7deg); }
.calculator-page--studio .calculator-step>header h2 { font-size:29px; line-height:1.05; }
.calculator-page--studio .calculator-step>header p { margin-top:6px; font-size:16px; line-height:1.45; }
.calculator-page--studio .calculator-step__tools { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:16px; padding:8px 8px 8px 14px; background:#fff; border:1px solid var(--calc-line); border-radius:17px; }
.calculator-page--studio .calculator-step__tools>label { display:grid; min-width:0; flex:1; grid-template-columns:20px minmax(0,1fr); align-items:center; gap:8px; }
.calculator-page--studio .calculator-step__tools>label .ui-icon { width:19px; height:19px; color:var(--calc-pink-dark); }
.calculator-page--studio .calculator-step__tools input { width:100%; min-height:44px; padding:8px 6px; color:var(--calc-ink); background:transparent; border:0; outline:0; box-shadow:none; font-size:16px; }
.calculator-page--studio .calculator-step__tools>span { flex:0 0 auto; padding:10px 12px; color:var(--calc-muted); background:var(--calc-paper); border-radius:11px; font-size:16px; }
.calculator-page--studio .calculator-step__tools>span b { color:var(--calc-plum); }
.calculator-page--studio .calculator-component-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:11px; }
.calculator-page--studio .calculator-component { grid-template-columns:118px minmax(0,1fr); grid-template-areas:"photo copy" "controls controls"; align-content:start; align-items:start; gap:13px 15px; padding:15px; background:#fff; border:1px solid var(--calc-line); border-radius:21px; box-shadow:0 9px 24px rgba(53,39,53,.035); transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.calculator-page--studio .calculator-component:hover { border-color:#dfb7c8; box-shadow:0 14px 30px rgba(53,39,53,.07); transform:translateY(-2px); }
.calculator-page--studio .calculator-component.is-selected { border-color:var(--calc-pink); box-shadow:0 0 0 2px rgba(244,93,146,.12),0 15px 34px rgba(198,47,103,.1); }
.calculator-page--studio .calculator-component__mark { grid-area:photo; width:92px; height:92px; color:var(--calc-pink-dark); background:var(--calc-blush); border:0; border-radius:48% 52% 43% 57%/51% 43% 57% 49%; }
.calculator-page--studio .calculator-component__mark img { width:100%; height:100%; object-fit:contain; background:#fff; }
.calculator-page--studio .calculator-component__mark span { font-size:24px; }
.calculator-page--studio .calculator-component__copy { grid-area:copy; align-self:center; padding:4px 0; }
.calculator-page--studio .calculator-component__copy h3 { overflow:visible; font-size:18px; line-height:1.25; text-overflow:clip; white-space:normal; }
.calculator-page--studio .calculator-component__copy p { margin-top:7px; color:var(--calc-pink-dark); font-size:16px; line-height:1.3; }
.calculator-page--studio .calculator-component__controls { display:grid; grid-area:controls; grid-template-columns:minmax(0,1fr) 136px; align-items:end; gap:9px; }
.calculator-page--studio .calculator-component__options { gap:8px; }
.calculator-page--studio .calculator-component__options label>span,.calculator-page--studio .calculator-quantity__label { color:var(--calc-muted); font-size:16px; }
.calculator-page--studio .calculator-component__options { align-items:start; }
.calculator-page--studio .calculator-component__options label { display:grid; gap:6px; align-self:start; }
.calculator-page--studio .calculator-component__options select { height:44px; min-height:44px; padding:0 36px 0 12px; color:var(--calc-ink); background-color:var(--calc-paper); background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23bd326d' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='m6 9 6 6 6-6'/></svg>"); background-repeat:no-repeat; background-position:right 12px center; border:1px solid var(--calc-line); border-radius:12px; font-size:16px; line-height:44px; cursor:pointer; appearance:none; -webkit-appearance:none; }
.calculator-page--studio .calculator-component__options select:hover { border-color:var(--calc-pink-dark); }
.calculator-page--studio .calculator-component__options select:focus-visible { outline:2px solid var(--calc-pink-dark); outline-offset:2px; }
.calculator-page--studio .calculator-quantity { gap:5px; }
.calculator-page--studio .calculator-quantity__control { grid-template-columns:44px minmax(40px,1fr) 44px; background:var(--calc-blush); border-color:#f3c9d9; border-radius:13px; }
.calculator-page--studio .calculator-quantity__control button { width:44px; height:44px; color:var(--calc-pink-dark); font-size:22px; }
.calculator-page--studio .calculator-quantity__control input { height:44px; color:var(--calc-plum); font-size:17px; }
.calculator-page--studio .calculator-component__zoom-icon { right:7px; bottom:7px; width:28px; height:28px; background:var(--calc-plum); }
.calculator-page--studio .calculator-step__empty { margin:0; padding:34px; color:var(--calc-muted); background:#fff; border:1px dashed var(--calc-line); border-radius:18px; font-size:16px; text-align:center; }
.calculator-page--studio .calculator-step__footer { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:20px; padding-top:20px; border-top:1px solid var(--calc-line); }
.calculator-page--studio .calculator-step__footer>span { color:var(--calc-muted); font-size:16px; }.calculator-page--studio .calculator-step__footer>span b { color:var(--calc-plum); }
.calculator-page--studio .calculator-step__footer>.button { min-height:50px; padding-inline:18px; border-radius:15px; }

.calculator-page--studio .calculator-summary { position:sticky; top:18px; grid-column:2; grid-row:1; max-height:calc(100vh - 36px); padding:0; overflow:auto; background:var(--calc-plum); border:0; border-radius:30px; box-shadow:0 24px 60px rgba(53,39,53,.19); scrollbar-width:thin; }
.calculator-page--studio .calculator-summary__top { padding:25px 25px 18px; color:#fff; }
.calculator-page--studio .calculator-summary__top>span { color:var(--calc-pink); font-size:16px; }
.calculator-page--studio .calculator-summary__top h2 { color:#fff; font-size:34px; }.calculator-page--studio .calculator-summary__top p { color:rgba(255,255,255,.7); font-size:16px; line-height:1.45; }
.calculator-page--studio .calculator-summary__empty { margin:0 18px; padding:22px; color:rgba(255,255,255,.66); background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.2); border-radius:18px; }
.calculator-page--studio .calculator-summary__empty>.ui-icon { color:var(--calc-pink); }.calculator-page--studio .calculator-summary__empty strong { color:#fff; font-size:17px; }.calculator-page--studio .calculator-summary__empty small { font-size:16px; }
.calculator-page--studio .calculator-summary__items { max-height:238px; margin:0 18px; padding:0; }
.calculator-page--studio .calculator-summary__items li { grid-template-columns:minmax(0,1fr) auto 40px; border-color:rgba(255,255,255,.12); }
.calculator-page--studio .calculator-summary__items li strong { color:#fff; font-size:16px; }.calculator-page--studio .calculator-summary__items li small { color:rgba(255,255,255,.63); font-size:16px; }.calculator-page--studio .calculator-summary__items li>b { color:var(--calc-pink); font-size:16px; }
.calculator-page--studio .calculator-summary__items li>button { width:40px; height:40px; color:#fff; background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.14); }
.calculator-page--studio .calculator-summary__work { margin:11px 18px 0; color:var(--calc-plum); background:var(--calc-blush); }.calculator-page--studio .calculator-summary__work strong,.calculator-page--studio .calculator-summary__work small { color:var(--calc-plum); font-size:16px; }
.calculator-page--studio .calculator-summary__total { margin:18px 20px 0; padding:18px 0; border-color:rgba(255,255,255,.17); }
.calculator-page--studio .calculator-summary__total small,.calculator-page--studio .calculator-summary__total>p { color:rgba(255,255,255,.65); font-size:16px; line-height:1.4; }
.calculator-page--studio .calculator-summary__total strong { color:var(--calc-pink); font-size:31px; }
.calculator-page--studio .calculator-contact-panel { margin:0; padding:0 18px 18px; }
.calculator-page--studio .calculator-contact-panel>summary { display:flex; min-height:58px; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; color:var(--calc-plum); background:var(--calc-blush); border-radius:17px; cursor:pointer; list-style:none; }
.calculator-page--studio .calculator-contact-panel>summary::-webkit-details-marker { display:none; }
.calculator-page--studio .calculator-contact-panel>summary>span { display:grid; min-width:0; grid-template-columns:24px minmax(0,1fr); align-items:center; gap:2px 8px; }
.calculator-page--studio .calculator-contact-panel>summary>span>.ui-icon { width:21px; height:21px; grid-row:1/3; }
.calculator-page--studio .calculator-contact-panel>summary b { font-size:16px; }.calculator-page--studio .calculator-contact-panel>summary small { font-size:16px; }
.calculator-page--studio .calculator-contact-panel>summary>.ui-icon { width:19px; height:19px; transform:rotate(90deg); transition:transform .18s ease; }.calculator-page--studio .calculator-contact-panel[open]>summary>.ui-icon { transform:rotate(-90deg); }
.calculator-page--studio .calculator-contact { margin:10px 0 0; padding:18px; gap:13px; background:#fff; border-radius:19px; }
.calculator-page--studio .calculator-contact h3 { color:var(--calc-plum); font-size:23px; }.calculator-page--studio .calculator-contact>p { color:var(--calc-muted); font-size:16px; }
.calculator-page--studio .calculator-contact label>span { font-size:16px; }.calculator-page--studio .calculator-contact label>span>small { font-size:16px; }
.calculator-page--studio .calculator-contact input:not([type=checkbox]),.calculator-page--studio .calculator-contact textarea { min-height:48px; border-color:var(--calc-line); border-radius:12px; font-size:16px; }
.calculator-page--studio .calculator-contact__grid { grid-template-columns:1fr; }
.calculator-page--studio .calculator-contact .calculator-contact__consent,.calculator-page--studio .calculator-contact .calculator-contact__consent a { color:var(--calc-muted); font-size:16px; }.calculator-page--studio .calculator-contact .review-consent>span { color:var(--calc-muted); font-size:16px!important; }
.calculator-page--studio .calculator-contact>.button { min-height:52px; border-radius:15px; }
.calculator-page--studio .calculator-how,.calculator-page--studio .calculator-faq { background:var(--calc-paper); }
.calculator-page--studio .calculator-how .service-cards p,.calculator-page--studio .calculator-faq .service-faq summary,.calculator-page--studio .calculator-faq .service-faq p { font-size:16px; }

@media (max-width:1180px) {
	.calculator-page--studio .calculator-hero__layout { grid-template-columns:minmax(0,1fr) minmax(365px,.78fr); gap:36px; }
	.calculator-page--studio .calculator-hero__board { min-height:416px; padding-left:108px; }
	.calculator-page--studio .calculator-hero__ticket { width:104px; }.calculator-page--studio .calculator-hero__ticket>strong { font-size:42px; }
	.calculator-page--studio .calculator-hero__media { height:362px; }
	.calculator-page--studio .calculator-stage-nav>a { grid-template-columns:38px minmax(0,1fr) auto; }.calculator-page--studio .calculator-stage-nav>a>span { display:none; }
	.calculator-page--studio .calculator-layout { grid-template-columns:minmax(0,1fr) 338px; }
	.calculator-page--studio .calculator-component-grid { grid-template-columns:1fr; }
}

@media (max-width:960px) {
	.calculator-page--studio .calculator-hero { padding:28px 0 44px; }
	.calculator-page--studio .calculator-hero__layout { grid-template-columns:1fr; gap:25px; }
	.calculator-page--studio .calculator-hero__copy { padding-bottom:0; }.calculator-page--studio .calculator-hero__copy .product-breadcrumbs { margin-bottom:25px; }
	.calculator-page--studio .calculator-hero__copy h1 { font-size:clamp(52px,9vw,68px); }.calculator-page--studio .calculator-hero__copy>p { font-size:17px; }
	.calculator-page--studio .calculator-hero__board { min-height:340px; padding:20px 20px 20px 116px; border-radius:32px 32px 32px 88px; }
	.calculator-page--studio .calculator-hero__board::before { inset:14px; border-radius:24px 24px 24px 66px; }
	.calculator-page--studio .calculator-hero__ticket { top:26px; bottom:26px; left:16px; width:118px; padding:34px 10px; }
	.calculator-page--studio .calculator-hero__media { height:300px; border-radius:23px 23px 23px 61px; }
	.calculator-page--studio .calculator-builder { padding:58px 0 74px; }
	.calculator-page--studio .calculator-builder__heading { grid-template-columns:1fr; gap:16px; }.calculator-page--studio .calculator-builder__heading>p { font-size:16px; }
	.calculator-page--studio .calculator-stage-nav { grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; padding:6px; }
	.calculator-page--studio .calculator-stage-nav>a { position:relative; min-height:0; grid-template-columns:minmax(0,1fr); grid-template-rows:auto auto; justify-items:start; gap:6px; padding:10px 38px 10px 10px; border-radius:14px; }.calculator-page--studio .calculator-stage-nav>a>b { width:36px; height:36px; }.calculator-page--studio .calculator-stage-nav>a>strong { font-size:15px; line-height:1.2; white-space:normal; }.calculator-page--studio .calculator-stage-nav>a>small { position:absolute; top:8px; right:8px; min-width:26px; height:26px; font-size:14px; }
	.calculator-page--studio .calculator-layout { grid-template-columns:1fr; }
	.calculator-page--studio .calculator-summary { position:relative; top:auto; grid-column:1; grid-row:1; max-height:none; }
	.calculator-page--studio .calculator-steps { grid-column:1; grid-row:2; }
	.calculator-page--studio .calculator-summary__items { max-height:260px; }
	.calculator-page--studio .calculator-component-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:620px) {
	/* ☠️ Овальный «билет» на телефоне резал текст по скруглению и накрывал его точками
	   перфорации. Здесь он становится горизонтальной плашкой над фото — форма под текст,
	   а не текст под форму. */
	.calculator-page--studio .calculator-hero__board { padding:16px; }
	.calculator-page--studio .calculator-hero__ticket { position:static; display:grid; width:auto; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:4px 14px; margin:0 0 14px; padding:14px 18px; border-radius:22px 22px 8px 22px; text-align:left; transform:none; }
	.calculator-page--studio .calculator-hero__ticket::before,.calculator-page--studio .calculator-hero__ticket::after { display:none; }
	.calculator-page--studio .calculator-hero__ticket>span { grid-column:2; max-width:none; font-size:12px; }
	.calculator-page--studio .calculator-hero__ticket>strong { grid-row:1/3; grid-column:1; margin:0; font-size:44px; }
	.calculator-page--studio .calculator-hero__ticket>small { grid-column:2; max-width:none; margin:0; font-size:13px; }

	.calculator-page--studio .calculator-hero { padding:22px 0 34px; }
	.calculator-page--studio .calculator-hero::after { display:none; }
	.calculator-page--studio .calculator-hero__copy h1 { font-size:43px; line-height:.96; }.calculator-page--studio .calculator-hero__copy>p { margin-top:18px; font-size:16px; line-height:1.58; }
	.calculator-page--studio .calculator-hero__actions { display:grid; margin-top:23px; }.calculator-page--studio .calculator-hero__actions>.button { width:100%; justify-content:center; }
	.calculator-page--studio .calculator-hero__actions>span { justify-content:center; }
	.calculator-page--studio .calculator-hero__media { height:242px; border-radius:18px 18px 18px 48px; }.calculator-page--studio .calculator-hero__media figcaption { right:10px; bottom:10px; left:10px; padding:9px 11px; }.calculator-page--studio .calculator-hero__media figcaption>b { width:34px; height:34px; }.calculator-page--studio .calculator-hero__media figcaption small { font-size:16px; }.calculator-page--studio .calculator-hero__media figcaption strong { font-size:16px; }
	.calculator-page--studio .calculator-builder { padding:45px 0 58px; }
	.calculator-page--studio .calculator-builder__heading h2 { font-size:39px; }.calculator-page--studio .calculator-builder__heading>p { font-size:16px; }
	.calculator-page--studio .calculator-stage-nav { grid-template-columns:repeat(2,minmax(0,1fr)); margin:25px 0 18px; border-radius:19px; }

	.calculator-page--studio .calculator-price-note { grid-template-columns:38px minmax(0,1fr); }.calculator-page--studio .calculator-price-note>b { grid-column:2; }
	.calculator-page--studio .calculator-summary { border-radius:24px; }
	.calculator-page--studio .calculator-summary__top { padding:21px 19px 15px; }.calculator-page--studio .calculator-summary__top h2 { font-size:30px; }
	.calculator-page--studio .calculator-summary__empty { margin:0 13px; }.calculator-page--studio .calculator-summary__total { margin-inline:16px; }
	.calculator-page--studio .calculator-contact-panel { padding:0 13px 13px; }
	.calculator-page--studio .calculator-step { padding:20px 13px; border-radius:23px; }
	.calculator-page--studio .calculator-step>header { grid-template-columns:38px 46px minmax(0,1fr); gap:9px; }.calculator-page--studio .calculator-step>header>span { width:38px; height:38px; }.calculator-page--studio .calculator-step>header>i { width:46px; height:46px; }.calculator-page--studio .calculator-step>header h2 { font-size:24px; }.calculator-page--studio .calculator-step>header p { font-size:16px; }
	.calculator-page--studio .calculator-step__tools { margin-bottom:12px; }.calculator-page--studio .calculator-step__tools>span { display:none; }
	.calculator-page--studio .calculator-component-grid { grid-template-columns:1fr; }
	.calculator-page--studio .calculator-component { grid-template-columns:96px minmax(0,1fr); gap:11px 12px; padding:13px; border-radius:18px; }
	.calculator-page--studio .calculator-component__mark { width:78px; height:78px; }.calculator-page--studio .calculator-component__copy h3 { font-size:18px; }.calculator-page--studio .calculator-component__copy p { font-size:16px; }
	.calculator-page--studio .calculator-component__controls { grid-template-columns:minmax(0,1fr) 126px; gap:7px; }
	.calculator-page--studio .calculator-component__options { grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }.calculator-page--studio .calculator-component__options select { min-height:44px; padding-right:24px; }
	.calculator-page--studio .calculator-quantity__control { grid-template-columns:44px minmax(34px,1fr) 44px; }
	.calculator-page--studio .calculator-step__footer { align-items:stretch; flex-direction:column; }.calculator-page--studio .calculator-step__footer>.button { width:100%; justify-content:center; }
	.calculator-page--studio .calculator-faq .service-faq details p { padding-left:58px; border-left:3px solid var(--calc-pink); }
}

@media (max-width:380px) {
	.calculator-page--studio .calculator-hero__copy h1 { font-size:39px; }
	
	.calculator-page--studio .calculator-component { grid-template-columns:88px minmax(0,1fr); }.calculator-page--studio .calculator-component__mark { width:88px; height:88px; }
	.calculator-page--studio .calculator-component__controls { grid-template-columns:1fr; }.calculator-page--studio .calculator-quantity { width:136px; justify-self:end; }
}

@media (prefers-reduced-motion:reduce) {
	.calculator-page--studio * { scroll-behavior:auto!important; transition-duration:.01ms!important; }
}

.calculator-page--studio .eyebrow { font-size:16px; }
.calculator-page--studio .calculator-step { padding:8px 0 0; background:transparent; border:0; border-radius:0; }
.calculator-page--studio :where(a,button,input,select,textarea,summary):focus,.calculator-page--studio :where(a,button,input,select,textarea,summary):focus-visible { outline:3px solid var(--calc-pink-dark); outline-offset:3px; }
html:has(.calculator-page--studio .calculator-contact-panel[open]) .btn-back-top,html:has(.calculator-page--studio .calculator-contact-panel[open]) .msg-widget:not(.active):not(:focus-within) { visibility:hidden; opacity:0; pointer-events:none; }

/* Оттенок — видимые цветные чипсы. Select остаётся для скрипта и клавиатуры, но спрятан
   визуально; фото карточки крупнее, чтобы охапку было видно. */
.calculator-page--studio .calculator-component__mark { width:118px; height:118px; border-radius:26px 26px 8px 26px; overflow:hidden; }
.calculator-page--studio .calculator-component__mark img { object-fit:cover; }
.calculator-page--studio .calc-shades-field { display:grid; gap:8px; }
.calculator-page--studio .calc-shades-field>span b { color:var(--calc-ink); font-weight:700; }
.calculator-page--studio .calc-shades-select { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.calculator-page--studio .calc-shades-select:focus-visible+.calc-shades { outline:2px solid var(--calc-pink-dark); outline-offset:4px; border-radius:12px; }
.calculator-page--studio .calc-shades { display:flex; flex-wrap:wrap; gap:8px; }
.calculator-page--studio .calc-shade { width:30px; height:30px; padding:0; background:var(--shade); border:2px solid rgba(44,37,40,.12); border-radius:50%; box-shadow:inset 0 0 0 2px #fff; cursor:pointer; transition:transform .15s ease, border-color .15s ease; }
.calculator-page--studio .calc-shade:hover { transform:scale(1.1); }
.calculator-page--studio .calc-shade.is-active { border-color:var(--calc-pink-dark); transform:scale(1.12); }
.calculator-page--studio .calc-shade:focus-visible { outline:2px solid var(--calc-pink-dark); outline-offset:2px; }
@media (max-width:620px) {
	.calculator-page--studio .calculator-component__mark { width:96px; height:96px; }
	.calculator-page--studio .calc-shade { width:34px; height:34px; }
}

/* Телефон: оттенки одной строкой на всю ширину карточки, высота и количество — рядом снизу.
   Иначе чипсы складываются в узкий столбик, а селект высоты тянется на всю их высоту. */
@media (max-width:620px) {
	.calculator-page--studio .calculator-component__controls { grid-template-columns:minmax(0,1fr); gap:10px; align-items:start; }
	.calculator-page--studio .calculator-component__options { grid-template-columns:minmax(0,1fr); gap:10px; }
	.calculator-page--studio .calculator-component__options label { align-self:start; }
	.calculator-page--studio .calculator-component__options select { min-height:44px; max-width:160px; }
	.calculator-page--studio .calc-shades-field { order:-1; }
	.calculator-page--studio .calc-shades { gap:9px; }
	.calculator-page--studio .calculator-quantity { justify-self:start; width:auto; }
}
