.opeka-page { background: #fff9ef; color: #34261d; }
.opeka-page .opeka-hero, .opeka-page .opeka-section { padding: clamp(48px, 7vw, 96px) 0; }
.opeka-page .opeka-hero { background: #fff1cf; }
.opeka-page .opeka-hero__grid, .opeka-page .opeka-form-card { display: grid; grid-template-columns: 1.4fr .8fr; gap: 32px; align-items: start; }
.opeka-page .opeka-eyebrow { margin: 0; color: #a95b20; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.opeka-page h1 { margin: .25em 0; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(2.35rem, 5vw, 4.6rem); font-weight: 500; line-height: 1; }
.opeka-page h2 { margin: 0 0 .4em; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.8rem, 3.4vw, 3rem); font-weight: 500; }
.opeka-page .opeka-lead, .opeka-page .opeka-section__lead { max-width: 730px; font-size: 1.2rem; line-height: 1.55; }
.opeka-page .opeka-hero__note, .opeka-page .opeka-form-card, .opeka-page .opeka-steps article, .opeka-page .opeka-cat { border-radius: 20px; background: #fff; box-shadow: 0 8px 24px rgba(110, 69, 32, .08); }
.opeka-page .opeka-hero__note { padding: 28px; font-size: 1.15rem; line-height: 1.55; }
.opeka-page .opeka-hero .button { margin-top: 10px; min-height: 54px; background: #56713f; box-shadow: 0 8px 18px rgba(86, 113, 63, .24); }
.opeka-page .opeka-hero .button:hover { background: #667f4f; }
.opeka-page .opeka-steps, .opeka-page .opeka-cats__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.opeka-page .opeka-steps article { padding: 24px; }
.opeka-page .opeka-steps b { color: #a95b20; font-size: 1.5rem; }
.opeka-page .opeka-steps h3 { margin: 10px 0; font-family: Georgia, 'Times New Roman', serif; font-size: 1.45rem; }
.opeka-page .opeka-steps p, .opeka-page .opeka-cat p { color: #665345; line-height: 1.55; }
.opeka-page .opeka-cats { background: #fff3da; }
.opeka-page .opeka-cat { overflow: hidden; }
.opeka-page .opeka-cat img { display: block; width: 100%; aspect-ratio: 1.25; object-fit: cover; }
.opeka-page .opeka-cat > div { padding: 18px; }
.opeka-page .opeka-cat h3 { margin: 0; font-family: Georgia, 'Times New Roman', serif; font-size: 1.7rem; font-weight: 500; }
.opeka-page .opeka-cat__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.opeka-page .opeka-cat__actions > a:not(.button), .opeka-page .opeka-back, .opeka-page .opeka-cat-detail__profile > a { color: #8e4617; font-weight: 700; text-underline-offset: 4px; }
.opeka-page .opeka-cat__actions .button { min-height: 46px; background: #b16b2c; }
.opeka-page .opeka-all-cats { margin-top: 26px; }
.opeka-page .opeka-empty { padding: 24px; border-radius: 18px; background: #fff; }
.opeka-page.opeka-cat-page { background: linear-gradient(180deg, #fffaf1 0%, #f7eddd 100%); }
.opeka-page .opeka-back { display: inline-flex; margin: 4px 0 24px; }
.opeka-page .opeka-cat-detail { display: grid; grid-template-columns: minmax(300px, .92fr) minmax(0, 1.08fr); gap: clamp(26px, 5vw, 60px); align-items: start; }
.opeka-page .opeka-cat-detail__profile { position: sticky; top: 96px; }
.opeka-page .opeka-cat-detail__profile img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 24px; box-shadow: 0 18px 42px rgba(66, 42, 22, .16); }
.opeka-page .opeka-cat-detail__profile h1 { margin: 22px 0 8px; font-size: clamp(2rem, 3vw, 3rem); }
.opeka-page .opeka-cat-detail__profile p { color: #665345; line-height: 1.58; }
.opeka-page .opeka-form-card { display: block; padding: clamp(24px, 4vw, 42px); border-radius: 24px; box-shadow: 0 20px 48px rgba(66, 42, 22, .1); }
.opeka-page .opeka-form { display: grid; gap: 18px; margin-top: 28px; padding-top: 26px; border-top: 1px solid #eadcca; }
.opeka-page .opeka-form label { display: grid; gap: 6px; font-weight: 600; }
.opeka-page .opeka-form input:not([type=checkbox]) { min-height: 50px; padding: 11px; border: 1px solid #d8c5ad; border-radius: 8px; background: #fffdf9; }
.opeka-page .opeka-form [disabled] { cursor: not-allowed; }
.opeka-page .opeka-soon { margin: 0; padding: 16px 18px; border-radius: 14px; background: #fff4d9; color: #63421f; font-weight: 600; }
.opeka-page .opeka-recurring { display: flex !important; align-items: center; gap: 10px; padding: 17px 18px; border-radius: 16px; background: #fff2d1; }
.opeka-page .opeka-recurring input { width: 20px; height: 20px; accent-color: #b55c20; opacity: 1; }
.opeka-page .opeka-recurring__hint, .opeka-page .opeka-consent { margin: 0; color: #665345; line-height: 1.55; }
.opeka-page .opeka-consent { display: flex; gap: 8px; font-size: .88rem; }
.opeka-page .opeka-form button[disabled] { min-height: 52px; border: 1px solid #d4c9bf; border-radius: 14px; background: #e8e2dc; color: #4f433a; opacity: 1; cursor: not-allowed; box-shadow: none; }
.opeka-page .opeka-form small { color: #756353; text-align: center; }
@media (max-width: 800px) { .opeka-page .opeka-hero__grid, .opeka-page .opeka-steps, .opeka-page .opeka-cats__grid, .opeka-page .opeka-cat-detail { grid-template-columns: 1fr; } .opeka-page .opeka-cat-detail__profile { position: static; } }
@media (max-width: 640px) { .opeka-page .opeka-hero, .opeka-page .opeka-section { padding: 44px 0; } .opeka-page .opeka-hero .button { width: 100%; } .opeka-page .opeka-cat-detail__profile img { aspect-ratio: 16/10; } .opeka-page .opeka-form-card { padding: 22px; } }
