/* Scoped to this page; preserve the site's existing colours and typography. */
.start-site main{ --section-padding: 40px; }
.start-site main > section:not(.sv-hero){ padding-block: var(--section-padding); }
.start-site main  .sv-hero{ padding-bottom: var(--section-padding); }
.start-site .skip-link{ position:fixed; top:8px; left:16px; z-index:10001; padding:12px 20px; background:#fff; color:var(--red); transform:translateY(-150%); }
.start-site .skip-link:focus{ transform:translateY(0); }
.start-site :where(a,button,input,textarea,select,[tabindex]):focus-visible{ outline:3px solid #276ac2; outline-offset:4px; }
.start-site .sr-only{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.start-site .page-breadcrumbs{ display:flex; flex-wrap:wrap; gap:10px; font-size:14px; color:#666; margin-bottom:24px; }
.start-site .page-breadcrumbs a{ color:var(--red); text-decoration:none; }
.start-site .sv-hero__title{ font-size:clamp(36px,4.5vw,58px); }
.start-site .sv-hero__right{ text-align:left; align-items:flex-start; flex-basis:420px; }
.start-site .sv-hero__buttons{ flex-wrap:wrap; width:100%; }
.start-site .sv-hero__buttons .btn{ min-width:0; }
.start-site .sv-hero__banner-img{ max-height:none; }
.start-site .sf-types__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.start-site .sf-service__inner{ gap:32px; }
.start-site .sf-service__content,.start-site .sf-service__film-info,.start-site .sf-calc__left,.start-site .sf-calc__right{ min-width:0; }
.start-site .sf-service__img{ flex-basis:32%; position:relative; }
.start-site .sf-service__img > img{ position:absolute; inset:0; }
.start-site .sf-service__grid--3{ grid-template-columns:repeat(3,minmax(0,1fr)); }
.start-site .sf-service__grid--2{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.start-site .sf-service__quote{ margin-top:24px; white-space:normal; }
.start-site .sf-service__pill{ white-space:normal; }
.start-site .sf-why__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:minmax(200px,auto) minmax(180px,auto) minmax(180px,auto); }
.start-site .sf-why__card{ min-width:0; }
.start-site .sf-why__label{ color:#fff; }
.start-site .sf-calc__bg{ max-width:1260px; margin-inline:auto; padding:40px; }
.start-site .sf-calc__bg  .container{ max-width:none; padding:0; }
.start-site .sf-calc__sizes > input{ width:100%; min-width:0; }
.start-site .sf-calc__radio input{ display:block; position:absolute; width:1px; height:1px; opacity:0; }
.start-site .sf-calc__radio input:focus-visible + .sf-calc__radio-custom{ outline:3px solid #276ac2; outline-offset:3px; }
.start-site .sf-calc__radio-custom{ flex-shrink:0; }
.start-site .sf-calc__upload span{ color:#666; }
.start-site .wide-file-name{ overflow-wrap:anywhere; font-size:14px; margin:-8px 0 24px; }
.start-site .wide-task{ display:block; width:100%; resize:vertical; min-height:100px; margin-bottom:24px; font-family:inherit; }
.start-site .sf-quality__img--before{ clip-path:inset(0 50% 0 0); }
.start-site .sf-quality__slider{ touch-action:pan-y; }
.start-site .quality-control{ max-width:900px; margin:20px auto 0; font-size:14px; color:#555; }
.start-site .quality-control label{ display:block; margin-bottom:12px; }
.start-site .quality-control input{ width:100%; accent-color:var(--red); min-height:36px; cursor:ew-resize; }
.start-site .nr-divider{ padding:0; }
.start-site .nr-divider__line{ margin:0; border:0; border-top:1px solid var(--gray-dark); }
.start-site .faq__question{ gap:16px; }
.start-site .faq__item--active .faq__answer{ height:auto; }
.start-site .modal{ transition:opacity var(--transition); }
.start-site .modal__content{ max-height:calc(100dvh - 32px); overflow-y:auto; }
.start-site .modal__description{ font-size:15px; line-height:1.6; margin-bottom:20px; }
.start-site .quote-summary{ background:var(--gray); padding:14px 16px; margin-bottom:20px; border-radius:12px; font-size:13px; }
.start-site .quote-summary[hidden]{ display:none; }
.start-site .quote-summary p{ white-space:pre-line; margin-top:8px; line-height:1.6; overflow-wrap:anywhere; }
.start-site .toast{ width:min(560px,calc(100vw - 32px)); }
.start-site .toast__inner{ white-space:normal; }
.start-site .nav__item:focus-within .mega-menu,.start-site .nav__item.is-open .mega-menu{ opacity:1; visibility:visible; pointer-events:auto; }
.start-site .mega-menu{ left:50%; transform:translate(-30%,8px); min-width:0; width:min(900px,calc(100vw - 60px)); }
.start-site .nav__item:hover .mega-menu,.start-site .nav__item:focus-within .mega-menu,.start-site .nav__item.is-open .mega-menu{ transform:translate(-30%,0); }
.start-site .footer__content{ grid-template-columns:repeat(2,minmax(0,1fr)); }
.start-site .footer__left,.start-site .footer__right{ min-width:0; }
.start-site .footer__contacts{ flex-wrap:wrap; gap:16px 24px; }
.start-site .footer__phone,.start-site .footer__email{ overflow-wrap:anywhere; }
.start-site .footer__map{ position:relative; background:var(--gray); }
.start-site .footer__map-link{ position:absolute; bottom:16px; left:50%; transform:translateX(-50%); background:#fff; color:var(--red); padding:10px 16px; border-radius:12px; text-decoration:none; white-space:nowrap; font-size:14px; box-shadow:var(--shadow); }
@media (max-width:1320px) { .start-site .sf-calc__bg{ margin-inline:30px; } }
@media (max-width:1180px) {
  .start-site .nav,.start-site .header__btn{ display:none; }
  .start-site .burger{ display:flex; margin-left:auto; }
  .start-site .header__contact{ margin-left:auto; }
  .start-site .header__inner{ gap:20px; }
}
@media (max-width:1024px) {
  .start-site .sv-hero__right{ flex-basis:auto; max-width:680px; }
  .start-site .sf-types__grid{ grid-template-columns:1fr; }
  .start-site .sf-service__img{ flex-basis:auto; width:100%; min-height:0; aspect-ratio:16/9; }
  .start-site .sf-service__content{ padding:0 30px 30px; }
  .start-site .sf-service__grid--3{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .start-site .footer__content{ grid-template-columns:minmax(0,1fr); }
}
@media (max-width:768px) {
  .start-site main{ --section-padding:24px; }
  .start-site .container{ padding-inline:20px; }
  .start-site .sv-hero{ padding-top:90px; }
  .start-site .sv-hero__title{ font-size:clamp(30px,6.7vw,46px); }
  .start-site .sv-hero__top{ gap:20px; margin-bottom:28px; }
  .start-site .sv-hero__subtitle{ font-size:16px; }
  .start-site .sv-hero__buttons{ flex-direction:column; align-items:stretch; }
  .start-site .sf-service__inner{ gap:24px; }
  .start-site .sf-service__content{ padding:0 24px 24px; }
  .start-site .sf-service__grid--2,.start-site .sf-service__grid--3{ grid-template-columns:minmax(0,1fr); }
  .start-site .sf-service__film-card{ align-items:flex-start; padding:16px; gap:12px; }
  .start-site .sf-why__grid{ grid-template-columns:minmax(0,1fr); grid-template-rows:none; grid-auto-rows:minmax(160px,auto); }
  .start-site .sf-why__card--tall{ min-height:300px; }
  .start-site .sf-calc__bg{ margin-inline:20px; padding:24px; }
  .start-site .sf-calc__card{ padding:24px; }
  .start-site .sf-calc__sizes{ flex-direction:column; }
  .start-site .sf-calc__upload{ padding:16px; }
  .start-site .sf-calc__upload svg{ flex-shrink:0; }
  .start-site .sf-calc__submit{ width:100%; white-space:normal; padding-inline:12px; }
  .start-site .sf-quality__label{ font-size:11px; padding:5px 8px; top:10px; }
  .start-site .sf-quality__label--left{ left:10px; }
  .start-site .sf-quality__label--right{ right:10px; }
  .start-site .cta__form-wrap{ padding:28px 24px; }
  .start-site .faq__answer,.start-site .faq__item--active .faq__answer{ padding-inline:20px; }
  .start-site .footer__phone,.start-site .footer__email{ font-size:clamp(18px,5vw,24px); }
  .start-site .footer__services-list a{ align-items:flex-start; }
  .start-site .footer__services-list svg{ flex-shrink:0; margin-top:5px; }
}
@media (max-width:400px) {
  .start-site .container{ padding-inline:16px; }
  .start-site .sv-hero__title{ font-size:30px; }
  .start-site .sf-calc__bg{ margin-inline:16px; padding:16px; }
  .start-site .sf-calc__card{ padding:20px 16px; }
}
@media (prefers-reduced-motion:reduce) {
  html{ scroll-behavior:auto; }
  .start-site *,.start-site *::before,.start-site *::after{ animation:none !important; transition:none !important; }
}

/* Shared first-screen alignment for the three reviewed service pages. */
.start-site .sv-hero__top{
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr);
  column-gap: 48px;
  row-gap: 28px;
  align-items: start;
}
.start-site .sv-hero__right,.start-site .sv-hero__buttons{
  display: contents;
}
.start-site .sv-hero__title{
  grid-column: 1;
  grid-row: 1;
  margin: 0;
  min-width: 0;
}
.start-site .sv-hero__subtitle{
  grid-column: 2;
  grid-row: 1;
  margin: 0;
  min-width: 0;
  text-align: left;
}
.start-site .sv-hero__buttons .btn{
  grid-row: 2;
  justify-self: start;
  align-self: start;
  width: auto;
  max-width: 100%;
  min-width: 0;
  min-height: 56px;
  white-space: normal;
}
.start-site .sv-hero__buttons .btn--red{ grid-column: 1; }
.start-site .sv-hero__buttons .btn--outline{ grid-column: 2; }
@media (max-width: 1024px) {
  .start-site .sv-hero__top{
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 24px;
  }
  .start-site .sv-hero__title{ order: 1; }
  .start-site .sv-hero__subtitle{ order: 2; }
  .start-site .sv-hero__buttons .btn--red{ order: 3; }
  .start-site .sv-hero__buttons .btn--outline{ order: 4; }
  .start-site .sv-hero__buttons .btn{
    width: 100%;
    align-self: stretch;
  }
}

.start-site .sv-hero__title{font-size:clamp(30px,4.5vw,58px);line-height:1.08;text-align:left;}
.start-site .sv-calc-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);}
.start-site .sv-calc-wrapper,.start-site .sv-calc-body,.start-site .sv-calc-params,.start-site .sv-calc-visual,.start-site .sv-flags__section-body,.start-site .sv-portfolio__slider-wrapper,.start-site .sv-portfolio__slider{min-width:0;}
.start-site .sv-calc-tabs,.start-site .sv-calc-subtabs{flex-wrap:wrap;}
.start-site .sv-calc-tab{white-space:normal;}
.start-site .sv-calc button,.start-site .sv-calc input,.start-site .sv-calc textarea{font-family:inherit;}
.start-site .sv-calc-radio input{display:block;position:absolute;opacity:0;width:1px;height:1px;}
.start-site .sv-calc-radio:has(input:focus-visible){outline:3px solid #276ac2;outline-offset:3px;}
.start-site .sv-calc-orderform__row > *{min-width:0;}
.start-site .sv-calc-orderform__row .btn{white-space:normal;}
.start-site .souvenir-consent{display:flex;gap:10px;margin-top:20px;font-size:14px;line-height:1.5;align-items:flex-start;}
.start-site .souvenir-consent input{flex-shrink:0;margin-top:4px;accent-color:var(--red);}
.start-site .sv-flags__section{grid-template-columns:minmax(0, .9fr) minmax(0,1.4fr);}
.start-site .sv-portfolio__slider{scroll-snap-type:x proximity;}
.start-site .sv-portfolio__card{scroll-snap-align:start;}
.start-site .sv-calc-input{max-width:100%;}
.start-site .sv-calc-total{flex-wrap:wrap;}
@media(max-width:1024px){.start-site .sv-calc-layout,.start-site .sv-flags__section{grid-template-columns:minmax(0,1fr);}}
@media(max-width:600px){.start-site .sv-calc-orderform__row{display:flex;flex-direction:column;}.start-site .sv-calc-orderform__row>*{width:100%;}.start-site .sv-calc-params{padding:20px 16px;}.start-site .sv-flags__table-cell{padding:10px 4px;font-size:12px;overflow-wrap:anywhere;}.start-site .sv-flags__table-header .sv-flags__table-cell{font-size:11px;}.start-site .sv-calc-tab{flex:1 1 140px;}.start-site .sv-hero__top{margin-bottom:28px;}}
