/* PHP port of main_pages/components/home/guarantees.tsx. All selectors are
 * scoped so the archived SEO stylesheet cannot reshape the document scene. */
.kg-guarantees-documents {
    --kg-guarantees-accent: #c1492e;
    --kg-guarantees-accent-rgb: 193, 73, 46;
    --kg-guarantees-muted: #71779b;
    position: relative;
    overflow: hidden;
    padding: clamp(72px, 7vw, 108px) 0 clamp(82px, 8vw, 124px);
    scroll-margin-top: 110px;
    color: #3b4173;
    background: radial-gradient(circle at 72% 36%, rgb(255 255 255 / .82), transparent 30rem),
        radial-gradient(circle at 16% 72%, rgb(var(--kg-guarantees-accent-rgb) / .035), transparent 27rem),
        #f4f5f8;
}

.kg-guarantees-documents::before {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(rgb(39 55 120 / .065) .55px, transparent .55px);
    background-size: 6px 6px;
    content: "";
    opacity: .12;
    pointer-events: none;
}

.kg-guarantees-documents .kg-guarantees-documents__layout {
    position: relative;
    z-index: 1;
    display: grid;
    width: min(100% - 48px, 1276px);
    min-height: clamp(570px, 47vw, 690px);
    grid-template-columns: minmax(290px, .64fr) minmax(620px, 1.36fr);
    gap: clamp(22px, 3vw, 52px);
    align-items: start;
    margin-inline: auto;
}

.kg-guarantees-documents__intro {
    position: relative;
    z-index: 7;
    padding-top: clamp(30px, 4.4vw, 70px);
}

.kg-guarantees-documents__intro h2 {
    max-width: 10.5ch;
    margin: clamp(25px, 3vw, 42px) 0 0;
    color: #3b4173;
    font: 650 clamp(3.25rem, 3.6vw, 4rem)/.96 Roboto, Arial, sans-serif;
    letter-spacing: -.065em;
    text-wrap: balance;
}

.kg-guarantees-documents__intro > p {
    max-width: 16ch;
    margin: clamp(28px, 3.5vw, 48px) 0 0;
    color: var(--kg-guarantees-muted);
    font-size: clamp(1.35rem, 2vw, 2rem);
    font-weight: 500;
    line-height: 1.18;
    letter-spacing: -.035em;
    text-wrap: balance;
}

.kg-guarantees-documents__scene {
    position: relative;
    min-width: 0;
    min-height: clamp(570px, 47vw, 690px);
}

.kg-guarantees-documents__guides {
    position: absolute;
    z-index: 6;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
    fill: none;
    stroke: rgb(var(--kg-guarantees-accent-rgb) / .82);
    stroke-width: 1.25;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}

.kg-guarantees-documents__guides circle {
    fill: var(--kg-guarantees-accent);
    stroke: none;
}

.kg-guarantees-documents__guides g,
.kg-guarantees-documents__callout {
    transition: opacity .35s ease, color .3s ease, transform .4s ease;
}

.kg-guarantees-documents__callout {
    position: absolute;
    z-index: 8;
    color: var(--kg-guarantees-muted);
    font-size: clamp(.76rem, .9vw, .94rem);
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;
}

.kg-guarantees-documents__callout--agreement { top: calc(6.44% - 1.35rem); left: 1%; }
.kg-guarantees-documents__callout--nda { top: calc(55.93% - 1.35rem); left: -4%; }
.kg-guarantees-documents__callout--rights { top: calc(85.76% - 1.35rem); left: 1%; }

.kg-guarantees-documents__stack {
    position: absolute;
    inset: 0;
    isolation: isolate;
}

.kg-guarantees-documents__paper {
    --document-rotate-x: 0deg;
    --document-rotate-y: 0deg;
    --document-rotate-z: 0deg;
    --document-scale: 1;
    --document-focus-x: 0px;
    position: absolute;
    display: flex;
    width: clamp(270px, 24vw, 354px);
    min-height: clamp(440px, 37vw, 540px);
    flex-direction: column;
    padding: clamp(24px, 2.2vw, 34px) clamp(22px, 2.3vw, 36px);
    border: 1px solid rgb(71 61 48 / .13);
    border-right-color: rgb(71 61 48 / .2);
    border-bottom-color: rgb(71 61 48 / .24);
    outline: 2px solid transparent;
    outline-offset: 6px;
    color: #243249;
    background: radial-gradient(circle at 18% 16%, rgb(96 67 38 / .028) 0 .65px, transparent .8px),
        radial-gradient(circle at 74% 62%, rgb(96 67 38 / .018) 0 .6px, transparent .75px),
        linear-gradient(96deg, rgb(255 255 255 / .28), transparent 22% 70%, rgb(85 60 36 / .055)),
        linear-gradient(180deg, transparent 76%, rgb(85 60 36 / .035)),
        linear-gradient(104deg, rgb(117 87 54 / .018), transparent 26%, rgb(255 255 255 / .28) 54%, rgb(96 70 42 / .025)),
        repeating-linear-gradient(0deg, transparent 0 5px, rgb(48 58 77 / .018) 5px 6px),
        #fbf8f1;
    background-size: 9px 11px, 13px 15px, auto, auto, auto, auto, auto;
    box-shadow: 0 38px 58px rgb(55 42 28 / .2), 14px 15px 22px rgb(55 42 28 / .1),
        0 2px 1px rgb(71 61 48 / .12), inset -3px -2px 0 rgb(85 60 36 / .045),
        inset 0 0 48px rgb(93 70 45 / .04), inset 0 1px rgb(255 255 255 / .85);
    font-family: Georgia, "Times New Roman", serif;
    transform: perspective(850px) rotateX(var(--document-rotate-x)) rotateY(var(--document-rotate-y)) rotateZ(var(--document-rotate-z)) scale(var(--document-scale));
    transform-origin: 50% 82%;
    transition: border-color .3s ease, box-shadow .45s ease, filter .35s ease,
        opacity .35s ease, outline-color .3s ease, transform .5s ease;
}

.kg-guarantees-documents__paper:focus-visible { outline-color: rgb(var(--kg-guarantees-accent-rgb) / .72); }
.kg-guarantees-documents__paper--agreement { --document-rotate-x: 3.8deg; --document-rotate-y: -13deg; --document-rotate-z: -4.8deg; --document-scale: 1.025; --document-focus-x: 14px; z-index: 4; top: 11%; left: 17%; }
.kg-guarantees-documents__paper--nda { --document-rotate-x: -2.2deg; --document-rotate-y: 4deg; --document-rotate-z: .9deg; z-index: 3; top: 16%; left: 45%; }
.kg-guarantees-documents__paper--rights { --document-rotate-x: 4deg; --document-rotate-y: 12deg; --document-rotate-z: 5.8deg; --document-scale: .985; --document-focus-x: -44px; z-index: 2; top: 5%; left: 70%; }

.kg-guarantees-documents__meta {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    color: rgb(36 50 73 / .75);
    font-size: clamp(.55rem, .64vw, .68rem);
    letter-spacing: .025em;
}

.kg-guarantees-documents__paper h3 {
    position: relative;
    z-index: 1;
    margin: clamp(45px, 4vw, 66px) 0 8px;
    font: 700 clamp(1.45rem, 2vw, 2rem)/1.04 Georgia, "Times New Roman", serif;
    letter-spacing: -.025em;
    text-align: center;
}

.kg-guarantees-documents__subtitle {
    position: relative;
    z-index: 1;
    max-width: 23ch;
    margin: 0 auto;
    font-size: clamp(.64rem, .7vw, .76rem);
    line-height: 1.35;
    letter-spacing: .08em;
    text-align: center;
    text-transform: uppercase;
}

.kg-guarantees-documents__body {
    position: relative;
    z-index: 1;
    max-width: 29ch;
    margin: clamp(42px, 4vw, 60px) 0 0;
    font-size: clamp(.7rem, .76vw, .82rem);
    line-height: 1.55;
    transition: color .3s ease;
}

.kg-guarantees-documents__signatures {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: max-content minmax(50px, 1fr);
    gap: 9px 10px;
    align-items: end;
    margin-top: auto;
    padding-right: clamp(88px, 7.6vw, 112px);
    color: rgb(36 50 73 / .7);
    font-size: clamp(.55rem, .62vw, .66rem);
}

.kg-guarantees-documents__signatures i { border-bottom: 1px solid rgb(36 50 73 / .34); }

.kg-guarantees-documents__seal {
    position: absolute;
    z-index: 2;
    right: clamp(18px, 2vw, 30px);
    bottom: clamp(20px, 2.3vw, 35px);
    display: grid;
    width: clamp(76px, 7vw, 98px);
    aspect-ratio: 1;
    place-items: center;
    padding: 8px 4px;
    border: 2px solid rgb(var(--kg-guarantees-accent-rgb) / .78);
    border-radius: 50%;
    color: rgb(var(--kg-guarantees-accent-rgb) / .82);
    rotate: -7deg;
    font: 800 clamp(.42rem, .48vw, .54rem)/1 Roboto, Arial, sans-serif;
    letter-spacing: .12em;
    text-align: center;
    transition: border-color .3s ease, color .3s ease, rotate .4s ease, scale .4s ease;
}

.kg-guarantees-documents__seal::before {
    position: absolute;
    inset: 5px;
    border: 1px solid currentColor;
    border-radius: inherit;
    content: "";
}

.kg-guarantees-documents__seal svg {
    width: 30%;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2.2;
}

@media (hover: hover) and (pointer: fine) and (min-width: 701px) {
    .kg-guarantees-documents__paper { cursor: zoom-in; }
    .kg-guarantees-documents__stack:has(.kg-guarantees-documents__paper:is(:hover, :focus-visible)) .kg-guarantees-documents__paper:not(:is(:hover, :focus-visible)) { opacity: .34; filter: saturate(.65) contrast(.94) blur(.35px); }
    .kg-guarantees-documents__paper:is(:hover, :focus-visible) { z-index: 9; border-color: rgb(var(--kg-guarantees-accent-rgb) / .52); color: #17243a; box-shadow: 0 46px 78px rgb(70 45 30 / .25), 0 14px 28px rgb(var(--kg-guarantees-accent-rgb) / .13); cursor: default; transform: perspective(850px) rotateX(0) rotateY(0) rotateZ(0) translate(var(--document-focus-x), -16px) scale(1.075); }
    .kg-guarantees-documents__paper:is(:hover, :focus-visible) .kg-guarantees-documents__body { color: #1b293f; }
    .kg-guarantees-documents__paper:is(:hover, :focus-visible) .kg-guarantees-documents__seal { border-color: rgb(var(--kg-guarantees-accent-rgb) / .96); color: rgb(var(--kg-guarantees-accent-rgb)); rotate: -3deg; scale: 1.07; }
    .kg-guarantees-documents__scene:has(.kg-guarantees-documents__paper:is(:hover, :focus-visible)) .kg-guarantees-documents__callout,
    .kg-guarantees-documents__scene:has(.kg-guarantees-documents__paper:is(:hover, :focus-visible)) .kg-guarantees-documents__guides g { opacity: .2; }
    .kg-guarantees-documents__scene:has(.kg-guarantees-documents__paper--agreement:is(:hover, :focus-visible)) .kg-guarantees-documents__callout--agreement,
    .kg-guarantees-documents__scene:has(.kg-guarantees-documents__paper--nda:is(:hover, :focus-visible)) .kg-guarantees-documents__callout--nda,
    .kg-guarantees-documents__scene:has(.kg-guarantees-documents__paper--rights:is(:hover, :focus-visible)) .kg-guarantees-documents__callout--rights { color: var(--kg-guarantees-accent); opacity: 1; transform: translateY(-3px); }
    .kg-guarantees-documents__scene:has(.kg-guarantees-documents__paper--agreement:is(:hover, :focus-visible)) .kg-guarantees-documents__guide--agreement,
    .kg-guarantees-documents__scene:has(.kg-guarantees-documents__paper--nda:is(:hover, :focus-visible)) .kg-guarantees-documents__guide--nda,
    .kg-guarantees-documents__scene:has(.kg-guarantees-documents__paper--rights:is(:hover, :focus-visible)) .kg-guarantees-documents__guide--rights { opacity: 1; stroke: var(--kg-guarantees-accent); }
}

@media (max-width: 1400px) {
    .kg-guarantees-documents__paper--agreement { left: 12%; }
    .kg-guarantees-documents__paper--nda { left: 40%; }
    .kg-guarantees-documents__paper--rights { left: 60%; }
}

@media (max-width: 1180px) {
    .kg-guarantees-documents .kg-guarantees-documents__layout { grid-template-columns: minmax(260px, .72fr) minmax(520px, 1.28fr); }
}

@media (max-width: 900px) {
    .kg-guarantees-documents .kg-guarantees-documents__layout { display: block; min-height: 0; }
    .kg-guarantees-documents__intro { padding-top: 0; }
    .kg-guarantees-documents__intro h2 { max-width: 12ch; }
    .kg-guarantees-documents__intro > p { max-width: 22ch; }
    .kg-guarantees-documents__scene { min-height: 590px; margin-top: 48px; }
    .kg-guarantees-documents__paper--agreement { left: 5%; }
    .kg-guarantees-documents__paper--nda { left: 35%; }
    .kg-guarantees-documents__paper--rights { left: 64%; }
}

@media (max-width: 700px) {
    .kg-guarantees-documents { padding: 74px 0 90px; }
    .kg-guarantees-documents .kg-guarantees-documents__layout { width: min(100% - 32px, 1276px); }
    .kg-guarantees-documents__intro h2 { max-width: 11ch; margin-top: 22px; font-size: clamp(2.75rem, 13vw, 4.5rem); }
    .kg-guarantees-documents__intro > p { max-width: 18ch; margin-top: 26px; font-size: 1.35rem; }
    .kg-guarantees-documents__scene { width: 100vw; min-height: 0; margin: 44px 0 0 calc(50% - 50vw); overflow-x: auto; padding: 10px 20px 42px; scroll-padding-inline: 20px; scroll-snap-type: x mandatory; scrollbar-width: none; }
    .kg-guarantees-documents__scene::-webkit-scrollbar { display: none; }
    .kg-guarantees-documents__guides, .kg-guarantees-documents__callout { display: none; }
    .kg-guarantees-documents__stack { position: static; display: flex; width: max-content; gap: 16px; }
    .kg-guarantees-documents__paper, .kg-guarantees-documents__paper--agreement, .kg-guarantees-documents__paper--nda, .kg-guarantees-documents__paper--rights { position: relative; top: auto; left: auto; width: min(80vw, 330px); min-height: 470px; flex: 0 0 auto; transform: none; scroll-snap-align: center; }
    .kg-guarantees-documents__paper h3 { margin-top: 54px; }
    .kg-guarantees-documents__body { margin-top: 42px; }
}

@media (prefers-reduced-motion: reduce) {
    .kg-guarantees-documents__paper, .kg-guarantees-documents__guides g, .kg-guarantees-documents__callout, .kg-guarantees-documents__seal { transition: none; }
}
