/* Ferienhaus Kroatien – isolated modern page styles */
.fko-modern-page { --fko-navy:#073f70; --fko-blue:#069fc7; --fko-sky:#eaf8fc; --fko-coral:#f56a3d; --fko-ink:#17324a; --fko-muted:#607486; --fko-sand:#fffaf3; }
.fko-modern-page .entry-header { display:none; }
.fko-modern-page .content,.fko-modern-page .content-area,.fko-modern-page .site-main,.fko-modern-page article.page { max-width:none!important; padding:0!important; margin:0!important; }
.fko-modern-page .entry-content { margin:0!important; }
.fko-modern-page .fko-hero,.fko-modern-page .fko-layout,.fko-modern-page .fko-bottom-cta,.fko-modern-page .fko-legal { box-sizing:border-box; font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif; color:var(--fko-ink); }
.fko-hero { display:grid; grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr); max-width:1280px; margin:24px auto 72px; min-height:560px; overflow:hidden; border-radius:30px; background:linear-gradient(135deg,#e9f9fd 0%,#fffaf3 70%); box-shadow:0 24px 70px rgba(7,63,112,.14); }
.fko-hero-copy { padding:clamp(42px,7vw,92px); align-self:center; position:relative; z-index:1; }
.fko-eyebrow { margin:0 0 14px!important; color:var(--fko-coral); font-size:.77rem!important; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.fko-hero h1,.fko-legal h1 { color:var(--fko-navy); font-size:clamp(2.4rem,5vw,4.65rem)!important; line-height:1.02!important; letter-spacing:-.045em; margin:0 0 24px!important; }
.fko-lead { color:#3e586e; font-size:clamp(1.05rem,1.35vw,1.25rem)!important; line-height:1.75!important; margin:0 0 32px!important; }
.fko-hero-media { min-height:420px; clip-path:polygon(10% 0,100% 0,100% 100%,0 100%); }
.fko-hero-media img { display:block; width:100%; height:100%; object-fit:cover; }
.fko-button { display:inline-flex; align-items:center; gap:16px; padding:15px 22px; border-radius:999px; background:var(--fko-navy); color:#fff!important; font-weight:800; text-decoration:none!important; box-shadow:0 10px 25px rgba(7,63,112,.2); transition:transform .2s ease,background .2s ease; }
.fko-button:hover { background:var(--fko-blue); transform:translateY(-2px); }
.fko-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:clamp(40px,6vw,86px); max-width:1160px; margin:0 auto 90px; padding:0 24px; align-items:start; }
.fko-prose { min-width:0; }
.fko-prose h2 { color:var(--fko-navy); font-size:clamp(1.75rem,3vw,2.55rem)!important; line-height:1.15!important; letter-spacing:-.025em; margin:64px 0 18px!important; }
.fko-prose h2:first-child { margin-top:0!important; }
.fko-prose h3 { color:var(--fko-navy); font-size:1.35rem!important; margin:38px 0 12px!important; }
.fko-prose p,.fko-prose li { color:#41586b; font-size:1.06rem!important; line-height:1.82!important; }
.fko-prose a:not(.fko-button) { color:#007da1; text-decoration-thickness:1px; text-underline-offset:3px; }
.fko-content-image { width:100%!important; max-width:100%!important; height:auto; max-height:520px; object-fit:cover; float:none!important; display:block; margin:28px 0!important; border-radius:20px!important; box-shadow:0 18px 45px rgba(7,63,112,.12); }
.fko-sidecard { position:sticky; top:120px; padding:30px; border-radius:22px; background:var(--fko-sand); border:1px solid rgba(245,106,61,.22); box-shadow:0 16px 40px rgba(20,48,70,.08); }
.fko-sidecard h2 { color:var(--fko-navy); font-size:1.55rem!important; line-height:1.2!important; margin:0 0 14px!important; }
.fko-sidecard p:not(.fko-eyebrow) { color:var(--fko-muted); line-height:1.65; }
.fko-button-small { padding:12px 18px; font-size:.92rem; }
.fko-bottom-cta { display:flex; justify-content:space-between; align-items:center; gap:32px; max-width:1160px; margin:0 auto 80px; padding:42px 48px; border-radius:26px; color:#fff; background:linear-gradient(120deg,var(--fko-navy),#056f9c); overflow:hidden; position:relative; }
.fko-bottom-cta:after { content:""; position:absolute; width:240px; height:240px; border:52px solid rgba(255,255,255,.08); border-radius:50%; right:-75px; top:-110px; }
.fko-bottom-cta h2 { color:#fff!important; font-size:clamp(1.65rem,3vw,2.35rem)!important; margin:0!important; position:relative; z-index:1; }
.fko-bottom-cta .fko-eyebrow { color:#74e2f3; }
.fko-button-light { background:#fff; color:var(--fko-navy)!important; position:relative; z-index:1; flex:none; }
.fko-legal { max-width:940px; margin:36px auto 90px; padding:clamp(30px,6vw,76px); border-radius:28px; background:#fff; box-shadow:0 20px 60px rgba(7,63,112,.1); }
.fko-legal header { margin-bottom:44px; }
.fko-legal h1 { font-size:clamp(2.4rem,5vw,4rem)!important; }
.fko-legal .fko-prose h2 { font-size:1.6rem!important; margin-top:44px!important; }
@media (max-width:900px) { .fko-hero { grid-template-columns:1fr; margin:14px 14px 52px; min-height:0; } .fko-hero-copy { padding:42px 28px; } .fko-hero-media { min-height:340px; clip-path:none; order:-1; } .fko-layout { grid-template-columns:1fr; } .fko-sidecard { position:static; } .fko-bottom-cta { margin:0 18px 54px; padding:34px 26px; flex-direction:column; align-items:flex-start; } .fko-legal { margin:18px 14px 60px; } }
@media (max-width:520px) { .fko-hero-media { min-height:260px; } .fko-hero h1 { font-size:2.45rem!important; } .fko-layout { padding:0 20px; } }
