.fg-prague-page { --gold: #ffd84d; --gold-hover: #ffe584; }
.fg-prague-page :target { scroll-margin-top: 110px; }
.fg-prague-page .brand { display:flex; align-items:center; gap:10px; white-space:nowrap; }
.fg-prague-page .brand img { width:62px; height:45px; object-fit:contain; }
.fg-prague-page .hero { background:var(--green); color:white; position:relative; overflow:hidden; }
.fg-prague-page .hero h1 { color:white; max-width:850px; font-size:clamp(40px,5.7vw,70px); }
.fg-prague-page .hero .lead { color:#e2ebe5; max-width:780px; }
.fg-prague-page .hero .eyebrow { background:#ffd84d; border:0; color:#143d2d; }
.fg-prague-page .hero .button.secondary { border:1px solid #c1d1c6; }
.fg-prague-page .hero-proof { display:flex; flex-wrap:wrap; gap:12px 26px; margin-top:32px; color:#f5df85; font-weight:700; }
.fg-prague-page .hero-proof a { color:inherit; }
.fg-prague-page .jump-links { display:flex; gap:10px; flex-wrap:wrap; padding-top:24px; }
.fg-prague-page .jump-links a { padding:9px 14px; border:1px solid #c5d2c8; border-radius:30px; color:var(--green); text-decoration:none; font-size:14px; font-weight:700; }
.fg-prague-page .jump-links a:hover { background:var(--cream); }
.fg-prague-page .service-list { margin-top:32px; border-top:1px solid var(--border); }
.fg-prague-page .service-row { display:grid; grid-template-columns:80px minmax(0,1fr) minmax(0,1.15fr); gap:24px; padding:28px 0; border-bottom:1px solid var(--border); align-items:start; }
.fg-prague-page .service-number { font-size:18px; font-weight:800; color:#627a67; }
.fg-prague-page .service-row h3 { margin:0; }
.fg-prague-page .service-row p { color:var(--muted); }
.fg-prague-page .project { background:white; border:1px solid var(--border); border-radius:20px; margin-top:32px; overflow:hidden; }
.fg-prague-page .project-body { padding:clamp(22px,4vw,40px); }
.fg-prague-page .project .eyebrow { margin-bottom:12px; }
.fg-prague-page .project p { max-width:830px; }
.fg-prague-page .project-facts { display:flex; gap:12px; flex-wrap:wrap; margin:20px 0; }
.fg-prague-page .project-facts span { padding:7px 12px; background:var(--green-bg); border-radius:8px; font-size:14px; font-weight:700; color:var(--green); }
.fg-prague-page .photo-pair { display:grid; grid-template-columns:1fr 1fr; gap:4px; background:var(--cream); }
.fg-prague-page .photo-pair figure { position:relative; min-width:0; }
.fg-prague-page .photo-pair img { display:block; width:100%; height:auto; aspect-ratio:3/4; object-fit:cover; }
.fg-prague-page .photo-pair figcaption { position:absolute; left:14px; bottom:14px; background:#143d2d; color:white; padding:6px 13px; border-radius:7px; font-weight:800; font-size:14px; }
.fg-prague-page .project-collage { background:#f5f5ec; padding:12px; }
.fg-prague-page .project-collage img { display:block; margin:auto; width:100%; height:auto; max-width:1000px; }
.fg-prague-page .project-collage figcaption { padding:10px 10px 0; color:var(--muted); font-size:14px; }
.fg-prague-page .review-quote { margin-top:22px; padding:24px; background:var(--cream); border-left:4px solid var(--gold); border-radius:0 12px 12px 0; }
.fg-prague-page .review-quote blockquote { font-size:18px; margin:10px 0; }
.fg-prague-page .review-quote cite { font-style:normal; font-size:14px; color:var(--muted); }
.fg-prague-page .stars { color:#8b6200; letter-spacing:3px; font-weight:800; }
.fg-prague-page .rating-band { display:grid; grid-template-columns:1fr auto; align-items:center; gap:28px; background:#fff1b8; border:1px solid #dfc777; border-radius:20px; padding:clamp(24px,4vw,40px); }
.fg-prague-page .rating-score { font-size:48px; color:var(--green); line-height:1.15; font-weight:800; }
.fg-prague-page .rating-caption { color:var(--muted); font-size:14px; margin-top:8px; }
.fg-prague-page .inquiry-layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:50px; align-items:start; }
.fg-prague-page .inquiry-form { background:white; border:1px solid var(--border); border-radius:20px; padding:clamp(20px,3vw,32px); box-shadow:var(--shadow); }
.fg-prague-page .form-group { margin-bottom:18px; }
.fg-prague-page .form-group label { display:block; margin-bottom:6px; font-weight:700; color:var(--green); }
.fg-prague-page input:not([type=checkbox]),.fg-prague-page select,.fg-prague-page textarea { width:100%; min-width:0; border:1px solid #a6b6aa; border-radius:9px; background:white; font:inherit; font-size:16px; padding:11px 12px; color:var(--ink); }
.fg-prague-page textarea { resize:vertical; min-height:145px; }
.fg-prague-page input[type=file] { font-size:14px; padding:10px; }
.fg-prague-page .form-consent { display:flex; align-items:flex-start; gap:12px; font-size:14px; margin:22px 0; }
.fg-prague-page .form-consent input { margin-top:5px; flex-shrink:0; width:19px; height:19px; accent-color:var(--green); }
.fg-prague-page .form-help { font-size:13px; color:var(--muted); margin-top:7px; }
.fg-prague-page .inquiry-form .button { width:100%; }
.fg-prague-page :focus-visible { outline:3px solid #b17200; outline-offset:4px; }
.fg-prague-page .next-care { margin-top:30px; }
.fg-prague-promo { background:#fff1b8; padding:60px 0; color:#244d29; }
.fg-prague-promo__layout { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); align-items:center; gap:36px; }
.fg-prague-promo h2 { font-size:clamp(28px,4vw,42px); color:#244d29; margin-bottom:18px; }
.fg-prague-promo p { margin-bottom:22px; font-size:18px; line-height:1.65; }
.fg-prague-promo img { display:block; width:100%; height:auto; border-radius:14px; }
.fg-prague-promo figcaption { font-size:13px; margin-top:8px; }
.fg-prague-promo__photos { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.fg-prague-promo__photos img { aspect-ratio:3/4; object-fit:cover; }
@media(max-width:820px) { .fg-prague-page .service-row { grid-template-columns:35px minmax(0,1fr); gap:12px; } .fg-prague-page .service-row p { grid-column:2; } .fg-prague-page .inquiry-layout,.fg-prague-promo__layout { grid-template-columns:1fr; gap:28px; } .fg-prague-page .rating-band { grid-template-columns:1fr; } }
@media(max-width:560px) { .fg-prague-page .photo-pair { grid-template-columns:1fr; gap:6px; } .fg-prague-page .hero-proof { display:grid; gap:9px; } .fg-prague-page .nav { display:flex; flex-wrap:wrap; gap:10px; padding:10px 0; } .fg-prague-page .nav-links { margin:0; gap:14px; } .fg-prague-page .nav-links a { font-size:13px; } .fg-prague-page .brand { font-size:20px; } .fg-prague-page .brand img { width:48px; height:36px; } .fg-prague-page .hero { padding-top:50px; } .fg-prague-page .review-quote { padding:18px; } .fg-prague-page .review-quote blockquote { font-size:16px; } .fg-prague-promo { padding:44px 0; } }
@media(prefers-reduced-motion:reduce) { .fg-prague-page { scroll-behavior:auto; } html:has(.fg-prague-page) { scroll-behavior:auto; } }

.fg-prague-page .annual-care__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:30px 0; }
.fg-prague-page .season-card { min-width:0; padding:22px; background:#fff; border:1px solid var(--border); border-top:4px solid var(--gold); border-radius:14px; }
.fg-prague-page .season-card__label { display:inline-block; margin-bottom:10px; color:var(--green); font-weight:800; text-transform:uppercase; letter-spacing:.06em; font-size:13px; }
.fg-prague-page .season-card h3 { margin:0 0 10px; font-size:20px; }
.fg-prague-page .season-card p { margin:0; color:var(--muted); }
.fg-prague-page .annual-care__terms { padding:clamp(20px,3vw,32px); background:#fff; border:1px solid var(--border); border-radius:16px; }
.fg-prague-page .annual-care__terms .button { margin-top:8px; }
.fg-prague-page .project-cta { margin-top:20px; }
@media(max-width:900px) { .fg-prague-page .annual-care__grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) { .fg-prague-page .annual-care__grid { grid-template-columns:1fr; gap:12px; } .fg-prague-page .season-card { padding:18px; } }

/* Compact realization photos in the Prague service overview only. */
.fg-prague-page .service-row .service-photos { grid-column:2 / -1; width:100%; max-width:680px; min-width:0; }
.fg-prague-page .service-photos__pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.fg-prague-page .service-photo { min-width:0; margin:0; overflow:hidden; border:1px solid var(--border); border-radius:12px; background:var(--green-bg); }
.fg-prague-page .service-photo img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; object-position:center 45%; }
.fg-prague-page .service-photo figcaption { padding:8px 12px; color:var(--green); font-weight:800; font-size:13px; }
.fg-prague-page .service-row .service-photos__caption { margin:12px 0 0; font-size:14px; line-height:1.6; }
.fg-prague-page #nalety.service-row > p a { color:var(--green); font-weight:700; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }
.fg-prague-page #nalety.service-row > p a:hover { color:#2e5d32; text-decoration-thickness:2px; }
@media(max-width:560px) {
 .fg-prague-page .service-photos__pair { grid-template-columns:1fr; gap:12px; }
}
