/* Druhá revize: jemnější plochy, větší prostor pro budoucí reálné fotografie. */
:root { --blue:#205c93; --deep:#123a67; --yellow:#f5bf3d; --soft:#f4f6f8; --line:#d7dee6; }
body { background:#fff; }
.site-header { background:rgba(255,255,255,.94); }
.nav { position:relative; width:calc(100% - 96px); max-width:none; padding-left:94px; }
.brand-logo { position:absolute; left:max(0px, calc((100vw - 1276px) / 2)); top:1px; z-index:3; display:block; width:76px; }
.brand-logo img { display:block; width:100%; height:auto; mix-blend-mode:multiply; }
.nav-links { gap:22px; margin-left:auto; }
.nav-links .button { white-space:nowrap; }
h1 em, h2 em { color:var(--blue); font-style:italic; }
.hero { grid-template-columns:.83fr 1.17fr; gap:45px; min-height:720px; }
.hero-art { height:585px; }
.photo-hero { width:91%; height:510px; top:27px; transform:rotate(1.2deg); box-shadow:14px 15px 0 rgba(245,191,61,.8); }
.hero { grid-template-columns:1.05fr .95fr; gap:30px; min-height:0; padding-top:32px; padding-bottom:28px; }
.hero h1 { font-size:clamp(2.65rem,4.05vw,4.15rem); line-height:.94; margin-bottom:19px; }
.hero h1 em { font-family:var(--heading); font-style:normal; font-weight:800; letter-spacing:-.055em; }
.hero .eyebrow { margin-bottom:14px; }
.hero-lead { margin:18px 0 10px; font-size:1.22rem; }
.hero .body-copy { font-size:.96rem; line-height:1.47; margin-bottom:11px; }
.hero .event-list { margin:11px 0 19px; font-size:.94rem; }
.hero-art { height:370px; }
.photo-hero { height:325px; top:16px; }
.tilted-note { bottom:26px; padding:15px 19px; font-size:.96rem; }
.hero-actions span { min-width:185px; line-height:1.35; }
.hero-actions span strong { display:inline-block; margin-top:2px; font-size:1rem; }
.hero-lead em { color:var(--blue); font-family:var(--heading); font-weight:700; }
.process-strip { background:#f8f1dc; border-top:1px solid #ece0bc; border-bottom:1px solid #ece0bc; }
.photo-placeholder { background-color:#edf1f5; background-image:linear-gradient(135deg,rgba(32,92,147,.055) 25%,transparent 25%,transparent 50%,rgba(32,92,147,.055) 50%,rgba(32,92,147,.055) 75%,transparent 75%); border-color:#bdc9d8; }
.why-grid { grid-template-columns:.79fr 1.21fr; gap:9%; }
.photo-guests { height:420px; }
.why-emphasis { font-family:var(--heading); font-size:1.75rem; font-weight:800; line-height:1.05; color:var(--blue); margin-top:28px; }
.audience-grid article { border-top-width:3px; }
.why.section { padding-top:48px; padding-bottom:52px; }
.why .section-intro h2 { font-size:clamp(2.3rem,3.65vw,3.7rem); margin-bottom:0; }
.why-grid { margin-top:26px; align-items:start; }
.why-copy { font-size:1.08rem; line-height:1.36; }
.why-copy p { margin-bottom:13px; }
.why-emphasis { font-size:1.38rem; margin-top:19px!important; }
.why .audience-grid { margin-top:26px; gap:16px; }
.why .audience-grid article { padding:16px 22px 17px; }
.why .audience-grid ul { margin-top:7px; }
.why .audience-grid li { padding-top:3px; padding-bottom:3px; font-size:.79rem; line-height:1.28; }
.why .photo-guests { margin-top:-205px; }
.steps { background:#174d80; }
.steps.section { padding-top:42px; padding-bottom:45px; }
.steps .eyebrow { margin-bottom:11px; }
.steps h2 { font-size:clamp(2.1rem,3.35vw,3.35rem); margin-bottom:0; }
.steps-grid { margin-top:28px; }
.steps-grid article { min-height:0; padding:0 19px; }
.steps-grid h3 { font-size:1.2rem; margin:14px 0 6px; }
.steps-grid p { font-size:.76rem; line-height:1.35; margin-bottom:0; }
.steps-grid b { font-size:.86rem; }
.product-top { min-height:330px; }
.product-photo { height:315px; margin:0 26px; }
.products.section { padding-top:22px; padding-bottom:22px; }
.products .section-intro.centered { text-align:left; }
.products .section-intro.centered h2 { text-align:center; font-size:clamp(1.95rem,3.05vw,3rem); margin:7px 0 0; }
.products .section-intro .eyebrow { margin-bottom:0; }
.products .product-grid { margin-top:14px; }
.products .product { display:grid; grid-template-rows:220px 225px auto; }
.products .product-top { height:220px; min-height:0; padding:18px 24px 12px; }
.products .product-top h3 { font-size:1.82rem; margin:11px 0 7px; }
.products .product-top p { font-size:.76rem; line-height:1.26; margin-bottom:4px; }
.products .product-photo { height:225px; margin:0 20px; }
.products .product-bottom { padding:14px 24px 16px; }
.products .product-bottom ul { margin-top:0; font-size:.72rem; }
.products .product-bottom li { padding-top:2px; padding-bottom:2px; }
.products .capacity { margin:9px 0 8px; padding-top:8px; font-size:.72rem; }
.products .product-bottom a { font-size:.66rem; }
.products .products-note { margin-top:12px; font-size:.75rem; line-height:1.3; }
.branding { background:#f7f8f8; }
.branding.section { padding-top:62px; padding-bottom:62px; }
.branding-gallery .photo-placeholder { height:215px; }
.size-grid { gap:16px; border:0; }
.size-grid article { min-height:280px; padding:30px 28px; border:1px solid var(--line)!important; position:relative; background:#fff; }
.size-grid article:nth-child(2) { background:#174d80; color:#fff; border-color:#174d80!important; transform:translateY(24px); }
.size-grid article:nth-child(3) { border-top:5px solid var(--yellow)!important; }
.sizes.section { padding-top:42px; padding-bottom:42px; }
.sizes h2 { font-size:clamp(2.15rem,3.35vw,3.3rem); margin-bottom:0; }
.sizes .size-grid { margin:30px 0 20px; }
.size-grid article { min-height:230px; padding:24px 25px; }
.size-grid article:first-child { border-top:5px solid var(--yellow)!important; padding:24px 25px!important; }
.size-grid article>span { margin-top:30px; font-size:.62rem; }
.size-grid article h3 { font-size:1.52rem; margin:8px 0; }
.size-grid article p { font-size:.79rem; line-height:1.32; }
.size-grid article>b { font-size:1.85rem; }
.sizes .size-claim { margin-top:38px; font-size:clamp(1.55rem,2.35vw,2.25rem); }
.size-grid article>b { position:absolute; right:18px; top:14px; color:var(--yellow); font:800 2.2rem/1 var(--heading); letter-spacing:-.08em; }
.size-grid article>span { display:block; margin-top:38px; }
.size-grid article h3 { font-size:2rem; }
.size-claim { margin-top:70px; }
.timed { padding-top:135px; }
.timed-inner { background:#153e6b; box-shadow:12px 12px 0 #e7edf3; }
.timed { display:block; }
.timed .eyebrow { display:none; }
.timed.shell.section { padding-top:34px; padding-bottom:44px; }
.timed-inner { max-width:870px; margin:0 auto; padding:31px 36px; grid-template-columns:92px 1fr; gap:25px; }
.timed-inner h2 { font-size:clamp(1.75rem,2.65vw,2.6rem); margin-bottom:12px; }
.timed-inner p { font-size:.86rem; line-height:1.4; margin-bottom:10px; }
.timed-inner .eyebrow { margin-bottom:9px; }
.timed-inner .button { margin:5px 0 10px; padding:12px 15px; font-size:.64rem; }
.timed-inner small { font-size:.66rem; }
.timed-stamp { font-size:2.6rem; margin-top:34px; }
.timed-stamp small { font-size:.85rem!important; margin-top:12px; }
.timed-key { font-size:.88rem!important; }
.reference-main .photo-placeholder { height:390px; }
.masonry { grid-template-rows:230px 230px; gap:18px; }
.references { background:#f4f6f8; }
.references.section { padding-top:44px; padding-bottom:44px; }
.references .section-intro h2 { font-size:clamp(2.25rem,3.45vw,3.45rem); margin-bottom:0; }
.references .section-intro h2 em { color:var(--blue); font-style:italic; }
.references .section-intro .eyebrow { margin-bottom:10px; }
.references .reference-grid { margin-top:24px; gap:20px; }
.references .reference-main { background:transparent; }
.references .reference-main .photo-placeholder { height:245px; }
.references .reference-main>div:last-child { padding:12px 0 0; }
.references .reference-main span { font-size:1rem; }
.references .reference-main p { font-size:.78rem; line-height:1.33; margin-top:3px; }
.references .reference-mini { grid-template-columns:repeat(4,1fr); gap:12px; margin-top:16px; }
.references .reference-mini .photo-placeholder { height:100px; }
.gallery.section { padding-top:42px; padding-bottom:44px; }
.gallery .section-intro.centered { text-align:left; }
.gallery .section-intro.centered h2 { text-align:center; font-size:clamp(2.25rem,3.45vw,3.45rem); margin:8px 0 0; }
.gallery .section-intro h2 em { color:var(--blue); font-style:italic; }
.gallery .section-intro .eyebrow { margin-bottom:0; }
.gallery .masonry { grid-template-columns:1.16fr .92fr .92fr 1.16fr; grid-template-rows:225px 225px; gap:15px; margin-top:22px; }
.gallery .masonry .photo-placeholder:nth-child(1) { grid-column:1; grid-row:1 / span 2; }
.gallery .masonry .photo-placeholder:nth-child(2) { grid-column:2; grid-row:1; }
.gallery .masonry .photo-placeholder:nth-child(3) { grid-column:3; grid-row:1; }
.gallery .masonry .photo-placeholder:nth-child(4) { grid-column:4; grid-row:1 / span 2; }
.gallery .masonry .photo-placeholder:nth-child(5) { grid-column:2; grid-row:2; }
.gallery .masonry .photo-placeholder:nth-child(6) { grid-column:3; grid-row:2; }
.agencies { background:#174d80; }
.agencies.section { padding-top:38px; padding-bottom:40px; }
.agencies-grid { grid-template-columns:.78fr 1.22fr; gap:42px; align-items:center; }
.agencies .eyebrow { margin-bottom:10px; }
.agencies h2 { font-size:clamp(1.9rem,2.85vw,2.8rem); margin-bottom:0; }
.agencies-grid>div:last-child { padding-top:0; font-size:.84rem; line-height:1.36; }
.agencies-grid>div:last-child>p { margin-bottom:8px; }
.agencies ul { margin-top:5px; columns:2; }
.agencies li { padding-top:2px; padding-bottom:2px; font-size:.76rem; break-inside:avoid; }
.agency-key { margin:12px 0!important; }
.agencies .button { padding:11px 14px; font-size:.62rem; }
.pricing.section { padding-top:42px; padding-bottom:44px; text-align:left; }
.pricing .eyebrow { margin-bottom:8px; text-align:left; }
.pricing h2 { font-size:clamp(2.1rem,3.25vw,3.2rem); margin-bottom:14px; text-align:center; }
.pricing .price-highlight { font-size:clamp(1.75rem,2.75vw,2.65rem); text-align:center; margin:12px 0; }
.pricing .price-highlight em { font-style:italic; }
.pricing>p { font-size:.78rem; text-align:center; margin-bottom:13px; }
.pricing .price-grid { background:#fbf1cc; border:0; margin:18px 0 14px; border-radius:2px; }
.pricing .price-grid div { border:0; padding:16px 20px; position:relative; }
.pricing .price-grid div+div:before { content:""; position:absolute; left:0; top:16px; bottom:16px; width:1px; background:#e4ce82; }
.pricing .price-grid span { font-size:.64rem; color:#4d4426; }
.pricing .price-grid b { font-size:1rem; margin-top:4px; }
.pricing .button { padding:12px 16px; font-size:.64rem; display:flex; width:max-content; margin:0 auto; }
.service-info { background:#f8f1dc; }
.service-info.section { padding-top:44px; padding-bottom:46px; }
.service-info .eyebrow { margin-bottom:9px; }
.service-info h2 { text-align:center; font-size:clamp(2rem,3.15vw,3.15rem); margin:0 0 24px; }
.service-info h2 em { color:var(--blue); font-style:italic; }
.service-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.service-cards article { background:rgba(255,255,255,.75); padding:20px 22px; border-top:3px solid var(--blue); }
.service-cards article:nth-child(2) { border-color:var(--yellow); }.service-cards article:nth-child(3) { border-color:var(--ink); }
.service-cards span { font:800 .83rem var(--heading); text-transform:uppercase; letter-spacing:.045em; }
.service-cards ul { list-style:none; padding:0; margin:10px 0 0; }
.service-cards li { position:relative; padding:3px 0 3px 16px; font-size:.75rem; line-height:1.27; }
.service-cards li:before { content:"✓"; position:absolute; left:0; color:var(--blue); font-weight:700; }
.service-cards p { font-size:.74rem; line-height:1.32; margin:10px 0 0; }
.faq.section { padding-top:45px; padding-bottom:45px; }
.faq h2 { font-size:clamp(2rem,3.15vw,3.1rem); margin-bottom:0; }
.faq h2 em { color:var(--blue); font-style:italic; }
.faq .eyebrow { margin-bottom:9px; }
.accordions details { border:0; border-bottom:1px solid rgba(81,103,133,.18); padding:10px 0; }
.accordions details:first-child { border-top:1px solid rgba(81,103,133,.18); }
.accordions summary { font-family:var(--body); font-weight:600; font-size:.86rem; }
.accordions summary:after { font-size:1.15rem; top:-1px; color:#70839c; }
.accordions p { font-size:.78rem; line-height:1.36; margin-top:7px; }
.included { background:#f8f1dc; }
.final-cta { background:#153e6b; padding-top:66px; padding-bottom:82px; }
.final-cta .eyebrow { text-align:left; margin:0 0 12px; }
.final-cta h2 { font-size:clamp(2.15rem,3.5vw,3.55rem); line-height:1.02; margin-bottom:18px; }
.final-cta h2 em { color:#ffe08a; font-style:italic; font-weight:800; }
.final-cta .button { margin-top:34px; }
.footer { background:#000; }
.footer-logo { display:block; width:96px; padding:0; background:transparent; }
.footer-logo img { display:block; width:100%; }
@media(max-width:800px) {
  .nav { width:calc(100% - 48px); padding-left:94px; }.brand-logo { left:0; width:76px; top:1px; }.nav-links { padding-top:34px; }
  .hero { grid-template-columns:1fr; min-height:0; padding-top:55px; padding-bottom:55px; }.hero-art { height:470px; }.photo-hero { width:94%; height:400px; }
  .why-grid { grid-template-columns:1fr; }.why .photo-guests { height:350px; margin-top:0; }.product-photo { height:280px; }
  .why.section { padding-top:80px; padding-bottom:80px; }.why .audience-grid article { padding:22px 26px; }.why .audience-grid li { font-size:.9rem; padding-top:6px; padding-bottom:6px; }
  .steps.section { padding-top:55px; padding-bottom:55px; }.steps-grid { margin-top:30px; }.steps-grid h3 { font-size:1.35rem; }.steps-grid p { font-size:.86rem; }
  .products.section { padding-top:80px; padding-bottom:80px; }.products .section-intro.centered { text-align:center; }.products .section-intro.centered h2 { font-size:clamp(2.45rem,4.4vw,4.7rem); }.products .product { display:block; }.products .product-top { height:auto; min-height:0; padding:32px 30px 23px; }.products .product-top h3 { font-size:2.3rem; }.products .product-top p { font-size:1rem; }.products .product-photo { height:280px; margin:0 26px; }.products .product-bottom { padding:24px 30px 28px; }.products .product-bottom ul { font-size:.86rem; }.products .product-bottom li { padding-top:4px; padding-bottom:4px; }.products .capacity { margin-top:20px; padding-top:15px; font-size:.85rem; }.products .products-note { margin-top:30px; font-size:1rem; }
  .branding.section,.sizes.section { padding-top:80px; padding-bottom:80px; }.sizes .size-grid { margin-top:52px; }.size-grid article { min-height:280px; padding:30px 28px; }.size-grid article:first-child { padding:30px 28px!important; }.size-grid article>span { margin-top:38px; font-size:.66rem; }.size-grid article h3 { font-size:1.6rem; }.size-grid article p { font-size:.9rem; }.sizes .size-claim { margin-top:70px; }
  .timed.shell.section { padding-top:80px; padding-bottom:80px; }.timed-inner { max-width:none; padding:45px 30px; }.timed-stamp { font-size:4.2rem; margin-top:0; }
  .references.section { padding-top:80px; padding-bottom:80px; }.references .section-intro h2 { font-size:clamp(2.45rem,4.4vw,4.7rem); }.references .reference-grid { margin-top:48px; }.references .reference-main .photo-placeholder { height:330px; }.references .reference-main>div:last-child { padding:20px 24px; }.references .reference-main span { font-size:1.25rem; }.references .reference-main p { font-size:.9rem; }.references .reference-mini { grid-template-columns:1fr; }.references .reference-mini .photo-placeholder { height:180px; }
  .gallery.section { padding-top:80px; padding-bottom:80px; }.gallery .section-intro.centered { text-align:center; }.gallery .section-intro.centered h2 { font-size:clamp(2.45rem,4.4vw,4.7rem); }.gallery .masonry { grid-template-columns:1fr 1fr; grid-template-rows:165px 165px 165px; margin-top:35px; }.gallery .masonry .photo-placeholder:nth-child(1) { grid-column:1; grid-row:1 / span 2; }.gallery .masonry .photo-placeholder:nth-child(2) { grid-column:2; grid-row:1; }.gallery .masonry .photo-placeholder:nth-child(3) { grid-column:2; grid-row:2; }.gallery .masonry .photo-placeholder:nth-child(4) { grid-column:1; grid-row:3; }.gallery .masonry .photo-placeholder:nth-child(5) { grid-column:2; grid-row:3; }.gallery .masonry .photo-placeholder:nth-child(6) { display:none; }
  .agencies.section { padding-top:80px; padding-bottom:80px; }.agencies-grid { grid-template-columns:1fr; gap:28px; }.agencies h2 { font-size:clamp(2.45rem,4.4vw,4.7rem); }.agencies-grid>div:last-child { font-size:1rem; }.agencies ul { columns:1; margin-top:17px; }.agencies li { font-size:1rem; padding-top:6px; padding-bottom:6px; }.agencies .button { padding:16px 21px; font-size:.72rem; }
  .pricing.section { padding-top:80px; padding-bottom:80px; text-align:center; }.pricing h2 { font-size:clamp(2.45rem,4.4vw,4.7rem); }.pricing .price-highlight { font-size:clamp(2rem,4vw,4rem); margin:35px 0 18px; }.pricing>p { font-size:1rem; }.pricing .price-grid { margin:45px 0 26px; border-radius:0; }.pricing .price-grid div { padding:22px; border-left:1px solid var(--line); }.pricing .price-grid div+div:before { display:none; }.pricing .price-grid span { font-size:.72rem; }.pricing .price-grid b { font-size:1.2rem; }.pricing .button { padding:16px 21px; font-size:.72rem; }
  .service-info.section { padding-top:80px; padding-bottom:80px; }.service-info h2 { font-size:clamp(2.45rem,4.4vw,4.7rem); margin-bottom:38px; }.service-cards { grid-template-columns:1fr; }.service-cards article { padding:27px; }.service-cards span { font-size:1rem; }.service-cards li,.service-cards p { font-size:.92rem; }
  .faq.section { padding-top:80px; padding-bottom:80px; }.faq h2 { font-size:clamp(2.45rem,4.4vw,4.7rem); }.accordions details { padding:17px 0; }.accordions summary { font-family:var(--heading); font-weight:800; font-size:1.05rem; }.accordions p { font-size:.9rem; }
  .size-grid { grid-template-columns:1fr; }.size-grid article:nth-child(2) { transform:none; }.timed { padding-top:80px; }
  .reference-main .photo-placeholder { height:330px; }.masonry { grid-template-rows:180px 180px 180px; }
}
@media(max-width:480px) { .nav { width:calc(100% - 32px); padding-left:78px; }.brand-logo { width:64px; top:1px; }.hero-art { height:350px; }.photo-hero { height:295px; }.photo-guests { height:270px; }.product-photo { height:235px; }.reference-main .photo-placeholder { height:250px; }.footer-logo { width:76px; } }
.form-section.section { padding-top:52px; padding-bottom:52px; }
.form-heading h2 em { color:var(--blue); font-style:italic; }
.contact-card { margin-top:28px; padding:21px 22px; background:#f2f5f8; border-left:3px solid var(--yellow); }
.contact-kicker { display:block; color:var(--blue); font:800 .65rem var(--body); text-transform:uppercase; letter-spacing:.12em; }
.contact-card p { font-size:.84rem!important; line-height:1.38; margin:9px 0 16px!important; }
.contact-email { display:flex; justify-content:space-between; align-items:center; padding:11px 13px; background:var(--blue); color:white; text-decoration:none; font:700 .76rem var(--body); }
.contact-email b { font-size:1.08rem; }.contact-meta { display:flex; justify-content:space-between; gap:10px; margin-top:13px; font-size:.73rem; }
.contact-meta a { color:var(--ink); text-decoration:none; }.contact-meta i { color:var(--yellow); font-style:normal; font-size:.65rem; margin-right:4px; }
