/* Pakiet informacyjny: okładka i istniejący formularz zgłoszeń. */
.packet-page { background: #fcfcfd; }
.packet-header, .packet-footer { max-width: 1280px; margin: auto; padding-inline: 40px; display: flex; justify-content: space-between; align-items: center; gap: 24px; }
.packet-header { min-height: 100px; }
.packet-header .brand { position: relative; display: block; }
.packet-tagline { position: absolute; left: 42%; bottom: -1px; font-size: 10px; letter-spacing: .01em; color: #68727f; white-space: nowrap; }
.packet-back { display: inline-flex; align-items: center; gap: 12px; font-size: 13px; }
.packet-back:hover { text-decoration: underline; text-underline-offset: 4px; }
.packet-layout { max-width: 1280px; margin: 0 auto; padding: 28px 40px 56px; display: grid; grid-template-columns: 1.08fr 1fr; align-items: center; gap: 80px; }
.packet-visual { min-width: 0; }
/* Przycinamy wyłącznie wychodzące poza kompozycję dekoracje. */
.packet-layout { overflow: clip; }
.packet-stage::before { mask-image: radial-gradient(ellipse, #000 35%, transparent 72%); }
.packet-stage { position: relative; isolation: isolate; display: grid; place-items: center; padding: 40px 38px 48px; }
.packet-stage::before { content: ""; position: absolute; z-index: -2; inset: -10% -12%; pointer-events: none; background: radial-gradient(ellipse at 35% 30%, #e7edfbc9, transparent 58%), radial-gradient(ellipse at 75% 66%, #eeddf0a8, transparent 55%), radial-gradient(ellipse at 24% 83%, #f7ecdfab, transparent 55%); }
.packet-orbit { position: absolute; z-index: -1; width: 108%; height: 58%; border: 1px solid #c5cee15e; border-radius: 50%; transform: rotate(-36deg); pointer-events: none; }
.packet-orbit--two { width: 100%; height: 76%; transform: rotate(30deg); border-style: dashed; border-color: #c5cee14d; }
.packet-book { position: relative; width: 100%; max-width: 355px; transform: perspective(1200px) rotateY(-9deg) rotateZ(-6deg); }
.packet-book::before, .packet-book::after { content: ""; position: absolute; inset: 3px -8px -5px 10px; z-index: -1; border: 1px solid #d5d9e2; border-radius: 2px 7px 7px 2px; background: repeating-linear-gradient(to right, #fff 0 2px, #e5e7ee 2px 3px); }
.packet-book::before { inset: 8px -15px -10px 18px; background: #edf0f6; }
.packet-cover { position: relative; aspect-ratio: 355 / 498; display: flex; flex-direction: column; overflow: hidden; border: 1px solid #d7dce5; border-radius: 2px 5px 5px 2px; background: linear-gradient(110deg, #e8ebf2 0, #fafbfe 2%, #fff 5%, #fdfdff 60%, #f1eff9 100%); box-shadow: -2px 3px 5px #444c6112, 12px 24px 35px #45537220, 24px 44px 60px #68709114; }
.packet-cover::after { content: ""; position: absolute; inset: 0 auto 0 9px; width: 1px; background: #bfc9d330; pointer-events: none; }
.packet-cover-top { padding: 26px 28px 0; }
.packet-cover-top .brand-logo { width: 166px; }
.packet-cover-edition { display: block; margin: 23px 0 12px; font: 8px var(--mono); letter-spacing: .13em; color: #69778b; }
.packet-cover-title { padding: 0 28px; font-size: 28px; letter-spacing: -1px; line-height: 1.16; }
.packet-cover-title>span { display: block; margin-top: 12px; font-size: 11px; letter-spacing: .02em; color: #69778b; }
.packet-cover-art { width: 112%; max-width: none; height: auto; margin: -7px -6% -28px; flex: 1; min-height: 0; object-fit: contain; }
.packet-cover-bottom { position: relative; display: flex; justify-content: space-between; align-items: end; gap: 16px; margin: auto 28px 23px; padding-top: 13px; border-top: 1px solid #dbe0eb; color: #627085; font-size: 10px; line-height: 1.5; }
.packet-cover-mark { font-size: 26px; line-height: 1; color: #df2547; }

.packet-contents { text-align: center; padding: 8px 0 0; }
.packet-contents p { font-size: 14px; margin-bottom: 10px; }
.packet-contents ul { padding: 0; margin: 0; list-style: none; display: flex; justify-content: center; flex-wrap: wrap; gap: 6px 18px; }
.packet-contents li { font-size: 11px; color: #637086; }
.packet-contents li::before { content: "✓"; color: #718370; margin-right: 6px; }
.packet-request { min-width: 0; max-width: 480px; padding-top: 8px; }


.packet-page h1 { font-size: clamp(34px, 3.3vw, 46px); letter-spacing: -1.7px; line-height: 1.14; margin: 0 0 20px; }
.packet-page h1 span { color: #798496; }
.packet-intro { font-size: 15px; line-height: 1.75; color: #626e80; max-width: 435px; margin: 0 0 30px; }
.packet-form-heading { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 19px; padding-top: 23px; border-top: 1px solid #e1e5ec; }
.packet-form-heading h2 { font-size: 16px; letter-spacing: -.3px; font-weight: 500; margin: 0; }
.packet-form-heading>span { font-size: 11px; color: #657467; }
.packet-request .materials-form { max-width: none; width: 100%; border: 0; border-radius: 0; background: transparent; padding: 0; margin: 0; }
.packet-request .materials-form fieldset, .packet-request .materials-field { margin-bottom: 19px; }
.packet-request .materials-form legend, .packet-request .materials-field>label { font-size: 13px; margin-bottom: 8px; }
.packet-request .radio { background: #fff; min-height: 46px; padding: 10px 13px; }
.packet-request .radio:has(input:checked) { border-color: #8c9bb2; background: #edf1f8; }
.packet-request .materials-field>input { min-height: 48px; padding: 11px 14px; }
.packet-request .materials-form button { min-height: 52px; margin-top: 3px; padding: 14px 16px; font: 500 14px var(--font); cursor: pointer; }
.packet-request .materials-note { margin-top: 14px; font-size: 11px; line-height: 1.75; }
.packet-footer { border-top: 1px solid #e5e8ee; padding-block: 23px; color: #657185; font-size: 11px; }
.packet-footer nav { display: flex; gap: 24px; }
.packet-footer a:hover { text-decoration: underline; text-underline-offset: 4px; }
@media (min-width: 1440px) { .packet-layout { min-height: calc(100svh - 165px); padding-bottom: 65px; } }
@media (max-width: 1100px) { .packet-layout { gap: 44px; padding-inline: 32px; }.packet-stage { padding-inline: 24px; }.packet-cover-title { font-size: 25px; }.packet-cover-top { padding-top: 21px; } }
@media (max-width: 800px) { .packet-header { min-height: 84px; }.packet-header, .packet-footer { padding-inline: 24px; }.packet-layout { grid-template-columns: 1fr; max-width: 560px; gap: 35px; padding: 5px 24px 42px; }.packet-stage { max-width: 390px; margin: auto; padding: 28px 44px 32px; }.packet-cover-top { padding-top: 20px; }.packet-cover-top .brand-logo { width: 145px; }.packet-cover-edition { margin-top: 16px; }.packet-cover-title { font-size: 24px; }.packet-cover-bottom { margin-bottom: 17px; }.packet-contents { padding-top: 14px; }.packet-request { max-width: none; }.packet-page h1 { font-size: 38px; }.packet-request .radios { grid-template-columns: 1fr 1fr; }.packet-tagline { font-size: 8px; }.packet-footer { flex-wrap: wrap; gap: 12px; } }
@media (max-width: 390px) { .packet-layout { padding-inline: 20px; }.packet-stage { padding-inline: 30px; }.packet-cover-title { font-size: 23px; }.packet-cover-top, .packet-cover-title { padding-inline: 23px; }.packet-cover-bottom { margin-inline: 23px; }.packet-header { padding-inline: 20px; }.packet-back { font-size: 12px; gap: 6px; }.packet-page h1 { font-size: 33px; }.packet-request .radios { grid-template-columns: 1fr; }.packet-contents ul { gap: 3px 12px; }.packet-contents p { font-size: 13px; } }
@media (max-width: 800px) {
  .packet-stage { max-width: 325px; padding: 23px 40px 30px; }
  .packet-cover-top .brand-logo { width: 125px; }
  .packet-cover-top { padding-top: 17px; }
  .packet-cover-edition { font-size: 7px; margin-top: 12px; }
  .packet-cover-title { font-size: 21px; }
  .packet-cover-title>span { font-size: 9px; margin-top: 9px; }
  .packet-cover-bottom { font-size: 8px; padding-top: 8px; margin-bottom: 14px; }
  
}
