/* Capitol Apartmani — contemporary refresh */
:root{--ink:#22332a;--ink-soft:#47584e;--charcoal:#19392f;--gold:#d68a68;--gold-dark:#b86d4d;--sand:#edf1e9;--cream:#f7f8f4;--white:#fff;--muted:#69786d;--line:rgba(34,51,42,.12);--shadow:0 20px 60px rgba(28,54,43,.12);--radius:20px;--container:1280px;--serif:'Manrope','DM Sans',Arial,sans-serif;--sans:'DM Sans',Arial,sans-serif}
html{scroll-behavior:smooth}body{color:var(--ink);background:var(--cream);font-family:var(--sans);font-size:15px;line-height:1.7}h1,h2,h3{font-family:var(--serif);font-weight:700;letter-spacing:-.045em;color:var(--ink)}h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1.12}.container{width:min(calc(100% - 52px),var(--container))}.section{padding:clamp(72px,9vw,120px) 0}.eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:17px;color:var(--gold-dark);font-size:.66rem;letter-spacing:.18em;font-weight:800}.eyebrow__dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold)}.eyebrow--dark{color:#607267}.section-heading{margin-bottom:42px}.section-heading h2{max-width:780px}.button{min-height:50px;padding:13px 21px;border:1px solid transparent;border-radius:999px;font-size:.72rem;letter-spacing:.04em;text-transform:none;font-weight:700;gap:12px}.button--gold{color:#fff;background:#315845;border-color:#315845}.button--gold:hover{color:#fff;background:#244b39;border-color:#244b39}.button--glass{color:var(--ink);background:rgba(255,255,255,.72);border-color:rgba(34,51,42,.15);backdrop-filter:blur(8px)}.button--glass:hover{color:white;background:var(--charcoal);border-color:var(--charcoal)}.button--outline,.button--outline-dark{border-color:var(--line);border-radius:999px;background:transparent;color:var(--ink)}.button--outline:hover,.button--outline-dark:hover{color:white;background:var(--charcoal);border-color:var(--charcoal)}.button--small{min-height:40px}.text-link{font-size:.73rem;letter-spacing:.03em;text-transform:none}.text-link span{color:var(--gold-dark)}
/* Header */
.topbar{color:#ecf2ed;background:#2d5341;border:0;font-size:.69rem}.topbar__inner{min-height:33px}.topbar__links{gap:24px}.topbar a:hover{color:#f1bc9d}.site-header,.site-header.is-scrolled{height:78px;color:var(--ink);background:rgba(250,251,248,.96);border-bottom:1px solid rgba(34,51,42,.08);box-shadow:0 8px 28px rgba(31,54,42,.04);backdrop-filter:blur(16px)}.site-header__inner{gap:28px}.brand img{width:205px}.primary-nav{gap:clamp(16px,2vw,29px)}.primary-nav>a:not(.button){color:#344b3d;font-size:.68rem;letter-spacing:.06em;text-transform:none}.primary-nav>a:not(.button)::after{bottom:3px;height:2px;background:var(--gold)}.nav-booking{min-height:43px;padding:10px 19px}.menu-toggle span:not(.sr-only){height:2px;background:var(--charcoal);border-radius:2px}.primary-nav>a.is-active:not(.button){color:#b66e50}
/* Split hero */
.home-hero{position:relative;display:block;min-height:0;padding:58px 0 90px;color:var(--ink);background:radial-gradient(ellipse at 2% 2%,#e7ede4 0,transparent 38%),var(--cream);overflow:hidden}.home-hero::after{display:none}.home-hero__grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:center;gap:clamp(38px,7vw,100px)}.home-hero__content{position:relative;z-index:2;padding:10px 0 24px}.home-hero h1{max-width:670px;margin:0 0 24px;color:var(--ink);font-size:clamp(3.4rem,6vw,6.2rem);line-height:.99;letter-spacing:-.065em}.home-hero__content>p{max-width:540px;margin-bottom:29px;color:#67776b;font-size:clamp(1rem,1.35vw,1.16rem);line-height:1.8}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-actions .button{min-height:54px;padding-inline:24px}.home-hero__facts{display:flex;gap:25px;flex-wrap:wrap;margin-top:37px;padding-top:22px;border-top:1px solid rgba(34,51,42,.12)}.home-hero__facts span{display:flex;align-items:center;gap:9px;color:#536358;font-size:.72rem;font-weight:600}.home-hero__facts i{display:grid;width:25px;height:25px;place-items:center;border:1px solid rgba(199,123,90,.45);border-radius:50%;color:#a8694c;font-size:.56rem;font-style:normal;font-weight:800}.home-hero__visual{position:relative;min-width:0;padding:0 24px 25px 0}.home-hero__photo-wrap{position:relative;height:clamp(420px,47vw,600px);overflow:hidden;border-radius:26px 140px 26px 26px;background:#e5e6de;box-shadow:0 28px 70px rgba(35,60,47,.16)}.home-hero__photo-wrap::after{position:absolute;inset:0;border:1px solid rgba(255,255,255,.26);border-radius:inherit;content:"";pointer-events:none}.home-hero__photo{width:100%;height:100%;object-fit:cover;object-position:58% center;transform:scale(1.01)}.home-hero__location-card{position:absolute;left:-44px;bottom:62px;display:flex;align-items:center;gap:13px;max-width:310px;padding:16px 19px;background:#fff;border:1px solid rgba(34,51,42,.07);border-radius:15px;box-shadow:0 15px 45px rgba(28,54,43,.14)}.location-pin{display:grid;width:39px;height:39px;flex:0 0 39px;place-items:center;color:#fff;background:#315845;border-radius:50%;font-size:1.1rem}.home-hero__location-card div{display:grid;gap:2px}.home-hero__location-card small{color:#819087;font-size:.53rem;letter-spacing:.12em;font-weight:800}.home-hero__location-card strong{font-size:.75rem;color:var(--ink)}.location-arrow{margin-left:auto;color:var(--gold-dark);font-size:1.05rem}.home-hero__vertical{position:absolute;right:0;top:26px;writing-mode:vertical-rl;color:#66786a;font-size:.54rem;font-weight:800;letter-spacing:.2em}.home-hero__ornament{position:absolute;z-index:0;top:50%;right:auto;bottom:auto;left:-4rem;color:rgba(49,88,69,.075);font:700 clamp(25rem,42vw,39rem)/1 Georgia,serif;pointer-events:none;transform:translateY(-47%)}
/* Availability panel */
.booking-strip{position:relative;z-index:10;margin:0;padding:0 0 36px;background:var(--cream)}.booking-form{display:grid;grid-template-columns:1.18fr repeat(4,minmax(125px,1fr)) auto;align-items:center;gap:0;padding:17px 18px;background:#fff;border:1px solid rgba(34,51,42,.08);border-radius:18px;box-shadow:0 18px 50px rgba(32,58,44,.10)}.booking-form__heading{display:grid;gap:3px;padding:8px 18px}.booking-form__heading span{color:#a87459;font-size:.57rem;letter-spacing:.15em;font-weight:800}.booking-form__heading strong{color:var(--ink);font-size:.94rem}.booking-form label{display:flex;min-height:57px;flex-direction:column;justify-content:center;padding:0 15px;border-left:1px solid var(--line)}.booking-form label span{margin-bottom:5px;color:#869087;font-size:.56rem;letter-spacing:.1em;font-weight:800;text-transform:uppercase}.booking-form input,.booking-form select{width:100%;padding:0;color:#293c30;background:transparent;border:0;outline:0;font-size:.77rem;font-weight:600}.booking-form .button{min-width:157px;min-height:48px;padding:10px 17px;white-space:nowrap}
/* Page builder and cards */
.cms-section--cream{background:#fbfcf9}.cms-section--sand,.section--sand,.cms-section--sand{background:#edf1e9}.cms-section--dark{color:#f7f8f4;background:#1b3a30}.cms-section--dark h2,.cms-section--dark h3{color:#fff}.cms-section--dark .rich-text,.cms-section--dark p{color:#d4e0d7}.cms-section--dark .eyebrow--dark{color:#e6aa8c}.section-heading h2,.cms-copy h2{color:var(--ink)}.cms-split{gap:clamp(35px,7vw,92px)}.cms-split__image,.cms-split__image img{border-radius:20px}.cms-split__image{overflow:hidden;box-shadow:var(--shadow)}.cms-features{gap:15px}.cms-feature{min-height:250px;padding:27px;background:#fff;border:1px solid rgba(34,51,42,.08);border-radius:17px;box-shadow:0 12px 35px rgba(25,52,39,.04)}.cms-feature>span{display:grid;width:38px;height:38px;place-items:center;color:#a76a4d;background:#f6e7dd;border-radius:50%;font-size:.67rem}.cms-feature h3{font-size:1.18rem}.cms-gallery__item,.cms-gallery__item img{border-radius:15px}.cms-gallery__item{overflow:hidden}.cms-gallery__item img{transition:transform .5s ease}.cms-gallery__item:hover img{transform:scale(1.035)}.cms-cta{min-height:570px;background-image:linear-gradient(90deg,rgba(20,48,37,.82),rgba(20,48,37,.32)),var(--hero-image);border-radius:0}.cms-cta__inner h2{color:white}.cms-cta__inner p{color:#e5ece6}.cms-stats>div{border-color:rgba(34,51,42,.12)}
.apartment-card,.event-card{overflow:hidden;border-radius:19px;background:#fff;box-shadow:0 14px 40px rgba(24,50,37,.08);transition:transform .35s ease,box-shadow .35s ease}.apartment-card:hover,.event-card:hover{transform:translateY(-5px);box-shadow:0 24px 55px rgba(24,50,37,.14)}.apartment-card__image,.event-card__image{overflow:hidden}.apartment-card__body,.event-card__body{padding:25px 28px}.apartment-card__price{background:#315845;border-radius:0 0 0 14px;color:white}.apartment-card__meta{color:#78857c}.apartment-card h3,.event-card h3{color:var(--ink);font-size:1.45rem}.apartment-card p,.event-card p{color:#718076}.apartment-card__actions{gap:15px}.benefit{background:#fff;border-radius:16px;border:1px solid rgba(34,51,42,.08)}.benefit svg{color:#4e755d}.destination-section{background:#e9efe7}.destination-section__image{overflow:hidden}.destination-section__content{max-width:700px;padding:clamp(45px,7vw,90px)}.destination-section h2{color:#20382c}.closing-cta{border-radius:0;background-image:linear-gradient(90deg,rgba(18,51,37,.74),rgba(18,51,37,.4)),var(--hero-image)}.closing-cta h2{color:#fff}.closing-cta p{color:#e4ece6}
/* Internal pages */
.page-hero{min-height:420px;background-image:linear-gradient(90deg,rgba(22,51,38,.78),rgba(22,51,38,.32)),var(--hero-image)}.page-hero h1{color:#fff}.page-hero p{color:#e4ece6}.detail-hero{background:#edf1e9}.detail-hero h1{color:var(--ink)}.detail-facts{color:#637269}.gallery-grid{border-radius:20px;overflow:hidden}.gallery-grid__item,.gallery-more__item{border-radius:12px;overflow:hidden}.booking-card,.form-card,.reservation-form-wrap,.reservation-sidebar{border-radius:18px;background:#fff;box-shadow:0 16px 50px rgba(29,52,39,.08)}.booking-card__price strong{color:#315845}.reservation-hero{background:#1c3b31}.reservation-sidebar{overflow:hidden;background:#edf1e9}.site-form input,.site-form select,.site-form textarea{background:#f7f8f4;border-color:rgba(34,51,42,.15);border-radius:9px}.site-form input:focus,.site-form select:focus,.site-form textarea:focus{border-color:#527960;box-shadow:0 0 0 3px rgba(82,121,96,.12)}.price-preview{background:#edf1e9;border-radius:10px}.alert--success{border-radius:10px}.alert--error{border-radius:10px}
/* Footer and utilities */
.site-footer{padding-top:70px;color:#dfe9e1;background:#18382e}.site-footer h2{color:#fff}.footer-links{color:#c2d0c5}.footer-links a:hover,.footer-bottom a:hover{color:#f1b391}.footer-cta{border-color:rgba(255,255,255,.14)}.footer-cta h2{color:#fff}.footer-bottom{color:#9db0a2;border-color:rgba(255,255,255,.13)}.social-links a{border-color:rgba(255,255,255,.25);border-radius:50%}.whatsapp-button{box-shadow:0 8px 24px rgba(25,56,42,.25)}.reveal{transform:translateY(18px)}
@media(max-width:1100px){.booking-form{grid-template-columns:repeat(2,1fr);gap:0;padding:18px}.booking-form__heading{grid-column:1/-1;padding:10px 14px 17px}.booking-form label{min-height:72px;border-left:0;border-top:1px solid var(--line);padding:12px}.booking-form label:nth-of-type(odd){border-right:1px solid var(--line)}.booking-form .button{grid-column:1/-1;margin-top:12px}.home-hero__grid{gap:35px}.home-hero h1{font-size:clamp(3.2rem,6vw,5.2rem)}.topbar{display:block}.footer-grid{gap:35px}}
@media(max-width:900px){.topbar{display:none}.site-header,.site-header.is-scrolled{height:72px}.brand img{width:185px}.primary-nav{position:fixed;top:72px;background:#f7f8f4}.primary-nav.is-open{box-shadow:0 14px 30px rgba(25,52,39,.13)}.primary-nav>a:not(.button){color:#20392e;border-color:rgba(34,51,42,.1)}.home-hero{padding:44px 0 70px}.home-hero__grid{grid-template-columns:1fr 1fr}.home-hero__photo-wrap{height:460px;border-radius:22px 100px 22px 22px}.home-hero__location-card{left:-30px;bottom:45px}.booking-strip{padding-bottom:28px}.cms-split{gap:38px}.destination-section__content{padding:55px 5vw}}
@media(max-width:680px){.container{width:min(calc(100% - 30px),var(--container))}.section{padding:72px 0}.topbar{display:none}.home-hero{padding:38px 0 52px}.home-hero__grid{grid-template-columns:1fr;gap:28px}.home-hero__content{padding:0}.home-hero h1{font-size:clamp(3rem,13.3vw,4.45rem);margin-bottom:17px}.home-hero__content>p{font-size:.96rem;line-height:1.75;margin-bottom:23px}.hero-actions{display:flex;flex-direction:column;align-items:stretch}.hero-actions .button{width:100%;min-height:50px}.home-hero__facts{gap:12px 20px;margin-top:24px;padding-top:17px}.home-hero__facts span{font-size:.67rem}.home-hero__visual{padding:0 10px 23px 0}.home-hero__photo-wrap{height:370px;border-radius:20px 86px 20px 20px}.home-hero__photo{object-position:57% center}.home-hero__location-card{left:10px;bottom:42px;max-width:calc(100% - 10px);padding:12px 14px}.home-hero__vertical{right:-7px;top:15px}.home-hero__ornament{font-size:20rem;bottom:-90px}.booking-strip{padding-bottom:24px}.booking-form{grid-template-columns:1fr 1fr;padding:13px;border-radius:15px}.booking-form__heading{grid-column:1/-1;padding:8px 9px 13px}.booking-form__heading strong{font-size:.88rem}.booking-form label{min-height:66px;padding:10px 8px}.booking-form label:nth-of-type(odd){border-right:0}.booking-form label:nth-of-type(even){border-left:1px solid var(--line)}.booking-form .booking-form__apartment{grid-column:1/-1;border-left:0;border-right:0;border-top:1px solid var(--line)}.booking-form .button{grid-column:1/-1;width:100%;min-width:0;white-space:normal}.section-heading{margin-bottom:28px}.section-heading h2{font-size:2.35rem}.apartment-grid,.apartment-grid--all{grid-template-columns:1fr;gap:18px}.apartment-card__body,.event-card__body{padding:21px}.benefits-grid{grid-template-columns:1fr}.benefit{border:1px solid var(--line)!important;border-radius:15px}.cms-features{grid-template-columns:1fr}.cms-feature{min-height:0;padding:23px}.cms-feature>span{margin-bottom:24px}.cms-split,.cms-split--image-left{grid-template-columns:1fr;gap:26px}.cms-split--image-left .cms-split__image,.cms-split--image-left .cms-split__content{grid-column:auto;grid-row:auto}.cms-split--image-left .cms-split__image{order:2}.cms-split__image,.cms-split__image img{min-height:300px}.cms-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.cms-gallery__item{border-radius:10px}.cms-cta{min-height:490px;border-radius:0}.cms-cta__inner h2{font-size:3rem}.destination-section{grid-template-columns:1fr}.destination-section__image{height:320px}.destination-section__content{padding:48px 22px}.page-hero{min-height:350px}.page-hero__inner{padding-bottom:40px}.page-hero h1{font-size:2.7rem}.content-intro{display:block}.content-intro>p{margin-top:18px}.detail-hero{padding-top:40px}.detail-hero h1{font-size:2.6rem}.gallery-grid{height:auto;grid-template-columns:1fr;grid-template-rows:auto}.gallery-grid__item,.gallery-grid__item--main{grid-row:auto;aspect-ratio:4/3}.gallery-more__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.apartment-detail__grid,.event-detail__body,.contact-grid,.reservation-grid{grid-template-columns:1fr;gap:28px}.booking-card{position:static}.reservation-sidebar{display:block}.reservation-sidebar>img{height:auto}.reservation-hero{padding:65px 0 80px}.reservation-hero h1{font-size:2.85rem}.reservation-form-wrap,.form-card{padding:25px 18px}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:31px;padding-bottom:40px}.footer-cta{grid-column:auto;padding:27px 0 0;border-left:0;border-top:1px solid rgba(255,255,255,.14)}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}.whatsapp-button{right:15px;bottom:15px;width:50px;height:50px}}

.site-header .brand img{width:var(--logo-width,128px)!important;max-width:min(var(--logo-width,128px),36vw)!important;height:auto!important}
.footer-brand img{width:var(--logo-width,195px)!important;max-width:100%!important;height:auto!important}

/* Refined layered backgrounds */
body{background-color:#f7f8f4;background-image:radial-gradient(ellipse 760px 520px at 8% 8%,rgba(214,138,104,.075),transparent 72%),radial-gradient(ellipse 900px 620px at 92% 43%,rgba(49,88,69,.07),transparent 72%),linear-gradient(180deg,#f8f9f6 0%,#f1f4ef 48%,#f8f7f3 100%);background-attachment:fixed}
.home-hero{background:radial-gradient(ellipse at 84% 14%,rgba(214,138,104,.12),transparent 34rem),radial-gradient(ellipse at 8% 82%,rgba(49,88,69,.10),transparent 38rem),linear-gradient(132deg,#f8f9f6 0%,#edf2ec 57%,#f7f5ef 100%)}
.home-hero::before{position:absolute;inset:0;z-index:1;content:"";pointer-events:none;background:radial-gradient(circle at 16% 25%,rgba(255,255,255,.66) 0 1px,transparent 1.5px);background-size:26px 26px;opacity:.2;mask-image:linear-gradient(90deg,#000,transparent 58%)}
.home-hero__grid{z-index:2}
.booking-strip{background:linear-gradient(180deg,rgba(237,241,233,.52),#f7f8f4 90%)}
.cms-section--cream{background:linear-gradient(145deg,#fbfcf9 0%,#f5f7f2 100%)}
.cms-section--sand,.section--sand,.cms-section--sand{background:radial-gradient(ellipse at 88% 15%,rgba(255,255,255,.72),transparent 42rem),linear-gradient(132deg,#eef2eb 0%,#e7ede5 100%)}
.cms-section--dark,.destination-section{background:radial-gradient(ellipse at 85% 5%,rgba(214,138,104,.12),transparent 36rem),linear-gradient(132deg,#19392f 0%,#315744 56%,#1d4034 100%)}
@media(max-width:680px){body{background-attachment:scroll}.home-hero::before{background-size:32px 32px;opacity:.14}}

.apartment-detail__content h2{font-size:clamp(1.35rem,1.8vw,1.65rem);line-height:1.5;letter-spacing:-.02em;font-weight:600}

.brand-marquee{position:relative;overflow:hidden;padding-block:12px;background:#edf1e9;border-top:1px solid rgba(34,51,42,.08);border-bottom:1px solid rgba(34,51,42,.08);color:#315845}
.brand-marquee__track{display:flex;width:max-content;animation:capitol-marquee 42s linear infinite}
.brand-marquee__group{display:flex;flex:0 0 auto;min-height:62px;align-items:center;gap:12px;padding-right:0}
.brand-marquee__group span{white-space:nowrap;font-size:clamp(1.25rem,2vw,1.8rem);font-weight:700;letter-spacing:.12em}
.brand-marquee__group i{color:#c77b5a;font-size:1rem;font-style:normal}
@keyframes capitol-marquee{to{transform:translateX(-25%)}}
@media(prefers-reduced-motion:reduce){.brand-marquee__track{animation:none}}

@media(max-width:680px){.home-hero__ornament{top:50%;bottom:auto;left:-2.5rem;font-size:18rem;transform:translateY(-47%)}}


/* Direktna rezervacija: bolji kontrast i jasniji poziv na akciju */
.direct-booking-bar {
    padding: clamp(42px, 5vw, 68px) 0;
    color: #f5f6f2;
    background: linear-gradient(110deg, #17382d 0%, #244b3c 100%);
    border-top: 1px solid rgba(255, 255, 255, .08);
}
.direct-booking-bar .container {
    gap: clamp(24px, 4vw, 60px);
}
.direct-booking-bar .eyebrow {
    color: #e6a27e;
}
.direct-booking-bar h2 {
    max-width: 22ch;
    color: #fff;
    font-size: clamp(1.55rem, 2.4vw, 2.1rem);
    line-height: 1.18;
}
.direct-booking-bar p {
    color: rgba(255, 255, 255, .84);
}
.direct-booking-bar p a {
    color: #f0b18e;
    font-weight: 700;
}
.direct-booking-bar .button--gold {
    color: #17382d;
    background: #e6a27e;
    border-color: #e6a27e;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .16);
    white-space: nowrap;
}
.direct-booking-bar .button--gold:hover {
    color: #17382d;
    background: #f0b894;
    border-color: #f0b894;
    transform: translateY(-1px);
}
@media (max-width: 680px) {
    .direct-booking-bar { padding: 38px 0; }
    .direct-booking-bar h2 { max-width: 100%; }
}
