@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/admin-assets/fonts/inter-latin-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/admin-assets/fonts/inter-latin-ext-wght-normal.woff2') format('woff2-variations');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root { --font:'Inter',system-ui,sans-serif; --accent:#4f46e5; --bg:#fafafd; --surface:#fff; --soft:#f0f0f6; --text:#20202b; --muted:#646475; --border:#dedee7; --success:#276345; --success-bg:#eaf3ed; --warning:#8a5a12; --warning-bg:#fbf0dc; }
:root[data-theme=dark] { --bg:#101014; --surface:#19191f; --soft:#24242e; --text:#f5f5fa; --muted:#b0b0bf; --border:#35353f; --success:#a0d8b1; --success-bg:#25382c; --warning:#e5c78d; --warning-bg:#3a3222; }
@media(prefers-color-scheme:dark) { :root:not([data-theme=light]) { --bg:#101014; --surface:#19191f; --soft:#24242e; --text:#f5f5fa; --muted:#b0b0bf; --border:#35353f; --success:#a0d8b1; --success-bg:#25382c; --warning:#e5c78d; --warning-bg:#3a3222; } }
* { box-sizing:border-box; } html { scroll-behavior:smooth; scroll-padding-top:96px; } body { margin:0; background:var(--bg); color:var(--text); font:15px/1.65 var(--font); -webkit-font-smoothing:antialiased; } a { color:inherit; text-decoration:none; } button { font:inherit; } h1,h2,h3,p { margin-top:0; } .icon { width:20px; height:20px; flex:none; } .wrap { width:min(1200px,calc(100% - 80px)); margin:auto; } :focus-visible { outline:2px solid var(--accent); outline-offset:5px; } .skip-link { position:fixed; top:-100px; left:16px; background:var(--surface); padding:12px; z-index:100; } .skip-link:focus { top:12px; }
.lnav { border-bottom:1px solid var(--border); background:var(--bg); } .lnav .wrap { min-height:92px; display:flex; align-items:center; gap:28px; } .lbrand { margin-right:auto; display:flex; } .lnav__links { display:flex; gap:28px; font-size:0.8125rem; color:var(--muted); } .lnav a:hover { color:var(--accent); } .login-link { font-weight:600; font-size:0.8125rem; } .lnav__toggle { display:grid; place-items:center; padding:10px; border:1px solid var(--border); border-radius:8px; background:var(--surface); color:var(--text); cursor:pointer; } .lnav__toggle .icon--moon { display:none; } :root[data-theme=dark] .icon--sun { display:none; } :root[data-theme=dark] .icon--moon { display:block; }
@media(prefers-color-scheme:dark) { :root:not([data-theme=light]) .icon--sun { display:none; } :root:not([data-theme=light]) .icon--moon { display:block; } }
.lbtn { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:48px; padding:12px 20px; border:1px solid transparent; border-radius:8px; font-size:0.875rem; font-weight:600; text-align:center; } .lbtn--primary { background:var(--accent); color:white; } .lbtn--primary:hover { background:#4037c8; } .text-link { border-bottom:1px solid var(--text); font-size:0.875rem; padding:8px 0; }
.hero { padding:64px 0 80px; } .hero__grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; } .eyebrow { color:var(--muted); font-size:0.75rem; font-weight:600; margin-bottom:24px; } .hero h1 { font-size:clamp(2.375rem, 4.2vw, 3.75rem); font-weight:580; line-height:1.08; letter-spacing:-.055em; margin-bottom:28px; } .lead { color:var(--muted); font-size:1.0625rem; max-width:42ch; line-height:1.7; margin-bottom:32px; } .hero__cta { display:flex; align-items:center; flex-wrap:wrap; gap:24px; } .hero__note { font-size:0.75rem; color:var(--muted); margin:18px 0 0; }
.product-preview { border:1px solid var(--border); background:var(--surface); border-radius:12px; overflow:hidden; box-shadow:0 16px 40px -28px #0005; } .product-preview__top { display:flex; justify-content:space-between; padding:14px 24px; border-bottom:1px solid var(--border); font-size:0.6875rem; color:var(--muted); } .product-preview__top span:first-child { color:var(--text); font-weight:650; } .product-preview__heading { padding:24px 24px 12px; display:flex; justify-content:space-between; align-items:center; gap:12px; } .product-preview__heading h2 { font-size:clamp(1.125rem, 1.0976rem + 0.1124vw, 1.1875rem); margin:0; letter-spacing:-.03em; } .product-preview__heading span { font-size:0.6875rem; color:var(--muted); } .preview-visit { display:flex; gap:14px; padding:18px 24px; align-items:center; border-top:1px solid var(--border); } .preview-visit time { font-variant-numeric:tabular-nums; font-size:0.8125rem; font-weight:650; } .preview-visit>div { flex:1; } .preview-visit b { display:block; font-size:0.8125rem; font-weight:600; } .preview-visit div>span { display:block; color:var(--muted); font-size:0.6875rem; } .preview-status { color:var(--success); background:var(--success-bg); padding:3px 7px; border-radius:4px; font-size:0.625rem; white-space:nowrap; } .preview-status--pending { color:var(--warning); background:var(--warning-bg); } .preview-detail { margin:0 24px 20px 74px; padding:18px; border-left:2px solid var(--accent); background:var(--soft); font-size:0.6875rem; } .preview-detail>span:first-child { color:var(--muted); } .preview-detail dl { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:16px 0; } .preview-detail dt { color:var(--muted); } .preview-detail dd { margin:4px 0 0; font-weight:600; } .preview-detail p { color:var(--muted); } .preview-action { display:inline-flex; align-items:center; gap:12px; color:var(--accent); font-weight:650; } .preview-action .icon { width:14px; height:14px; } .product-preview__caption { margin:0; padding:16px 24px; color:var(--muted); font-size:0.625rem; border-top:1px solid var(--border); }
section { padding:88px 0; border-top:1px solid var(--border); } section h2 { font-size:clamp(1.75rem, 3vw, 2.625rem); font-weight:550; letter-spacing:-.04em; line-height:1.15; margin-bottom:20px; } .section-grid { display:grid; grid-template-columns:1fr 1fr; gap:96px; } .section-intro { color:var(--muted); max-width:38ch; } .workflow { background:var(--soft); } .workflow-list { list-style:none; margin:0; padding:0; } .workflow-list li { display:flex; gap:28px; padding:24px 0; border-bottom:1px solid var(--border); } .workflow-list li:first-child { padding-top:0; } .workflow-list li:last-child { border:0; padding-bottom:0; } .workflow-list li>span { font-size:0.75rem; color:var(--muted); font-variant-numeric:tabular-nums; padding-top:3px; } h3 { font-size:1.0625rem; font-weight:600; letter-spacing:-.02em; margin-bottom:8px; } .workflow-list p { color:var(--muted); margin:0; font-size:0.875rem; } .section-heading { margin-bottom:48px; } .feature-list { display:grid; grid-template-columns:1fr 1fr; column-gap:80px; } .feature-list article { padding:28px 0; border-top:1px solid var(--border); } .feature-list p { color:var(--muted); max-width:48ch; font-size:0.875rem; margin:0; } .integration-note { margin:32px 0 0; color:var(--muted); font-size:0.8125rem; }
.pricing { background:var(--soft); } .price-card { padding:32px; border:1px solid var(--border); border-radius:12px; background:var(--surface); } .price-card__heading p { margin:20px 0; } .price-card strong { font-size:clamp(2.4rem, 2.1371rem + 1.0787vw, 3rem); font-weight:600; letter-spacing:-.05em; } .price-card__heading p>span { color:var(--muted); } .price-card ul { padding:24px 0; margin:0 0 24px; list-style:none; border-block:1px solid var(--border); display:grid; gap:12px; font-size:0.8125rem; } .price-card li { display:flex; align-items:center; gap:12px; } .price-card li .icon { width:16px; height:16px; } .price-card .lbtn { width:100%; } .price-note { color:var(--muted); font-size:0.75rem; margin:16px 0 0; } .closing .wrap { display:flex; justify-content:space-between; align-items:center; gap:24px; } .closing h2 { max-width:17ch; margin:0; } .lfoot { border-top:1px solid var(--border); padding:32px 0; } .lfoot .wrap { display:flex; gap:24px; align-items:center; justify-content:space-between; } .lfoot p,.lfoot a:last-child { color:var(--muted); font-size:0.75rem; margin:0; } .lfoot a:last-child { display:flex; align-items:center; gap:12px; }
@media(max-width:1050px) { .hero__grid { gap:32px; } .section-grid { gap:48px; } .preview-status { display:none; } }
@media(max-width:760px) { .wrap { width:calc(100% - 40px); } .lnav .wrap { min-height:76px; gap:16px; } .lnav__links { display:none; } .lbrand .rezzervio-logo { max-width:140px; } .hero { padding:48px 0; } .hero__grid,.section-grid { grid-template-columns:1fr; gap:40px; } .hero h1 { font-size:2.625rem; } .hero h1 br { display:none; } .lead { font-size:1rem; } section { padding:56px 0; } .feature-list { column-gap:32px; } .closing .wrap { align-items:flex-start; flex-direction:column; } .lfoot .wrap { flex-wrap:wrap; } .price-card { padding:24px; } }
@media(max-width:420px) {  .feature-list { grid-template-columns:1fr; } .hero h1 { font-size:2.375rem; } .preview-detail { margin-left:24px; } .preview-visit { padding-inline:18px; gap:12px; } .hero__cta { gap:16px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.hero-art { margin:0; min-width:0; overflow:hidden; border-radius:20px; background:#eeeef2; }
.hero-art img { display:block; width:100%; height:auto; aspect-ratio:1.12; object-fit:cover; }
.hero-art figcaption { padding:18px 24px; font-size:0.75rem; color:#525260; border-top:1px solid #dddde4; background:#f3f3f6; }
.product-section { display:grid; grid-template-columns:1fr 1.2fr; gap:80px; align-items:center; margin-bottom:56px; }
.product-section .section-heading { margin:0; }
.product-section .section-intro { margin-bottom:28px; }
.hero h1 { font-weight:650; }
.lnav__toggle { min-width:40px; min-height:40px; }
@media(max-width:760px) { .product-section { grid-template-columns:1fr; gap:32px; margin-bottom:40px; } .hero-art img { aspect-ratio:1.4; } .hero-art figcaption { padding:16px 20px; } }
@media(max-width:420px) { .lnav .wrap { gap:12px; } .lbrand .rezzervio-logo { max-width:126px; } .login-link { font-size:0.75rem; } }

/* Perspektywa: editorial photography and a precise, restrained product UI. */
:root { --bg:#ffffff; --surface:#fff; --soft:#f3f5f8; --text:#151c29; --muted:#596579; --border:#e1e6ee; }
:root[data-theme=dark] { --bg:#0d1219; --surface:#141c27; --soft:#111923; --text:#f4f7fc; --muted:#a7b3c6; --border:#293547; }
@media(prefers-color-scheme:dark) { :root:not([data-theme=light]) { --bg:#0d1219; --surface:#141c27; --soft:#111923; --text:#f4f7fc; --muted:#a7b3c6; --border:#293547; } }
.theme-photo,.theme-photo img { display:block; width:100%; }
.theme-photo img { object-fit:cover; height:auto; }
.wrap { width:min(1320px,calc(100% - 96px)); }
.lnav .wrap { min-height:88px; }
.hero { padding:48px 0 64px; overflow:hidden; }
.hero__grid { grid-template-columns:.9fr 1.1fr; gap:40px; }
.hero h1 { font-size:clamp(3rem, 5.7vw, 5rem); letter-spacing:-.065em; line-height:1.02; font-weight:720; margin-bottom:28px; }
.lead { font-size:1.0625rem; max-width:36ch; }
.hero__cta { gap:20px; }
.lbtn { border-radius:7px; min-height:48px; }
.hero-scene { position:relative; min-width:0; padding-bottom:24px; }
.hero-photograph { overflow:hidden; clip-path:polygon(6% 0,100% 0,100% 94%,0 100%,0 6%); }
.hero-photograph img { aspect-ratio:1.1; object-position:49% center; }
.hero-agenda { position:absolute; bottom:0; right:-12px; width:236px; padding:8px; background:var(--surface); border:1px solid var(--border); border-radius:10px; box-shadow:0 12px 32px #0002; }
.hero-agenda__head { display:flex; justify-content:space-between; padding:10px 12px 14px; font-size:0.8125rem; }
.hero-agenda__head>span { font-size:0.625rem; color:var(--muted); }
.hero-agenda>div:not(:first-child) { display:flex; gap:16px; padding:12px; border-top:1px solid var(--border); font-size:0.75rem; }
.hero-agenda time { color:var(--muted); font-variant-numeric:tabular-nums; }
.hero-agenda small { display:block; font-size:0.625rem; color:var(--muted); margin-top:4px; }
.hero-agenda .is-current { background:color-mix(in srgb,var(--accent) 10%,var(--surface)); border-radius:5px; }
.hero-benefits { display:flex; flex-wrap:wrap; gap:24px; margin-top:44px; font-size:0.75rem; color:var(--muted); }
.hero-benefits span { display:flex; align-items:center; gap:8px; }
.hero-benefits .icon { color:var(--text); width:18px; height:18px; }
.audience-line { border-block:1px solid var(--border); padding:24px 0; }
.audience-line .wrap { display:flex; justify-content:space-between; gap:24px; align-items:center; }
.audience-line span { color:var(--muted); font-size:0.75rem; }
.audience-line p { margin:0; font-size:0.8125rem; }
.audience-line i { margin:0 18px; color:var(--muted); }
.workflow { background:var(--bg); border-top:0; }
.workflow .section-grid { grid-template-columns:.85fr 1.15fr; align-items:center; gap:100px; }
.workflow-story { position:relative; }
.workflow-story .theme-photo { border-radius:10px; overflow:hidden; }
.workflow-story img { max-height:440px; aspect-ratio:1.1; object-position:center 65%; }
.workflow-story>p { position:relative; margin:-44px 24px 0; padding:24px; background:var(--surface); border:1px solid var(--border); border-radius:8px; color:var(--muted); font-size:0.875rem; }
.workflow-story strong { font-weight:600; color:var(--text); }
.workflow-list { margin-top:32px; }
.workflow-list li { gap:24px; padding:20px 0; }
.workflow-list li>span { color:var(--accent); font-weight:650; }
#funkcje { background:var(--soft); }
.product-section { gap:80px; }
.product-preview { box-shadow:0 12px 36px #0000000a; border-radius:10px; }
.pricing { background:var(--bg); }
.price-card { background:var(--soft); border-radius:10px; }
.closing { background:var(--soft); }
@media(max-width:1100px) { .wrap { width:calc(100% - 56px); } .hero__grid { gap:24px; } .hero h1 { font-size:3.625rem; } .hero-agenda { width:210px; right:0; } .hero-photograph img { aspect-ratio:.9; } .workflow .section-grid { gap:48px; } }
@media(max-width:760px) { .wrap { width:calc(100% - 40px); } .hero__grid,.workflow .section-grid { grid-template-columns:1fr; gap:40px; } .hero { padding-top:36px; } .hero h1 { font-size:3.25rem; } .hero h1 br { display:block; } .hero h1 br:last-child { display:none; } .hero-benefits { margin-top:28px; gap:16px; } .hero-photograph img { aspect-ratio:1.25; } .hero-agenda { width:190px; bottom:0; right:8px; } .hero-agenda>div:not(:first-child) { padding:8px; } .hero-scene { padding-bottom:64px; } .audience-line .wrap { display:block; } .audience-line p { margin-top:8px; } .audience-line i { margin:0 6px; } .workflow-story img { max-height:340px; } .product-section { gap:32px; } }
@media(max-width:400px) { .hero h1 { font-size:2.875rem; } .hero__cta { gap:16px; } .hero-benefits { font-size:0.6875rem; gap:12px; } }
.hero__grid > * { min-width:0; }
@media(max-width:760px) { .hero h1 br:last-child { display:block; } }
@media(min-width:761px) and (max-width:1100px) { .hero h1 { font-size:clamp(2.375rem, 5vw, 3.4375rem); } }
@media(max-width:400px) { .hero h1 { font-size:clamp(2.25rem, 11.8vw, 2.875rem); } }

.preview-workspace { display:grid; grid-template-columns:.9fr 1.1fr; border-top:1px solid var(--border); }
.preview-index { border-right:1px solid var(--border); }
.preview-index .preview-visit { padding:18px 14px; gap:10px; align-items:flex-start; }
.preview-index .preview-visit:first-child { border-top:0; }
.preview-index .is-selected { background:color-mix(in srgb,var(--accent) 10%,var(--surface)); box-shadow:inset 2px 0 var(--accent); }
.preview-index .preview-visit b { font-size:0.75rem; }
.preview-index .preview-visit time { font-size:0.6875rem; padding-top:2px; }
.preview-workspace .preview-detail { margin:0; border:0; background:var(--surface); padding:20px; }
.preview-detail h3 { font-size:1.0625rem; margin:16px 0 6px; }
.preview-workspace .preview-detail dl { grid-template-columns:1fr; gap:16px; }
.preview-detail .preview-action { margin-top:12px; padding:10px 12px; background:var(--accent); color:white; border-radius:5px; }
.preview-workspace .preview-status { display:inline-block; }
@media(max-width:420px) { .preview-workspace { grid-template-columns:1fr; } .preview-index { border-right:0; border-bottom:1px solid var(--border); } .preview-index .preview-visit { padding:12px 18px; } .preview-index .preview-visit div>span { display:none; } }
@media(max-width:760px) {
 .hero-scene { padding-bottom:0; }
 .hero-agenda { position:relative; bottom:auto; right:auto; width:calc(100% - 32px); margin:-24px 16px 0; }
 .hero-agenda>div:not(:first-child) { gap:24px; }
}

/* Imagegen feature family: graphite in light mode, silver in dark mode. */
.feature-list article { display:grid; grid-template-columns:88px minmax(0,1fr); gap:20px; align-items:start; }
.feature-list .feature-icon { width:88px; height:88px; }
.feature-icon img { width:100%; height:100%; object-fit:contain; }
.feature-list article>div { padding-top:8px; }
@media(max-width:760px) { .feature-list { grid-template-columns:1fr; } .feature-list article { grid-template-columns:72px minmax(0,1fr); gap:16px; } .feature-list .feature-icon { width:72px; height:72px; } .feature-list article>div { padding-top:4px; } }
@media(max-width:380px) { .feature-list article { grid-template-columns:56px minmax(0,1fr); gap:12px; } .feature-list .feature-icon { width:56px; height:56px; } }
.feature-list article > div { min-width:0; }
.feature-list h3,.feature-list p { max-width:100%; overflow-wrap:anywhere; }

/* Drawn scenes are part of the page, with no photo crops or frames. */
.drawn-scene { display:block; width:100%; height:auto; object-fit:contain; }
.hero-scene { padding-bottom:120px; }
.hero-illustration { min-height:360px; }
.workflow-story .workflow-illustration { aspect-ratio:auto; max-height:none; object-fit:contain; }
.workflow-story>p { margin:16px 0 0; padding:0 0 0 20px; border:0; border-left:2px solid var(--accent); border-radius:0; background:transparent; }
.feature-list img.feature-icon { object-fit:contain; }
@media(max-width:760px) { .hero-scene { padding-bottom:0; } .hero-illustration { min-height:0; } .hero-agenda { margin:8px 0 0; width:100%; } }
.lfoot__legal { display:flex; flex-wrap:wrap; gap:16px; } .lfoot__legal a,.lfoot__legal a:last-child { display:inline; color:var(--muted); font-size:0.75rem; text-decoration:none; } .lfoot__legal a:hover { color:var(--text); text-decoration:underline; }
