﻿.apartments-page{background:#f7f2e9;overflow-x:hidden}
.apartments-page .header{position:fixed}
.apartment-hero{min-height:max(730px,95svh);position:relative;display:flex;align-items:end;padding:160px 0 105px;overflow:hidden;color:#fff;background:#0b2d26}
.apartment-hero__image,.apartment-hero__veil{position:absolute;inset:0;width:100%;height:100%}
.apartment-hero__image{object-fit:cover;object-position:center;animation:apartmentReveal 1.3s cubic-bezier(.2,.7,.2,1) both}
.apartment-hero__veil{background:linear-gradient(90deg,rgba(5,28,24,.91),rgba(5,28,24,.56) 46%,rgba(5,28,24,.1) 79%),linear-gradient(0deg,rgba(5,27,23,.68),transparent 55%)}
.apartment-hero__content{position:relative;z-index:2}
.apartment-hero h1{max-width:850px;margin-top:14px;color:#fff;font-size:clamp(4rem,7.8vw,7.8rem);line-height:.86;letter-spacing:-.055em}
.apartment-hero h1 em{display:block;color:#e2ad78;font-weight:500}
.apartment-hero__content>p:not(.kicker){max-width:580px;margin-top:30px;color:rgba(255,255,255,.76);font-size:1.04rem;line-height:1.8}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:35px}
.apartment-hero__facts{position:absolute;z-index:2;right:max(32px,calc((100vw - 1200px)/2));bottom:40px;display:flex;border:1px solid rgba(255,255,255,.22);background:rgba(8,38,32,.28);backdrop-filter:blur(12px)}
.apartment-hero__facts span{padding:15px 20px;border-right:1px solid rgba(255,255,255,.18);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
.apartment-hero__facts span:last-child{border:0}
.apartment-hero__facts strong{margin-right:5px;color:#e2ad78;font:600 1rem var(--serif)}
.apartment-intro{padding:clamp(85px,9vw,125px) 0 45px}
.apartment-intro__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(50px,8vw,110px);align-items:end}
.apartment-intro h2{font-size:clamp(2.9rem,5vw,5rem)}
.apartment-intro__grid>p{color:#66746e;line-height:1.85}
.apartment-choice{padding:35px 0 clamp(100px,11vw,155px)}
.apartment-cards{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.apartment-card{overflow:hidden;border:1px solid rgba(12,51,42,.12);background:#fffdf9;box-shadow:0 25px 70px rgba(15,47,39,.08);transition:transform .35s,box-shadow .35s}
.apartment-card:hover{transform:translateY(-8px);box-shadow:0 35px 85px rgba(15,47,39,.14)}
.apartment-card__visual{position:relative;height:clamp(380px,40vw,560px);overflow:hidden}
.apartment-card__visual img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.apartment-card:hover .apartment-card__visual img{transform:scale(1.035)}
.apartment-card__visual>span{position:absolute;left:20px;top:20px;padding:9px 12px;color:#17362e;background:#e6b27c;font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.apartment-card__body{padding:clamp(25px,4vw,45px)}
.apartment-card__top{display:flex;align-items:end;justify-content:space-between;gap:20px}
.apartment-card h2{font-size:clamp(2.6rem,4.5vw,4.3rem)}
.apartment-price{flex:0 0 auto;text-align:right}
.apartment-price small{display:block;color:#7b8782;font-size:.55rem;letter-spacing:.08em;text-transform:uppercase}
.apartment-price strong{display:block;margin-top:4px;color:#bd7541;font:600 1rem var(--serif)}
.apartment-card__body>p:not(.apartment-price){color:#64736d;line-height:1.75}
.apartment-card ul{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:25px 0 0;padding:0;border-top:1px solid var(--line);list-style:none}
.apartment-card li{padding:13px 0;border-bottom:1px solid var(--line);color:#40574f;font-size:.72rem}
.apartment-card li:before{margin-right:8px;color:#c67d48;content:"âœ“"}
.apartment-card__actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:30px}
.apartment-link{color:var(--forest);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}
.apartment-common{padding:clamp(95px,10vw,145px) 0;color:#fff;background:#0c3029}
.apartment-common__head{display:flex;align-items:end;justify-content:space-between;gap:45px}
.apartment-common__head h2{color:#fff;font-size:clamp(2.8rem,5vw,4.8rem)}
.apartment-common__head>p{max-width:430px;color:rgba(255,255,255,.58);line-height:1.75}
.apartment-common__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:50px;background:rgba(255,255,255,.13)}
.apartment-common article{min-height:235px;padding:30px;background:#0c3029;transition:background .3s}
.apartment-common article:hover{background:#15443a}
.apartment-common svg{width:28px;height:28px;fill:none;stroke:#d79a64;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.apartment-common h3{margin:25px 0 9px;color:#fff;font-size:1.4rem}
.apartment-common article p{color:rgba(255,255,255,.58);font-size:.78rem;line-height:1.7}
.apartment-mosaic{padding:clamp(95px,10vw,145px) 0;background:#fffdf8}
.apartment-mosaic header{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px}
.apartment-mosaic h2{max-width:800px;font-size:clamp(2.8rem,5vw,4.8rem)}
.apartment-mosaic__grid{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:310px 310px;gap:16px}
.apartment-mosaic figure{position:relative;margin:0;overflow:hidden}
.apartment-mosaic figure.large{grid-row:1/-1}
.apartment-mosaic img{width:100%;height:100%;object-fit:cover;transition:transform .7s}
.apartment-mosaic figure:hover img{transform:scale(1.035)}
.apartment-mosaic figcaption{position:absolute;left:18px;bottom:18px;padding:9px 12px;color:#fff;background:rgba(8,39,32,.8);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
.apartment-review{display:grid;grid-template-columns:auto auto 1fr;gap:9px;align-items:center;width:fit-content;max-width:100%;margin:19px 0;padding:11px 13px;border:1px solid rgba(14,51,42,.13);color:#17372f;background:#f7f1e8;text-decoration:none}.apartment-review>span{color:#c77d47;font-size:.68rem;letter-spacing:.02em}.apartment-review>strong{font:600 .92rem var(--serif)}.apartment-review>small{color:#68756f;font-size:.61rem}.apartment-guide{padding:clamp(95px,10vw,145px) 0;background:#f7f2e9}.apartment-guide header{display:grid;grid-template-columns:.7fr 1.3fr;gap:35px;align-items:end}.apartment-guide header>p:last-child{color:#65736e}.apartment-guide h2{font-size:clamp(2.8rem,5vw,4.8rem)}.apartment-guide__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}.apartment-guide__grid article{padding:30px;border-top:3px solid #c87f49;background:#fffdf9;box-shadow:0 18px 48px rgba(15,47,39,.06)}.apartment-guide__grid article>span{color:#c77d47;font:600 1rem var(--serif)}.apartment-guide__grid h3{margin:18px 0;font-size:1.45rem}.apartment-guide__grid ul{margin:0;padding-left:18px;color:#65736e;line-height:1.75}.apartment-guide__grid a{display:inline-block;margin-top:22px;color:#17372f;font-size:.64rem;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.apartment-guide__faq{max-width:900px;margin:60px 0 0 auto}.apartment-guide__faq details{border-top:1px solid var(--line)}.apartment-guide__faq details:last-child{border-bottom:1px solid var(--line)}.apartment-guide__faq summary{display:flex;justify-content:space-between;gap:20px;padding:24px 0;cursor:pointer;color:#17372f;font:600 1.25rem var(--serif);list-style:none}.apartment-guide__faq summary::-webkit-details-marker{display:none}.apartment-guide__faq summary b{color:#c77d47;font:400 1.5rem var(--sans);transition:transform .25s}.apartment-guide__faq details[open] summary b{transform:rotate(45deg)}.apartment-guide__faq p{max-width:720px;padding:0 0 25px;color:#65736e;line-height:1.75}.apartment-compare{padding:clamp(90px,10vw,140px) 0;background:#ece3d6}
.apartment-compare__grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(55px,9vw,130px);align-items:center}
.apartment-compare h2{font-size:clamp(2.8rem,5vw,4.8rem)}
.apartment-compare__grid>div:first-child>p:not(.kicker){color:#65736e;line-height:1.8}
.apartment-compare__links{border-top:1px solid rgba(14,50,42,.16)}
.apartment-compare__links a{display:grid;grid-template-columns:50px 1fr 30px;gap:20px;align-items:center;padding:25px 0;border-bottom:1px solid rgba(14,50,42,.16);color:#15372f;text-decoration:none}
.apartment-compare__links span{color:#c27a46;font:600 1rem var(--serif)}
.apartment-compare__links strong{font:600 clamp(1.2rem,2vw,1.55rem) var(--serif)}
.apartment-compare__links i{font-style:normal;transition:transform .25s}
.apartment-compare__links a:hover i{transform:translateX(6px)}
.apartment-final .kicker{justify-content:center}
@keyframes apartmentReveal{from{opacity:.45;transform:scale(1.08)}
to{opacity:1;transform:scale(1)}
}
@media(max-width:950px){.apartment-hero__facts{display:none}
.apartment-guide header{grid-template-columns:1fr}.apartment-guide__grid{grid-template-columns:1fr}
.apartment-intro__grid,.apartment-compare__grid{grid-template-columns:1fr;gap:30px}
.apartment-cards{grid-template-columns:1fr}
.apartment-common__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){.apartment-hero{min-height:730px;padding:130px 0 70px}
.apartment-review{grid-template-columns:auto 1fr}.apartment-review>small{grid-column:1/-1}.apartment-guide{padding:75px 0}
.apartment-hero h1{font-size:clamp(3.65rem,18vw,5rem)}
.hero-actions{align-items:stretch;flex-direction:column}
.hero-actions .button{width:100%}
.apartment-intro{padding:75px 0 25px}
.apartment-choice,.apartment-common,.apartment-mosaic,.apartment-compare{padding:75px 0}
.apartment-card__visual{height:420px}
.apartment-card__top{display:block}
.apartment-price{margin-top:15px;text-align:left}
.apartment-card ul{grid-template-columns:1fr}
.apartment-card__actions{align-items:stretch;flex-direction:column}
.apartment-card__actions .button{width:100%}
.apartment-common__head,.apartment-mosaic header{display:block}
.apartment-common__head>p{margin-top:18px}
.apartment-common__grid{grid-template-columns:1fr}
.apartment-common article{min-height:0}
.apartment-mosaic__grid{grid-template-columns:1fr;grid-template-rows:360px 250px 250px}
.apartment-mosaic figure.large{grid-row:auto}
.apartment-compare__links a{grid-template-columns:38px 1fr 25px;gap:10px}
}
@media(prefers-reduced-motion:reduce){.apartment-hero__image,.apartment-card,.apartment-card__visual img,.apartment-common article,.apartment-mosaic img,.apartment-compare__links i{animation:none;transition:none}
}


