/* Parking Servis Tivat — v0.2.2 soft institutional redesign */
:root{
    --soft-yellow:#ffcb08;
    --soft-yellow-dark:#bd9200;
    --soft-ink:#25282d;
    --soft-muted:#6b727c;
    --soft-bg:#f6f7f8;
    --soft-line:#e9eaec;
    --soft-radius:22px;
    --soft-shadow:0 18px 50px rgba(28,34,43,.08);
}
body.pst-home-page{overflow-x:hidden;background:#fff}

/* Header: fewer visible items, more breathing space */
.header-v022{overflow:visible!important;background:#fff!important;border-bottom:0!important;box-shadow:none!important;position:relative;z-index:90}
.header-v022-inner{width:min(1320px,calc(100% - 48px))!important;min-height:110px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:36px!important;padding:0!important;overflow:visible!important}
.header-v022-brand{margin-left:0!important;min-height:110px!important;gap:12px!important;flex:0 0 auto!important}
.header-v022 .pst-mark-wrap{width:148px!important;height:136px!important;margin:-14px 0 -26px!important;padding:10px 12px!important;border-radius:0 0 50% 50%!important;border:0!important;box-shadow:0 15px 30px rgba(24,28,34,.10)!important;background:#fff!important;animation:pstSoftFloat 5.5s ease-in-out infinite!important}
.header-v022 .pst-main-logo{width:124px!important}
.header-v022 .municipality-logo-wrap{width:48px!important;min-width:48px!important;padding-left:10px!important;border-left:1px solid #ececef!important}
.header-v022 .municipality-logo{width:38px!important;max-height:52px!important;object-fit:contain!important}
.header-v022-menu{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:nowrap!important;gap:28px!important;padding:0!important;margin-left:auto!important}
.header-v022-menu>a,.header-v022-menu>.header-more>summary{position:relative!important;display:inline-flex!important;align-items:center!important;min-height:48px!important;padding:0!important;border-radius:0!important;background:transparent!important;color:#24272c!important;font-size:13px!important;font-weight:750!important;letter-spacing:.08em!important;text-transform:uppercase!important;white-space:nowrap!important;cursor:pointer!important;list-style:none!important}
.header-v022-menu>.header-more>summary::-webkit-details-marker{display:none}
.header-v022-menu>a:after,.header-v022-menu>.header-more>summary:after{content:""!important;position:absolute!important;left:50%!important;right:50%!important;bottom:-31px!important;height:3px!important;background:var(--soft-yellow)!important;transition:left .22s ease,right .22s ease!important}
.header-v022-menu>a:hover:after,.header-v022-menu>a.active:after,.header-v022-menu>.header-more[open]>summary:after,.header-v022-menu>.header-more>summary:hover:after{left:0!important;right:0!important}
.header-v022-menu>a:hover,.header-v022-menu>a.active,.header-v022-menu>.header-more>summary:hover{color:#111!important}
.header-more{position:relative}
.header-more-menu{position:absolute;top:calc(100% + 28px);right:0;width:230px;padding:10px;background:#fff;border:1px solid var(--soft-line);border-radius:16px;box-shadow:0 22px 54px rgba(22,27,34,.14);z-index:110}
.header-more-menu a{display:block!important;padding:12px 14px!important;border-radius:10px!important;color:#31343a!important;font-size:13px!important;font-weight:750!important;letter-spacing:.02em!important;text-transform:none!important}
.header-more-menu a:hover,.header-more-menu a.active{background:#f5f5f6!important;color:#111!important}
@keyframes pstSoftFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}

/* Full-width hero inspired by the reference, original Parking Servis execution */
.home-v022{background:#fff}
.soft-hero{position:relative;min-height:410px;background-image:var(--hero-image);background-position:center 48%;background-size:cover;overflow:hidden}
.soft-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,26,32,.52) 0%,rgba(22,26,32,.18) 55%,rgba(22,26,32,.05) 100%)}
.soft-hero-inner{position:relative;z-index:1;min-height:410px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding-top:38px}
.soft-hero-kicker{display:inline-block;margin-bottom:13px;color:#fff;font-size:12px;font-weight:850;letter-spacing:.16em;text-transform:uppercase;text-shadow:0 2px 12px rgba(0,0,0,.22)}
.soft-hero h1{margin:0;color:#fff;font-size:clamp(48px,5vw,76px);line-height:.98;font-weight:850;letter-spacing:-.045em;text-shadow:0 4px 28px rgba(0,0,0,.24)}

.soft-section{padding:78px 0}
.soft-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px;border-bottom:1px solid var(--soft-line)}
.soft-section-title>a{margin-bottom:14px;color:#31343a;font-size:14px;font-weight:750;border-bottom:2px solid var(--soft-yellow);padding-bottom:4px}
.soft-section-title>a span,.soft-read-link span{color:var(--soft-yellow-dark)}
.soft-title-tab{display:inline-flex;align-items:center;min-height:58px;padding:0 24px;background:var(--soft-yellow);color:#fff;font-size:20px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:12px 12px 0 0}
.soft-title-simple{border-bottom:0;align-items:center}
.soft-title-simple small,.soft-split-copy>small,.soft-about-copy>small,.soft-doc-inner small{display:block;margin-bottom:8px;color:var(--soft-yellow-dark);font-size:12px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.soft-title-simple h2,.soft-split-copy h2,.soft-about-copy h2,.soft-doc-inner h2{margin:0;color:var(--soft-ink);font-size:clamp(32px,3.6vw,50px);line-height:1.04;letter-spacing:-.045em}
.soft-title-center{justify-content:center;text-align:center}

.soft-notices{padding-top:64px}
.soft-notice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.soft-notice-card{display:flex;flex-direction:column;min-height:310px;padding:24px;background:#f3f3f4;border:1px solid #eeeeef;border-radius:18px;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.soft-notice-card:hover{transform:translateY(-5px);background:#fff;box-shadow:var(--soft-shadow)}
.soft-notice-top{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start;margin-bottom:18px}
.soft-notice-top img{width:72px;height:72px;border-radius:50%;object-fit:cover;background:#fff;border:6px solid rgba(255,255,255,.72)}
.soft-notice-card time,.soft-news-card time{display:block;margin-bottom:5px;color:var(--soft-yellow-dark);font-size:12px;font-weight:850;letter-spacing:.04em}
.soft-notice-card h2{margin:0;font-size:18px;line-height:1.2;letter-spacing:-.018em;color:var(--soft-ink)}
.soft-notice-card p{margin:0 0 18px;color:#515761;font-size:14.5px;line-height:1.55}
.soft-read-link{display:inline-flex;align-items:center;gap:7px;margin-top:auto;color:#282b30;font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}

.soft-quick{padding:0 0 30px}
.soft-quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.soft-quick-grid a{display:grid;grid-template-columns:46px 1fr;grid-template-rows:auto auto;column-gap:14px;padding:20px 22px;background:#fff;border:1px solid var(--soft-line);border-radius:18px;box-shadow:0 9px 28px rgba(28,34,43,.045);transition:.22s ease}
.soft-quick-grid a:hover{transform:translateY(-3px);box-shadow:var(--soft-shadow);border-color:#dedfe2}
.soft-quick-grid a>span{grid-row:1/3;display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#fff3bf;color:#7e6200;font-size:12px;font-weight:900}
.soft-quick-grid strong{color:var(--soft-ink);font-size:16px;line-height:1.1}
.soft-quick-grid small{color:var(--soft-muted);font-size:12.5px}

.soft-news{background:var(--soft-bg)}
.soft-news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.soft-news-card{overflow:hidden;background:#fff;border-radius:22px;box-shadow:0 12px 36px rgba(28,34,43,.06);transition:transform .25s ease,box-shadow .25s ease}
.soft-news-card:hover{transform:translateY(-5px);box-shadow:var(--soft-shadow)}
.soft-news-image{display:block;height:210px;overflow:hidden;background:#e9eaec}
.soft-news-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.soft-news-card:hover .soft-news-image img{transform:scale(1.035)}
.soft-news-body{display:flex;flex-direction:column;min-height:250px;padding:24px}
.soft-news-body h3{margin:0 0 10px;color:var(--soft-ink);font-size:22px;line-height:1.16;letter-spacing:-.025em}
.soft-news-body p{margin:0 0 20px;color:var(--soft-muted);font-size:14.5px;line-height:1.6}

.soft-doc-band{padding:52px 0;background:#3e4146;color:#fff}
.soft-doc-inner{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center}
.soft-doc-inner small{color:#e9c84a}.soft-doc-inner h2{color:#fff;font-size:clamp(28px,3vw,42px)}
.soft-doc-links{display:flex;gap:12px;flex-wrap:wrap}
.soft-doc-links a{min-width:140px;padding:15px 20px;text-align:center;background:#fff;color:#292c31;border-radius:14px;font-size:13px;font-weight:850;box-shadow:0 10px 22px rgba(0,0,0,.13);transition:.22s ease}
.soft-doc-links a:hover{transform:translateY(-3px);background:var(--soft-yellow)}

.soft-services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.soft-services-grid a{position:relative;padding:30px;background:#fff;border:1px solid var(--soft-line);border-radius:22px;box-shadow:0 10px 32px rgba(28,34,43,.05);transition:.22s ease;overflow:hidden}
.soft-services-grid a:after{content:"";position:absolute;width:120px;height:120px;right:-58px;bottom:-58px;border-radius:50%;background:rgba(255,203,8,.14)}
.soft-services-grid a:hover{transform:translateY(-5px);box-shadow:var(--soft-shadow)}
.soft-services-grid span{display:inline-flex;margin-bottom:36px;color:var(--soft-yellow-dark);font-size:12px;font-weight:900;letter-spacing:.12em}
.soft-services-grid h3{margin:0 0 10px;color:var(--soft-ink);font-size:25px;line-height:1.1;letter-spacing:-.03em}
.soft-services-grid p{position:relative;z-index:1;margin:0;color:var(--soft-muted);font-size:15px}

.soft-map{background:var(--soft-bg)}
.soft-split-card,.soft-about-card{display:grid;grid-template-columns:.9fr 1.1fr;overflow:hidden;background:#fff;border-radius:28px;box-shadow:var(--soft-shadow)}
.soft-split-copy{padding:42px}
.soft-split-copy p,.soft-about-copy p{color:var(--soft-muted);font-size:16.5px;line-height:1.75}
.soft-location-list{display:grid;margin-top:24px;border-top:1px solid var(--soft-line)}
.soft-location-list a{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--soft-line)}
.soft-location-list strong{color:var(--soft-ink)}.soft-location-list span{color:var(--soft-muted);font-size:13px;font-weight:700}
.soft-split-image{min-height:420px;background:#eceef0}.soft-split-image img{width:100%;height:100%;object-fit:cover}.soft-split-image img[src$=".svg"]{object-fit:contain;padding:30px}
.soft-about-card{grid-template-columns:1fr 1fr}
.soft-about-image{min-height:410px;background:#eceef0}.soft-about-image img{width:100%;height:100%;object-fit:cover}.soft-about-image img[src$=".svg"]{object-fit:contain;padding:30px}
.soft-about-copy{display:flex;flex-direction:column;justify-content:center;padding:46px}
.soft-about-copy .soft-read-link{margin-top:18px;align-self:flex-start}

.soft-gallery{padding-top:46px}
.soft-gallery-grid{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:16px}
.soft-gallery-grid img{width:100%;height:290px;object-fit:cover;border-radius:20px;box-shadow:0 10px 28px rgba(28,34,43,.07);transition:transform .4s ease,box-shadow .4s ease}
.soft-gallery-grid img:hover{transform:translateY(-4px) scale(1.01);box-shadow:var(--soft-shadow)}

/* Reveal support for the new components */
.reveal-ready .home-v022 [data-reveal] .soft-notice-card,
.reveal-ready .home-v022 [data-reveal] .soft-quick-grid a,
.reveal-ready .home-v022 [data-reveal] .soft-news-card,
.reveal-ready .home-v022 [data-reveal] .soft-services-grid a,
.reveal-ready .home-v022 [data-reveal] .soft-split-card,
.reveal-ready .home-v022 [data-reveal] .soft-about-card,
.reveal-ready .home-v022 [data-reveal] .soft-gallery-grid img{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.18,.82,.22,1),box-shadow .25s ease}
.reveal-ready .home-v022 [data-reveal].is-visible .soft-notice-card,
.reveal-ready .home-v022 [data-reveal].is-visible .soft-quick-grid a,
.reveal-ready .home-v022 [data-reveal].is-visible .soft-news-card,
.reveal-ready .home-v022 [data-reveal].is-visible .soft-services-grid a,
.reveal-ready .home-v022 [data-reveal].is-visible .soft-split-card,
.reveal-ready .home-v022 [data-reveal].is-visible .soft-about-card,
.reveal-ready .home-v022 [data-reveal].is-visible .soft-gallery-grid img{opacity:1;transform:translateY(0)}

@media(max-width:1360px){
    .header-v022-inner{width:min(1240px,calc(100% - 40px))!important;gap:24px!important}
    .header-v022-menu{gap:19px!important}
    .header-v022-menu>a,.header-v022-menu>.header-more>summary{font-size:12px!important;letter-spacing:.055em!important}
    .header-v022 .pst-mark-wrap{width:138px!important;height:126px!important}.header-v022 .pst-main-logo{width:114px!important}
}
@media(max-width:1120px){
    .header-v022-menu{gap:13px!important}
    .header-v022-menu>a,.header-v022-menu>.header-more>summary{font-size:11.5px!important;letter-spacing:.035em!important}
    .header-v022 .municipality-logo-wrap{display:none!important}
    .soft-notice-grid,.soft-news-grid{grid-template-columns:repeat(2,1fr)}
    .soft-notice-card:last-child,.soft-news-card:last-child{grid-column:1/-1}
    .soft-quick-grid{grid-template-columns:repeat(2,1fr)}
    .soft-doc-inner,.soft-split-card,.soft-about-card{grid-template-columns:1fr}
    .soft-split-image,.soft-about-image{min-height:340px}
}
@media(max-width:980px){
    .header-v022-inner{min-height:84px!important;width:calc(100% - 28px)!important;padding:0!important}
    .header-v022-brand{min-height:84px!important}
    .header-v022 .pst-mark-wrap{width:112px!important;height:102px!important;margin:-8px 0 -18px!important;border-radius:0 0 42% 42%!important}
    .header-v022 .pst-main-logo{width:91px!important}
    .header-v022 .mobile-menu-toggle{display:flex!important;position:relative!important;right:auto!important;top:auto!important;margin-left:auto!important;z-index:130!important}
    .header-v022-menu{display:flex!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;width:min(76vw,410px)!important;height:100dvh!important;padding:110px 28px 34px!important;background:#fff!important;box-shadow:-22px 0 60px rgba(16,20,27,.18)!important;transform:translateX(105%)!important;transition:transform .32s cubic-bezier(.2,.78,.2,1)!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;overflow-y:auto!important;z-index:120!important}
    body.mobile-menu-open .header-v022-menu{transform:translateX(0)!important}
    .header-v022-menu>a,.header-v022-menu>.header-more>summary{display:flex!important;min-height:52px!important;padding:0 4px!important;border-bottom:1px solid #ececef!important;font-size:14px!important;letter-spacing:.055em!important}
    .header-v022-menu>a:after,.header-v022-menu>.header-more>summary:after{display:none!important}
    .header-more{width:100%}.header-more-menu{position:static;width:100%;padding:4px 0 10px;border:0;border-radius:0;box-shadow:none}.header-more-menu a{padding:10px 14px!important;background:#f6f6f7;margin-top:4px}
    .soft-hero,.soft-hero-inner{min-height:330px}.soft-hero h1{font-size:clamp(42px,8vw,60px)}
    .soft-services-grid{grid-template-columns:1fr 1fr}.soft-services-grid a:last-child{grid-column:1/-1}
    .soft-gallery-grid{grid-template-columns:1fr 1fr}.soft-gallery-grid img:first-child{grid-column:1/-1}
}
@media(max-width:680px){
    .header-v022-inner{width:calc(100% - 22px)!important}.header-v022-menu{width:min(82vw,390px)!important;padding:96px 22px 28px!important}
    .soft-hero,.soft-hero-inner{min-height:285px}.soft-hero-inner{padding-top:18px}.soft-hero-kicker{font-size:10px}.soft-hero h1{font-size:40px}
    .soft-section{padding:56px 0}.soft-notices{padding-top:44px}.soft-section-title{align-items:flex-start;flex-direction:column;margin-bottom:24px}.soft-section-title>a{margin-bottom:10px}.soft-title-tab{min-height:50px;padding:0 18px;font-size:17px}
    .soft-notice-grid,.soft-news-grid,.soft-services-grid,.soft-quick-grid,.soft-gallery-grid{grid-template-columns:1fr}.soft-notice-card:last-child,.soft-news-card:last-child,.soft-services-grid a:last-child,.soft-gallery-grid img:first-child{grid-column:auto}
    .soft-notice-card{min-height:auto}.soft-notice-top{grid-template-columns:58px 1fr}.soft-notice-top img{width:58px;height:58px}
    .soft-quick{padding-bottom:10px}.soft-quick-grid a{padding:16px}
    .soft-news-image{height:200px}.soft-news-body{min-height:auto}
    .soft-doc-band{padding:42px 0}.soft-doc-links{display:grid;grid-template-columns:1fr;width:100%}.soft-doc-links a{width:100%}
    .soft-services-grid a{padding:25px}.soft-services-grid span{margin-bottom:24px}
    .soft-split-copy,.soft-about-copy{padding:28px}.soft-split-image,.soft-about-image{min-height:280px}.soft-location-list a{align-items:flex-start;flex-direction:column;gap:2px}
    .soft-gallery-grid img{height:235px}
}
@media(prefers-reduced-motion:reduce){.header-v022 .pst-mark-wrap{animation:none!important}}


/* v0.2.2e — center the Municipality of Tivat emblem */
.header-v022 .municipality-logo-wrap{
    width:56px!important;
    min-width:56px!important;
    height:70px!important;
    padding:0!important;
    margin-left:2px!important;
    border-left:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    align-self:center!important;
    background:#fff!important;
}
.header-v022 .municipality-logo{
    display:block!important;
    width:39px!important;
    height:52px!important;
    max-height:52px!important;
    margin:0!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
}
@media (max-width:1180px){
    .header-v022 .municipality-logo-wrap{display:none!important}
}
