/*
Theme Name: Lake Bled Slovenia
Theme URI: https://lakebledslovenia.com/
Author: Lake Bled Slovenia
Version: 3.2.0
Description: Premium editorial destination and local guide and practical help theme for Lake Bled Slovenia.
Text Domain: lake-bled-slovenia
*/
:root{
  --green:#12392e; --green2:#214d3e; --sage:#7a8778; --olive:#59685a;
  --ink:#17221e; --muted:#657069; --cream:#f4efe6; --paper:#fbf9f4; --white:#fff;
  --line:#ddd8ce; --soft:#eae4da; --sand:#d7cbb8; --radius:8px; --max:1180px;
  --serif:Georgia,'Times New Roman',serif; --sans:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --shadow:0 18px 55px rgba(27,51,42,.11);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.66}img{display:block;max-width:100%;height:auto}a{color:var(--green)}a:hover{color:var(--green2)}h1,h2,h3,h4{font-family:var(--serif);font-weight:500;letter-spacing:-.028em;line-height:1.03;margin:0 0 18px}h1{font-size:clamp(54px,8vw,102px)}h2{font-size:clamp(40px,5vw,66px)}h3{font-size:clamp(25px,3vw,34px)}p{margin:0 0 1.1em}ul,ol{padding-left:1.25em}.lbs-container{width:min(calc(100% - 40px),var(--max));margin:0 auto}.lbs-section{padding:92px 0}.lbs-soft{background:var(--cream)}.lbs-dark{background:var(--green);color:#f8f5ee}.lbs-dark h2,.lbs-dark h3{color:#fff}.lbs-eyebrow{margin:0 0 13px;font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:#728077}.lbs-lead{font-size:clamp(19px,2.1vw,25px);line-height:1.55;color:#45534d;max-width:780px}.lbs-note{font-size:13px;color:#747d78}.lbs-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 20px;border-radius:999px;background:var(--green);color:#fff!important;text-decoration:none;border:1px solid var(--green);font-size:13px;font-weight:760;letter-spacing:.015em;transition:.2s}.lbs-button:hover{background:var(--green2);transform:translateY(-1px)}.lbs-button-light{background:#fff;color:var(--green)!important;border-color:#fff}.lbs-button-outline{background:transparent;color:var(--green)!important}.lbs-dark .lbs-button-outline{color:#fff!important;border-color:rgba(255,255,255,.5)}.lbs-text-cta{font-weight:750;text-decoration:none}.lbs-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.site-header{position:sticky;top:0;z-index:60;background:rgba(251,249,244,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,216,206,.75)}.site-header-inner{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-branding a{text-decoration:none;color:var(--ink)}.site-branding strong{font-family:var(--serif);font-size:23px;font-weight:500;display:block;line-height:1}.site-branding span{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:5px}.main-navigation ul{display:flex;gap:25px;list-style:none;margin:0;padding:0}.main-navigation a{text-decoration:none;color:var(--ink);font-size:13px;font-weight:650}.lbs-menu-toggle{display:none;border:0;background:transparent;font-size:25px;color:var(--ink)}
.lbs-home-hero{position:relative;min-height:79vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--green)}.lbs-home-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.lbs-home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,22,17,.08) 10%,rgba(8,22,17,.12) 38%,rgba(8,22,17,.73) 100%)}.lbs-home-hero-inner{position:relative;z-index:2;color:#fff;padding-bottom:72px;max-width:930px;margin-left:max(20px,calc((100vw - var(--max))/2))}.lbs-home-hero h1{max-width:820px}.lbs-home-hero .lbs-eyebrow{color:#d7e0da}.lbs-home-hero .lbs-lead{color:#f2f2ed;max-width:690px}.lbs-home-hero .lbs-button-outline{color:#fff!important;border-color:rgba(255,255,255,.58)}.lbs-hero-badge{display:inline-block;margin-top:18px;padding:8px 12px;border:1px solid rgba(255,255,255,.42);border-radius:999px;font-size:12px;color:#fff}
.lbs-intro{display:grid;grid-template-columns:.85fr 1.2fr;gap:8vw;align-items:start}.lbs-intro-copy{font-size:19px;color:#4c5953}.lbs-section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:35px}.lbs-section-head>p{max-width:500px;color:var(--muted)}
.lbs-builder{background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.lbs-builder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.lbs-builder-group label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:800;margin-bottom:10px;color:var(--muted)}.lbs-choice-row{display:flex;flex-wrap:wrap;gap:8px}.lbs-choice{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:9px 12px;font-size:13px;cursor:pointer}.lbs-choice.is-active{background:var(--green);color:#fff;border-color:var(--green)}.lbs-builder-result{margin-top:28px;padding-top:28px;border-top:1px solid var(--line);display:grid;grid-template-columns:1.3fr .8fr;gap:28px}.lbs-builder-result-card{background:var(--cream);border-radius:18px;padding:23px}.lbs-builder-result-card h3{font-size:29px}.lbs-builder-result-links{display:grid;gap:10px}.lbs-builder-result-links a{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);text-decoration:none;font-weight:700}
.lbs-mosaic{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:320px 260px;gap:15px}.lbs-mosaic-card{position:relative;overflow:hidden;border-radius:var(--radius);text-decoration:none;color:#fff;min-height:240px}.lbs-mosaic-card img{width:100%;height:100%;object-fit:cover;transition:.4s}.lbs-mosaic-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(10,25,19,.73))}.lbs-mosaic-card:hover img{transform:scale(1.025)}.lbs-mosaic-card:first-child{grid-row:1/3}.lbs-mosaic-copy{position:absolute;left:22px;right:22px;bottom:19px;z-index:2}.lbs-mosaic-copy h3{margin:0 0 6px;color:#fff}.lbs-mosaic-copy p{font-size:13px;color:#e8ece9;margin:0}
.lbs-business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.lbs-business-card{padding:30px;border-radius:var(--radius);border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink);min-height:260px;display:flex;flex-direction:column}.lbs-business-card .num{font-family:var(--serif);font-size:20px;color:var(--sage);margin-bottom:auto}.lbs-business-card p{color:var(--muted)}.lbs-business-card .lbs-text-cta{margin-top:12px}
.lbs-experience-strip{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.lbs-experience-image{height:560px;border-radius:28px;overflow:hidden}.lbs-experience-image img{width:100%;height:100%;object-fit:cover}.lbs-experience-list{display:grid;gap:4px;margin:26px 0}.lbs-experience-row{display:grid;grid-template-columns:1fr auto;gap:20px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.16);color:#fff;text-decoration:none}.lbs-experience-row small{color:#b9c8c0}.lbs-dark .lbs-note{color:#bac6c0}
.lbs-story-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.lbs-story-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink)}.lbs-story-card img{width:100%;height:220px;object-fit:cover}.lbs-story-body{padding:18px}.lbs-story-body h3{font-size:27px}.lbs-story-body p{font-size:14px;color:var(--muted)}
.lbs-practical-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.lbs-practical-card{display:flex;flex-direction:column;justify-content:space-between;min-height:225px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:18px;text-decoration:none;color:var(--ink)}.lbs-practical-card h3{font-size:27px}.lbs-practical-card p{font-size:14px;color:var(--muted)}.lbs-practical-card span{font-size:13px;font-weight:800;color:var(--green)}
.lbs-page-hero{position:relative;min-height:52vh;display:flex;align-items:flex-end;overflow:hidden;background:var(--green)}.lbs-page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.lbs-page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,25,19,.08),rgba(10,25,19,.72))}.lbs-page-hero-inner{position:relative;z-index:2;color:#fff;padding-bottom:55px}.lbs-page-hero h1{font-size:clamp(48px,7vw,82px);max-width:980px}.lbs-page-hero .lbs-eyebrow{color:#d5ded8}.lbs-page-hero .lbs-lead{color:#fff;max-width:760px}.lbs-article-wrap{display:grid;grid-template-columns:minmax(0,780px) 260px;gap:70px;padding-top:72px;padding-bottom:90px}.lbs-article{font-size:18px}.lbs-article h2{font-size:42px;margin-top:54px}.lbs-article h3{font-size:29px;margin-top:34px}.lbs-article a{font-weight:650}.lbs-article-sidebar{position:sticky;top:112px;align-self:start;display:grid;gap:10px;border-left:1px solid var(--line);padding-left:22px;font-size:14px}.lbs-article-sidebar a{text-decoration:none}.lbs-callout,.lbs-disclosure,.lbs-booking-cta{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:20px 22px;margin:28px 0}.lbs-disclosure{font-size:13px}.lbs-booking-cta small{display:block;margin-top:9px;color:var(--muted)}.lbs-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px 0}.lbs-service-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:23px}.lbs-price{font-family:var(--serif);font-size:27px;color:var(--green);margin:7px 0 12px}.lbs-inquiry-form{display:grid;gap:16px}.lbs-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lbs-inquiry-form label{font-size:13px;font-weight:750}.lbs-inquiry-form input,.lbs-inquiry-form select,.lbs-inquiry-form textarea{width:100%;margin-top:7px;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:#fff;font:inherit}.lbs-consent{display:flex;align-items:flex-start;gap:10px}.lbs-consent input{width:auto;margin-top:5px}.lbs-hp{position:absolute!important;left:-9999px!important}.lbs-form-success{background:#e8f0e9;padding:18px;border-radius:12px}.lbs-admin-hint{display:inline-block;background:#fff3cd;color:#654b00;padding:8px 10px;border-radius:8px;font-size:12px}
.site-footer{background:#102f27;color:#d9e2dd;padding:58px 0 34px}.site-footer a{color:#eef3ef}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:50px}.footer-brand strong{font-family:var(--serif);font-size:31px;font-weight:500}.footer-links{display:grid;gap:8px}.footer-links a{text-decoration:none;font-size:14px}.footer-small{margin-top:42px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14);font-size:12px;color:#b8c6bf}
@media(max-width:980px){.main-navigation{display:none;position:absolute;left:0;right:0;top:76px;background:var(--paper);padding:20px;border-bottom:1px solid var(--line)}.main-navigation.is-open{display:block}.main-navigation ul{display:grid;gap:12px}.lbs-menu-toggle{display:block}.lbs-intro,.lbs-builder-result,.lbs-experience-strip,.lbs-article-wrap{grid-template-columns:1fr}.lbs-builder-grid{grid-template-columns:1fr}.lbs-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto}.lbs-mosaic-card:first-child{grid-row:auto;grid-column:1/3;min-height:420px}.lbs-business-grid{grid-template-columns:1fr}.lbs-story-grid,.lbs-practical-grid{grid-template-columns:1fr 1fr}.lbs-article-sidebar{position:static;border-left:0;border-top:1px solid var(--line);padding:24px 0 0}.footer-grid{grid-template-columns:1fr 1fr}.lbs-experience-image{height:430px}}
@media(max-width:640px){body{font-size:16px}.lbs-container{width:min(calc(100% - 28px),var(--max))}.lbs-section{padding:68px 0}.site-header-inner{height:68px}.main-navigation{top:68px}.lbs-home-hero{min-height:76vh}.lbs-home-hero-inner{padding:0 14px 50px;margin:0}.lbs-home-hero h1{font-size:56px}.lbs-section-head{display:block}.lbs-section-head>p{margin-top:12px}.lbs-mosaic{display:grid;grid-template-columns:1fr}.lbs-mosaic-card:first-child{grid-column:auto;min-height:370px}.lbs-mosaic-card{min-height:300px}.lbs-story-grid,.lbs-practical-grid,.lbs-service-grid,.lbs-form-grid{grid-template-columns:1fr}.lbs-builder{padding:22px}.lbs-page-hero{min-height:48vh}.lbs-page-hero h1{font-size:48px}.lbs-article-wrap{padding-top:48px;gap:44px}.lbs-article h2{font-size:35px}.footer-grid{grid-template-columns:1fr}.lbs-experience-image{height:340px}}

/* Affiliate slots are intentionally invisible when no approved tracking link exists. */
.lbs-affiliate-slot:empty{display:none!important}


/* ===== 3.2 editorial motion + sharper geometry ===== */
:root{--radius:8px;--radius-sm:4px;--radius-lg:10px;--ease-editorial:cubic-bezier(.22,.72,.18,1)}

/* Sharper, more editorial geometry */
.lbs-button{border-radius:4px;transition:transform .35s var(--ease-editorial),background-color .3s ease,border-color .3s ease,box-shadow .35s ease}
.lbs-button:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(18,57,46,.13)}
.lbs-hero-badge{border-radius:3px}
.lbs-builder{border-radius:8px;box-shadow:0 18px 48px rgba(27,51,42,.075)}
.lbs-choice{border-radius:4px;transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .25s var(--ease-editorial)}
.lbs-choice:hover{transform:translateY(-2px);border-color:#a9b0aa}
.lbs-builder-result-card{border-radius:6px}
.lbs-mosaic-card{border-radius:7px}
.lbs-business-card{border-radius:6px}
.lbs-experience-image{border-radius:7px}
.lbs-story-card{border-radius:6px}
.lbs-practical-card{border-radius:6px}
.lbs-callout,.lbs-disclosure,.lbs-booking-cta{border-radius:5px}
.lbs-service-card{border-radius:6px}
.lbs-inquiry-form input,.lbs-inquiry-form select,.lbs-inquiry-form textarea{border-radius:4px}
.lbs-form-success{border-radius:4px}.lbs-admin-hint{border-radius:3px}

/* Editorial navigation micro-interaction */
.main-navigation a{position:relative;padding:9px 0}
.main-navigation a:after{content:"";position:absolute;left:0;bottom:3px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease-editorial)}
.main-navigation a:hover:after,.main-navigation .current-menu-item>a:after{transform:scaleX(1);transform-origin:left}

/* Hero movement */
.lbs-home-hero>img{transform:scale(1.035);animation:lbsHeroDrift 18s ease-in-out infinite alternate;will-change:transform}
@keyframes lbsHeroDrift{0%{transform:scale(1.035) translate3d(0,0,0)}100%{transform:scale(1.075) translate3d(0,-1.2%,0)}}
.lbs-home-hero-inner .lbs-eyebrow{animation:lbsHeroUp .8s .08s both var(--ease-editorial)}
.lbs-home-hero-inner h1{animation:lbsHeroUp .95s .18s both var(--ease-editorial)}
.lbs-home-hero-inner .lbs-lead{animation:lbsHeroUp 1s .31s both var(--ease-editorial)}
.lbs-home-hero-inner .lbs-actions,.lbs-home-hero-inner .lbs-hero-badge{animation:lbsHeroUp 1s .43s both var(--ease-editorial)}
@keyframes lbsHeroUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}

/* Scroll reveal. JS adds .lbs-reveal and .is-visible. */
.lbs-reveal{opacity:0;transform:translateY(32px);transition:opacity .8s var(--ease-editorial),transform .9s var(--ease-editorial)}
.lbs-reveal.lbs-reveal-left{transform:translateX(-34px)}
.lbs-reveal.lbs-reveal-right{transform:translateX(34px)}
.lbs-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
.lbs-reveal-delay-1{transition-delay:.08s}.lbs-reveal-delay-2{transition-delay:.16s}.lbs-reveal-delay-3{transition-delay:.24s}.lbs-reveal-delay-4{transition-delay:.32s}

/* Cards move more like editorial tiles, not rounded app cards */
.lbs-mosaic-card,.lbs-story-card,.lbs-business-card,.lbs-practical-card,.lbs-service-card{transition:transform .45s var(--ease-editorial),box-shadow .45s ease,border-color .35s ease}
.lbs-business-card:hover,.lbs-practical-card:hover,.lbs-service-card:hover{transform:translateY(-7px);box-shadow:0 20px 40px rgba(20,45,36,.08);border-color:#c8c3b9}
.lbs-story-card:hover{transform:translateY(-7px);box-shadow:0 20px 42px rgba(20,45,36,.09)}
.lbs-story-card img,.lbs-experience-image img{transition:transform 1s var(--ease-editorial)}
.lbs-story-card:hover img,.lbs-experience-image:hover img{transform:scale(1.045)}
.lbs-mosaic-card img{transition:transform 1.1s var(--ease-editorial),filter .5s ease}
.lbs-mosaic-card:hover img{transform:scale(1.055);filter:saturate(1.04)}
.lbs-mosaic-copy{transition:transform .45s var(--ease-editorial)}
.lbs-mosaic-card:hover .lbs-mosaic-copy{transform:translateY(-5px)}

/* Link and experience movement */
.lbs-text-cta,.lbs-experience-row,.lbs-builder-result-links a{transition:color .3s ease,transform .35s var(--ease-editorial),padding-left .35s var(--ease-editorial)}
.lbs-experience-row:hover,.lbs-builder-result-links a:hover{padding-left:8px}
.lbs-text-cta:hover{display:inline-block;transform:translateX(4px)}

/* Planner result animates when user changes options */
.lbs-builder-result.is-changing{animation:lbsResultIn .5s var(--ease-editorial)}
@keyframes lbsResultIn{0%{opacity:.25;transform:translateY(10px)}100%{opacity:1;transform:translateY(0)}}

/* Fine section divider creates a more magazine-like rhythm */
.lbs-section:not(.lbs-soft):not(.lbs-dark)+.lbs-section:not(.lbs-soft):not(.lbs-dark){border-top:1px solid rgba(221,216,206,.52)}

/* Accessibility: do not force motion on visitors who disable it */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .lbs-reveal{opacity:1!important;transform:none!important}
  .lbs-home-hero>img{transform:none!important}
}
