/* =========================================================
   NOVERA PRODUCT DETAILS v1
   Scoped under .product-page to coexist with global style.css
   ========================================================= */
.product-page {
 --pd-bg:#0b0d0c;
 --pd-bg2:#111512;
 --pd-panel:#151916;
 --pd-paper:#f1eee7;
 --pd-text:#f5f3ee;
 --pd-muted:#a7aaa5;
 --pd-line:rgba(255,255,255,.12);
 --pd-gold:#c79c56;
 --pd-gold2:#e0b86d;
 --pd-green:#173d33;
 --pd-max:1440px;
	margin: 0;
	overflow: hidden;
	background: var(--pd-bg);
	color: var(--pd-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
.product-page * {
	box-sizing: border-box
}
.product-page button, .product-page input {
	font: inherit
}
.product-page button {
	color: inherit
}
.product-page a {
	color: inherit;
	text-decoration: none
}
.pd-wrap {
	width: min(calc(100% - 48px), var(--pd-max));
	margin-inline: auto
}
.pd-section {
	position: relative;
	padding: 110px 0
}
.pd-kicker {
	margin: 0 0 15px;
	color: var(--pd-gold2);
	font-size: 11px;
	letter-spacing: .22em;
	text-transform: uppercase
}
.pd-section-head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(280px, 520px);
	gap: 7vw;
	align-items: end;
	margin-bottom: 48px
}
.pd-section-head h2, .pd-plan h2, .pd-included h2, .pd-estimate h2, .pd-human h2 {
	margin: 0;
	font-size: clamp(42px, 5.4vw, 78px);
	font-weight: 300;
	line-height: 1;
	letter-spacing: -.045em
}
.pd-section-head>p, .pd-plan-copy>p, .pd-sticky-title>p, .pd-estimate-grid>div>p, .pd-human-grid>div>p {
	margin: 0;
	color: var(--pd-muted);
	font-size: 16px;
	line-height: 1.72
}
.pd-icon {
	width: 1.15em;
	height: 1.15em;
	display: inline-block;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.65;
	stroke-linecap: round;
	stroke-linejoin: round;
	flex: 0 0 auto
}
.pd-svg-sprite {
	position: absolute;
	width: 0;
	height: 0;
	overflow: hidden
}
.pd-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 13px;
	min-height: 52px;
	padding: 0 24px;
	border: 1px solid var(--pd-line);
	font-size: 11px;
	letter-spacing: .11em;
	text-transform: uppercase;
	transition: .28s ease
}
.pd-btn-gold {
	border-color: transparent;
	background: linear-gradient(135deg, #b88742, #d0a45d);
	color: #17130d;
	font-weight: 700
}
.pd-btn-gold:hover {
	filter: brightness(1.07);
	transform: translateY(-1px)
}
.pd-btn-line:hover {
	border-color: var(--pd-gold);
	color: var(--pd-gold2)
}
.pd-text-link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	width: max-content;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--pd-gold);
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase
}
.pd-reveal {
	opacity: 0;
	transform: translateY(28px);
	transition: opacity .8s ease, transform .8s cubic-bezier(.2, .65, .2, 1)
}
.pd-reveal.is-visible {
	opacity: 1;
	transform: none
}
/* Hero */
.pd-hero {
	position: relative;
	min-height: 100svh;
	display: flex;
	align-items: flex-end;
	overflow: hidden;
	background: #080a09
}
.pd-hero-media {
	position: absolute;
	inset: 0;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	filter: saturate(.82) contrast(1.04);
	transform: scale(1.01)
}
.pd-hero-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(5,7,6,.94) 0%, rgba(5,7,6,.70) 34%, rgba(5,7,6,.14) 72%, rgba(5,7,6,.35) 100%), linear-gradient(0deg, rgba(5,7,6,.86), transparent 48%)
}
.pd-hero-inner {
	position: relative;
	z-index: 2;
	min-height: 100svh;
	padding: 130px 0 52px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end
}
.pd-back {
	position: absolute;
	top: 104px;
	left: 0;
	color: #c3c6c0;
	font-size: 10px;
	letter-spacing: .14em;
	text-transform: uppercase
}
.pd-back:hover {
	color: var(--pd-gold2)
}
.pd-hero-copy {
	max-width: 700px
}
.pd-hero-meta {
	display: flex;
	align-items: center;
	gap: 14px;
	color: #d8d8d2;
	font-size: 11px;
	letter-spacing: .17em
}
.pd-series {
	padding: 7px 10px;
	border: 1px solid rgba(224,184,109,.52);
	color: var(--pd-gold2)
}
.pd-hero h1 {
	margin: 24px 0 12px;
	font-size: clamp(84px, 12vw, 180px);
	font-weight: 200;
	line-height: .78;
	letter-spacing: -.055em
}
.pd-tagline {
	max-width: 620px;
	margin: 28px 0 0;
	font-size: clamp(21px, 2.5vw, 34px);
	font-weight: 300;
	line-height: 1.35
}
.pd-quick-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 24px;
	margin-top: 34px;
	color: #dddcd6
}
.pd-quick-facts span {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 13px
}
.pd-quick-facts .pd-icon {
	color: var(--pd-gold2);
	width: 19px;
	height: 19px
}
.pd-quick-facts b {
	font-weight: 400
}
.pd-hero-buy {
	display: flex;
	align-items: end;
	gap: 28px;
	margin-top: 42px
}
.pd-price-block {
	display: grid;
	gap: 5px
}
.pd-price-block>span {
	color: #b8bbb5;
	font-size: 10px;
	letter-spacing: .15em;
	text-transform: uppercase
}
.pd-price-block strong {
	color: var(--pd-gold2);
	font-size: clamp(31px, 3vw, 48px);
	font-weight: 300;
	white-space: nowrap
}
.pd-price-info {
	width: max-content;
	padding: 5px 0;
	border: 0;
	border-bottom: 1px solid rgba(224,184,109,.55);
	background: none;
	color: #e1ded7;
	font-size: 10px;
	cursor: pointer
}
.pd-hero-index {
	position: absolute;
	right: 0;
	bottom: 54px;
	display: flex;
	align-items: center;
	gap: 10px;
	color: #a5a8a2;
	font-size: 9px;
	letter-spacing: .15em
}
.pd-hero-index i {
	display: block;
	width: 60px;
	height: 1px;
	background: rgba(255,255,255,.25)
}
/* Gallery */
.pd-gallery-section {
	background: var(--pd-bg)
}
.pd-editorial-grid {
	display: grid;
grid-template-columns:1.25fr .75fr .75fr;
	grid-template-rows: 310px 250px;
	gap: 12px
}
.pd-gallery-card {
	position: relative;
	overflow: hidden;
	padding: 0;
	border: 1px solid var(--pd-line);
	background: #111;
	cursor: pointer;
	text-align: left
}
.pd-gallery-card-lg {
	grid-row: 1/3
}
.pd-gallery-card-wide {
	grid-column: 2/4
}
.pd-gallery-bg {
	position: absolute;
	inset: 0;
	background-position: center;
	background-size: cover;
	filter: saturate(.78) brightness(.77);
	transition: .55s ease
}
.pd-gallery-card:after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(4,6,5,.78), transparent 52%)
}
.pd-gallery-card>span:last-child {
	position: absolute;
	z-index: 2;
	left: 20px;
	bottom: 18px;
	font-size: 11px;
	letter-spacing: .14em
}
.pd-gallery-card:hover .pd-gallery-bg {
	transform: scale(1.035);
	filter: saturate(.92) brightness(.88)
}
/* Numbers */
.pd-numbers {
	padding: 0;
	background: #0e110f;
	border-top: 1px solid var(--pd-line);
	border-bottom: 1px solid var(--pd-line)
}
.pd-numbers-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr)
}
.pd-number {
	min-height: 175px;
	padding: 30px 22px;
	border-left: 1px solid var(--pd-line);
	display: flex;
	align-items: flex-end;
	gap: 12px
}
.pd-number:first-child {
	border-left: 0
}
.pd-number strong {
	font-size: clamp(44px, 5vw, 72px);
	font-weight: 200;
	color: #fff;
	line-height: .8
}
.pd-number span {
	color: var(--pd-muted);
	font-size: 11px;
	line-height: 1.45;
	text-transform: uppercase;
	letter-spacing: .08em
}
/* Plan */
.pd-plan {
	background: var(--pd-paper);
	color: #171917
}
.pd-plan-grid {
	display: grid;
	grid-template-columns: minmax(320px, 440px) minmax(0, 1fr);
	gap: 7vw;
	align-items: center
}
.pd-plan-copy>p {
	color: #62645f;
	margin: 22px 0 28px
}
.pd-plan .pd-kicker {
	color: #9a7237
}
.pd-room-list {
	border-top: 1px solid rgba(0,0,0,.14);
	margin: 30px 0
}
.pd-room-list button {
	display: grid;
	grid-template-columns: 40px 1fr auto;
	align-items: center;
	width: 100%;
	padding: 16px 0;
	border: 0;
	border-bottom: 1px solid rgba(0,0,0,.14);
	background: transparent;
	color: #666761;
	text-align: left;
	cursor: pointer;
	transition: .25s
}
.pd-room-list button span {
	font-size: 10px;
	color: #999
}
.pd-room-list button b {
	font-weight: 500
}
.pd-room-list button em {
	font-style: normal;
	font-size: 12px
}
.pd-room-list button:hover, .pd-room-list button:focus-visible {
color:#171917
}
.pd-room-list button.is-active {
	color: #171917;
	padding-left: 12px;
	border-bottom-color: #aa8549
}
.pd-plan .pd-text-link {
	color: #171917
}
/* The beige shell is purely visual. It is NOT the hotspot coordinate system. */
.pd-plan-visual {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	min-width: 0;
	padding: clamp(14px, 2.4vw, 34px);
	border: 1px solid rgba(0,0,0,.12);
	background: #e7e2d9;
	overflow: hidden
}
/* This wrapper has exactly the rendered image dimensions and IS the coordinate system. */
.pd-plan-image-map {
	position: relative;
	width: 100%;
	max-width: 980px;
	margin: auto;
	line-height: 0
}
.pd-plan-image {
	display: block;
	width: 100%;
	height: auto;
	max-width: 100%;
	filter: saturate(.25)
}
/* Mapper convention: x/y are top-left coordinates; w/h are width/height. */
.pd-plan-room {
	position: absolute;
	left: var(--x);
	top: var(--y);
	width: var(--w);
	height: var(--h);
	margin: 0;
	padding: 0;
	border: 1px solid transparent;
	border-radius: 1px;
	background: rgba(199,156,86,0);
	cursor: pointer;
	line-height: normal;
	transition: background .25s ease, border-color .25s ease, box-shadow .25s ease;
	z-index: 2
}
.pd-plan-room span {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
	padding: 7px 9px;
	background: #171917;
	color: #fff;
	font-size: 9px;
	letter-spacing: .08em;
	white-space: nowrap;
	pointer-events: none;
	transition: opacity .2s ease
}
.pd-plan-room:hover, .pd-plan-room:focus-visible {
border-color:rgba(154,114,55,.42);
background:rgba(199,156,86,.08);
outline:none
}
.pd-plan-room.is-active {
	border-color: rgba(154,114,55,.72);
	background: rgba(199,156,86,.16);
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.18)
}
.pd-plan-room.is-active span {
	opacity: 1
}
/* Atmosphere */
.pd-atmosphere {
	background: #0e110f
}
.pd-atmosphere-stage {
	display: grid;
	grid-template-columns: 1fr 360px;
	min-height: 650px;
	border: 1px solid var(--pd-line)
}
.pd-atmosphere-media {
	min-height: 650px;
	background-position: center;
	background-size: cover;
	transition: opacity .35s ease, transform .65s ease
}
.pd-atmosphere-media.is-changing {
	opacity: .25;
	transform: scale(1.015)
}
.pd-atmosphere-info {
	padding: 38px 28px;
	background: #0b0d0c;
	display: flex;
	flex-direction: column;
	justify-content: space-between
}
.pd-atmosphere-tabs {
	display: grid
}
.pd-atmosphere-tabs button {
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 16px 4px;
	border: 0;
	border-bottom: 1px solid var(--pd-line);
	background: none;
	color: #777b76;
	letter-spacing: .1em;
	text-align: left;
	cursor: pointer
}
.pd-atmosphere-tabs button span {
	font-size: 9px
}
.pd-atmosphere-tabs button.is-active {
	color: #fff;
	border-bottom-color: var(--pd-gold)
}
.pd-atmosphere-copy h3 {
	margin: 8px 0 18px;
	font-size: 28px;
	font-weight: 300;
	line-height: 1.25
}
.pd-atmosphere-copy>p:last-child {
	margin: 0;
	color: var(--pd-muted);
	font-size: 13px;
	line-height: 1.65
}
/* Included */
.pd-included {
	background: #0a0c0b
}
.pd-included-grid {
	display: grid;
	grid-template-columns: 380px 1fr;
	gap: 8vw;
	align-items: start
}
.pd-sticky-title {
	position: sticky;
	top: 110px
}
.pd-sticky-title>p {
	margin-top: 24px
}
.pd-accordion {
	border-top: 1px solid var(--pd-line)
}
.pd-acc-item {
	border-bottom: 1px solid var(--pd-line)
}
.pd-acc-trigger {
	width: 100%;
	display: grid;
	grid-template-columns: 52px 1fr 30px;
	align-items: center;
	padding: 22px 0;
	border: 0;
	background: none;
	text-align: left;
	cursor: pointer
}
.pd-acc-trigger span {
	font-size: 10px;
	color: #747872
}
.pd-acc-trigger b {
	font-size: 18px;
	font-weight: 400
}
.pd-acc-trigger i {
	font-style: normal;
	color: var(--pd-gold2);
	font-size: 19px;
	text-align: right
}
.pd-acc-panel {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .35s ease
}
.pd-acc-panel>p {
	overflow: hidden;
	margin: 0;
	color: var(--pd-muted);
	font-size: 14px;
	line-height: 1.7
}
.pd-acc-item.is-open .pd-acc-panel {
	grid-template-rows: 1fr
}
.pd-acc-item.is-open .pd-acc-panel>p {
	padding: 0 30px 25px 52px
}
/* Not included */
.pd-not-included {
	background: var(--pd-paper);
	color: #171917
}
.pd-not-included .pd-kicker {
	color: #987039
}
.pd-not-included .pd-section-head>p {
	color: #686a65
}
.pd-cost-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	border-top: 1px solid rgba(0,0,0,.16);
	border-left: 1px solid rgba(0,0,0,.16)
}
.pd-cost-grid>div {
	min-height: 170px;
	padding: 22px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	border-right: 1px solid rgba(0,0,0,.16);
	border-bottom: 1px solid rgba(0,0,0,.16)
}
.pd-cost-grid span {
	font-size: 10px;
	color: #999
}
.pd-cost-grid b {
	font-size: 18px;
	font-weight: 500
}
.pd-cost-grid em {
	font-style: normal;
	color: #74756f;
	font-size: 12px
}
/* Extras */
.pd-extras {
	background: #0b0d0c
}
.pd-extra-grid {
	display: grid;
grid-template-columns:1.2fr .9fr .9fr;
	grid-template-rows: 290px 240px;
	gap: 12px
}
.pd-extra {
	position: relative;
	overflow: hidden;
	padding: 0;
	border: 1px solid var(--pd-line);
	background: #111;
	cursor: pointer;
	text-align: left
}
.pd-extra-lg {
	grid-row: 1/3
}
.pd-extra-wide {
	grid-column: 2/4
}
.pd-extra-bg {
	position: absolute;
	inset: 0;
	background-position: center;
	background-size: cover;
	filter: saturate(.72) brightness(.64);
	transition: .5s
}
.pd-extra-shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(7,9,8,.85), transparent 60%)
}
.pd-extra-label {
	position: absolute;
	z-index: 2;
	left: 20px;
	right: 20px;
	bottom: 18px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px
}
.pd-extra-label b {
	font-weight: 400;
	letter-spacing: .08em
}
.pd-extra-label em {
	font-style: normal;
	color: var(--pd-gold2);
	font-size: 11px
}
.pd-extra:hover .pd-extra-bg {
	transform: scale(1.035);
	filter: saturate(.86) brightness(.75)
}
.pd-extra[aria-pressed="true"] {
	border-color: var(--pd-gold)
}
.pd-extra[aria-pressed="true"]:after {
	content: "✓";
	position: absolute;
	z-index: 4;
	top: 16px;
	right: 16px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: var(--pd-gold);
	color: #17130d;
	font-weight: 700
}
.pd-extra[aria-pressed="true"] .pd-extra-label em {
	color: #fff
}
.pd-extra-note {
	margin: 18px 0 0;
	color: #757974;
	font-size: 11px
}
/* =====================================================
   NOVERA LIVING / MODEL PAGE
===================================================== */

.pd-living-grid {
    display: grid;

    grid-template-columns:
        1.2fr
        .9fr
        .9fr;

    grid-template-rows:
        300px
        250px;

    gap: 12px;
}


/* CARD */

.pd-living-card {
    position: relative;

    overflow: hidden;

    border:
        1px solid
        var(--pd-line);

    background:
        #0b0e0c;
}


.pd-living-lg {
    grid-row:
        1 / 3;
}


.pd-living-wide {
    grid-column:
        2 / 4;
}


/* MAIN LINK */

.pd-living-main {
    position: absolute;

    inset:
        0
        0
        50px
        0;

    overflow: hidden;
}


/* IMAGE */

.pd-living-bg {
    position: absolute;

    inset: 0;

    background-position:
        center;

    background-size:
        cover;

    background-repeat:
        no-repeat;

    filter:
        saturate(.72)
        brightness(.65);

    transition:
        transform
        .65s ease,
        filter
        .45s ease;
}


.pd-living-card:hover
.pd-living-bg {

    transform:
        scale(1.035);

    filter:
        saturate(.88)
        brightness(.74);
}


/* SHADE */

.pd-living-shade {
    position: absolute;

    inset: 0;

    background:

        linear-gradient(
            0deg,
            rgba(7,9,8,.94),
            rgba(7,9,8,.16) 60%,
            transparent
        );
}


/* CATEGORY */

.pd-living-category {
    position: absolute;

    z-index: 2;

    left: 18px;

    top: 18px;

    padding:
        6px
        9px;

    border:
        1px solid
        rgba(
            199,
            156,
            86,
            .45
        );

    background:
        rgba(
            7,
            9,
            8,
            .45
        );

    backdrop-filter:
        blur(7px);

    color:
        var(--pd-gold2);

    font-size:
        8px;

    letter-spacing:
        .14em;
}


/* COPY */

.pd-living-copy {
    position: absolute;

    z-index: 2;

    left: 20px;

    right: 20px;

    bottom: 20px;

    display: flex;

    align-items:
        flex-end;

    justify-content:
        space-between;

    gap: 24px;
}


.pd-living-copy > span {
    display: flex;

    flex-direction:
        column;

    align-items:
        flex-start;
}


.pd-living-copy small {
    margin-bottom: 6px;

    color:
        #a4a7a2;

    font-size:
        8px;

    letter-spacing:
        .12em;

    text-transform:
        uppercase;
}


.pd-living-copy b {
    color:
        #f0efe9;

    font-size:
        24px;

    font-weight:
        400;

    letter-spacing:
        -.02em;
}


.pd-living-lg
.pd-living-copy b {

    font-size:
        clamp(
            30px,
            3vw,
            46px
        );
}


.pd-living-copy em {
    margin-top: 8px;

    color:
        var(--pd-gold2);

    font-size:
        12px;

    font-style:
        normal;
}


.pd-living-copy i {
    flex: 0 0 auto;

    color:
        var(--pd-gold2);

    font-size:
        9px;

    font-style:
        normal;

    letter-spacing:
        .12em;

    transition:
        transform .25s ease;
}


.pd-living-card:hover
.pd-living-copy i {

    transform:
        translateX(4px);
}


/* =====================================================
   ADD BUTTON
===================================================== */

.pd-living-add {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    z-index: 5;

    height: 50px;

    display: flex;

    align-items: center;

    justify-content:
        center;

    gap: 9px;

    padding:
        0 16px;

    border: 0;

    border-top:
        1px solid
        var(--pd-line);

    background:
        #0b0e0c;

    color:
        #bfc2bd;

    cursor: pointer;

    font-size:
        9px;

    letter-spacing:
        .12em;

    text-align: center;

    transition:
        color .25s ease,
        background .25s ease,
        border-color .25s ease;
}


.pd-living-add span {
    color:
        var(--pd-gold2);

    font-size:
        17px;

    line-height: 1;
}


.pd-living-add:hover {
    color:
        var(--pd-gold2);

    background:
        rgba(
            199,
            156,
            86,
            .06
        );
}


/* SELECTED */

.pd-living-card.is-selected {
    border-color:
        var(--pd-gold);
}


.pd-living-card.is-selected
.pd-living-add {

    color:
        #17130d;

    background:
        var(--pd-gold);
}


.pd-living-card.is-selected
.pd-living-add span {

    color:
        #17130d;
}


/* PRICE ON REQUEST */

.pd-living-add-request {
    color:
        var(--pd-gold2);

    text-decoration:
        none;
}


/* =====================================================
   FOOTER
===================================================== */

.pd-living-footer {
    margin-top: 20px;

    padding-top: 18px;

    border-top:
        1px solid
        var(--pd-line);

    display: flex;

    justify-content:
        space-between;

    gap: 30px;

    align-items: center;
}


.pd-living-footer p {
    margin: 0;

    color:
        #777b77;

    font-size:
        11px;
}


/* =====================================================
   TABLET
===================================================== */

@media (
    max-width: 1000px
) {

    .pd-living-grid {

        grid-template-columns:
            1fr
            1fr;

        grid-template-rows:
            410px
            260px
            260px;
    }


    .pd-living-lg {

        grid-column:
            1 / 3;

        grid-row:
            auto;
    }


    .pd-living-wide {

        grid-column:
            1 / 3;
    }

}


/* =====================================================
   MOBILE
===================================================== */

@media (
    max-width: 760px
) {

    .pd-living-grid {

        grid-template-columns:
            1fr;

        grid-template-rows:
            none;
    }


    .pd-living-card,
    .pd-living-lg,
    .pd-living-wide {

        grid-column:
            auto;

        grid-row:
            auto;

        min-height:
            350px;
    }


    .pd-living-lg {
        min-height:
            430px;
    }


    .pd-living-copy b,
    .pd-living-lg
    .pd-living-copy b {

        font-size:
            28px;
    }


    .pd-living-copy i {
        display: none;
    }


    .pd-living-footer {

        align-items:
            flex-start;

        flex-direction:
            column;
    }
	.pd-hero-media {
        background-size: contain;
        background-position: center 0;
        transform: none;
    }

}
/* Estimate */
.pd-estimate {
	background: linear-gradient(100deg, #131813, #0c0f0d)
}
.pd-estimate-grid {
	display: grid;
	grid-template-columns: 1fr minmax(360px, 520px);
	gap: 8vw;
	align-items: center
}
.pd-estimate-grid>div>p {
	margin-top: 22px;
	max-width: 620px
}
.pd-estimate-card {
	padding: 28px;
	border: 1px solid var(--pd-line);
	background: #0a0c0b
}
.pd-estimate-card>div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 14px 0;
	border-bottom: 1px solid var(--pd-line);
	color: #b5b8b3;
	font-size: 12px
}
.pd-estimate-card>div strong {
	color: #fff;
	font-size: 18px;
	font-weight: 400
}
.pd-estimate-card .pd-estimate-total {
	padding: 24px 0;
	border-bottom: 0
}
.pd-estimate-total span {
	color: #fff
}
.pd-estimate-total strong {
	color: var(--pd-gold2);
	font-size: 32px;
	font-weight: 300
}
.pd-estimate-card .pd-btn {
	width: 100%;
	margin-top: 8px
}
/* Human */
.pd-human {
	padding: 78px 0;
	background: #0e110f;
	border-top: 1px solid var(--pd-line);
	border-bottom: 1px solid var(--pd-line)
}
.pd-human-grid {
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 6vw;
	align-items: center
}
.pd-human h2 {
	font-size: clamp(38px, 4.7vw, 66px)
}
.pd-human-grid>div>p {
	margin-top: 18px;
	max-width: 650px
}
.pd-human-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	justify-content: flex-end
}
/* Alternatives */
.pd-alternatives {
	background: #090b0a
}
.pd-alternatives .pd-section-head {
	align-items: end
}
.pd-alt-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px
}
.pd-alt-card {
	position: relative;
	min-height: 460px;
	overflow: hidden;
	border: 1px solid var(--pd-line)
}
.pd-alt-bg {
	position: absolute;
	inset: 0;
	background-position: center;
	background-size: cover;
	filter: saturate(.72) brightness(.68);
	transition: .5s
}
.pd-alt-shade {
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(5,7,6,.86), transparent 65%)
}
.pd-alt-copy {
	position: absolute;
	z-index: 2;
	inset: auto 24px 24px;
	display: grid;
	gap: 5px
}
.pd-alt-copy small {
	color: var(--pd-gold2);
	font-size: 9px;
	letter-spacing: .14em
}
.pd-alt-copy b {
	font-size: 42px;
	font-weight: 300
}
.pd-alt-copy em {
	font-style: normal;
	color: #d5d5cf;
	font-size: 12px
}
.pd-alt-card:hover .pd-alt-bg {
	transform: scale(1.035);
	filter: saturate(.88) brightness(.78)
}
/* Mobile sticky */
.pd-mobile-sticky {
	display: none;
	position: fixed;
	z-index: 65;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 10px 12px;
	background: rgba(8,10,9,.92);
	backdrop-filter: blur(16px);
	border-top: 1px solid var(--pd-line);
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	transform: translateY(110%);
	transition: .3s
}
.pd-mobile-sticky.is-visible {
	transform: none
}
.pd-mobile-sticky>div {
	display: grid
}
.pd-mobile-sticky small {
	font-size: 9px;
	color: #929690
}
.pd-mobile-sticky strong {
	font-size: 16px;
	font-weight: 400;
	color: var(--pd-gold2)
}
.pd-mobile-sticky a {
	padding: 12px 14px;
	background: var(--pd-gold);
	color: #18130c;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .08em
}
/* Lightbox */
.pd-lightbox {
	position: fixed;
	z-index: 120;
	inset: 0;
	display: grid;
	place-items: center;
	padding: 60px;
	background: rgba(3,4,3,.94);
	opacity: 0;
	visibility: hidden;
	transition: .25s
}
.pd-lightbox.is-open {
	opacity: 1;
	visibility: visible
}
.pd-lightbox img {
	max-width: min(1280px, 92vw);
	max-height: 82vh;
	object-fit: contain
}
.pd-lightbox p {
	position: absolute;
	bottom: 22px;
	margin: 0;
	color: #d2d3ce;
	font-size: 12px;
	letter-spacing: .08em
}
.pd-lightbox-close {
	position: absolute;
	right: 24px;
	top: 24px;
	width: 48px;
	height: 48px;
	border: 1px solid var(--pd-line);
	background: transparent;
	display: grid;
	place-items: center;
	cursor: pointer
}
.pd-lightbox-close .pd-icon {
	width: 22px;
	height: 22px
}
 @media(max-width:1100px) {
.pd-section-head, .pd-plan-grid, .pd-included-grid, .pd-estimate-grid {
	grid-template-columns: 1fr;
	gap: 42px
}
.pd-sticky-title {
	position: static
}
.pd-plan-visual {
	min-height: 0
}
.pd-numbers-grid {
	grid-template-columns: repeat(3, 1fr)
}
.pd-number:nth-child(4) {
	border-left: 0
}
.pd-atmosphere-stage {
	grid-template-columns: 1fr 300px
}
.pd-cost-grid {
	grid-template-columns: repeat(2, 1fr)
}
.pd-human-grid {
	grid-template-columns: 1fr
}
.pd-human-actions {
	justify-content: flex-start
}
}
 @media(max-width:760px) {
.pd-wrap {
	width: calc(100% - 28px)
}
.pd-section {
	padding: 74px 0
}
.pd-section-head {
	gap: 20px;
	margin-bottom: 30px
}
.pd-section-head h2, .pd-plan h2, .pd-included h2, .pd-estimate h2, .pd-human h2 {
	font-size: 43px
}
.pd-hero {
	min-height: 900px
}
.pd-hero-overlay {
	background: linear-gradient(0deg, rgba(5,7,6,.96) 0%, rgba(5,7,6,.58) 57%, rgba(5,7,6,.36) 100%)
}
.pd-hero-inner {
	min-height: 900px;
	padding: 120px 0 34px
}
.pd-back {
	top: 94px
}
.pd-hero h1 {
	font-size: 92px;
	margin-top: 20px
}
.pd-tagline {
	font-size: 20px;
	max-width: 340px
}
.pd-quick-facts {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px 10px;
	margin-top: 24px
}
.pd-quick-facts span {
	font-size: 12px
}
.pd-hero-buy {
	display: grid;
	gap: 20px;
	margin-top: 28px
}
.pd-hero-buy .pd-btn {
	width: 100%
}
.pd-price-block strong {
	font-size: 34px
}
.pd-hero-index {
	display: none
}
.pd-editorial-grid {
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 280px 190px 220px
}
.pd-gallery-card-lg {
	grid-column: 1/3;
	grid-row: auto
}
.pd-gallery-card-wide {
	grid-column: 1/3
}
.pd-numbers-grid {
	grid-template-columns: 1fr 1fr
}
.pd-number {
	min-height: 130px;
	border-bottom: 1px solid var(--pd-line);
	padding: 22px 14px
}
.pd-number:nth-child(odd) {
	border-left: 0
}
.pd-number strong {
	font-size: 48px
}
.pd-number span {
	font-size: 9px
}
.pd-plan-visual {
	min-height: 0;
	padding: 10px
}
.pd-room-list button {
	grid-template-columns: 32px 1fr auto
}
.pd-plan-room span {
	font-size: 7px;
	padding: 4px 5px
}
.pd-atmosphere-stage {
	grid-template-columns: 1fr
}
.pd-atmosphere-media {
	min-height: 430px
}
.pd-atmosphere-info {
	gap: 50px
}
.pd-atmosphere-tabs {
	grid-template-columns: repeat(3, 1fr)
}
.pd-atmosphere-tabs button {
	display: grid;
	gap: 6px;
	padding: 14px 2px;
	font-size: 10px
}
.pd-atmosphere-copy h3 {
	font-size: 24px
}
.pd-acc-trigger {
	grid-template-columns: 36px 1fr 24px
}
.pd-acc-trigger b {
	font-size: 16px
}
.pd-acc-item.is-open .pd-acc-panel>p {
	padding-left: 36px
}
.pd-extra-grid{
    display:grid;
    grid-template-columns:repeat(12,1fr);
    grid-template-rows:290px 240px;
    grid-auto-rows:240px;
    gap:12px;
}

/* Първата голяма карта */
.pd-extra-lg{
    grid-column:span 5;
    grid-row:span 2;
}

/* Нормалните карти от първата композиция */
.pd-extra:not(.pd-extra-lg):not(.pd-extra-wide){
    grid-column:span 3;
}

/* Четвъртата широка карта */
.pd-extra-wide{
    grid-column:span 6;
}

/* Всичко след 4-тата екстра */
.pd-extra:nth-child(n+5){
    grid-row:auto;
}


/* =====================================================
   АКО ИМА ТОЧНО 5 ЕКСТРИ
   5-тата става на цял ред
===================================================== */

.pd-extra:nth-child(5):last-child{
    grid-column:1 / -1;
}


/* =====================================================
   АКО ИМА ТОЧНО 6 ЕКСТРИ
   последните две стават 50 / 50
===================================================== */

.pd-extra:nth-child(5):nth-last-child(2),
.pd-extra:nth-child(6):last-child{
    grid-column:span 6;
}


/* =====================================================
   АКО ИМА 7 ИЛИ ПОВЕЧЕ
   след 4-тата -> по 3 на ред
===================================================== */

.pd-extra:nth-child(n+5):not(:nth-last-child(-n+2)){
    grid-column:span 4;
}


/* =====================================================
   КОГАТО ПОСЛЕДНИЯТ РЕД Е САМО 1 КАРТА
   тя става на цял ред
===================================================== */

.pd-extra:nth-child(n+5):last-child:nth-child(3n+2){
    grid-column:1 / -1;
}


/* =====================================================
   КОГАТО ПОСЛЕДНИЯТ РЕД Е С 2 КАРТИ
   стават 50 / 50
===================================================== */

.pd-extra:nth-child(n+5):nth-last-child(2):nth-child(3n+2),
.pd-extra:nth-child(n+5):last-child:nth-child(3n){
    grid-column:span 6;
}
.pd-extra-label b {
	font-size: 13px
}
.pd-estimate-card {
	padding: 20px
}
.pd-estimate-card>div {
	gap: 10px
}
.pd-estimate-total strong {
	font-size: 26px
}
.pd-human-actions {
	display: grid;
	width: 100%
}
.pd-human-actions .pd-btn {
	width: 100%
}
.pd-alt-grid {
	grid-template-columns: 1fr
}
.pd-alt-card {
	min-height: 390px
}
.pd-mobile-sticky {
	display: flex
}
.pd-lightbox {
	padding: 18px
}
.pd-lightbox-close {
	right: 14px;
	top: 14px
}
}
 @media(prefers-reduced-motion:reduce) {
.pd-reveal, .pd-gallery-bg, .pd-extra-bg, .pd-alt-bg, .pd-atmosphere-media, .pd-mobile-sticky {
	transition: none!important
}
}
/* =====================================================
   EXTRAS - MOBILE
===================================================== */

@media (max-width: 767px){

  .pd-extra-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto;
    gap:10px;
  }

  .pd-extra{
    min-height:190px;
    grid-column:auto !important;
    grid-row:auto !important;
  }

  /* Първата екстра е по-голяма */
  .pd-extra:first-child{
    grid-column:1 / -1 !important;
    min-height:280px;
  }

  /* Нулираме desktop специалните размери */
  .pd-extra-lg,
  .pd-extra-wide{
    grid-column:auto;
    grid-row:auto;
  }

  .pd-extra-label{
    left:14px;
    right:14px;
    bottom:14px;
    gap:8px;
  }

  .pd-extra-label b{
    font-size:13px;
  }

  .pd-extra-label em{
    font-size:10px;
  }

  .pd-extra[aria-pressed="true"]:after{
    top:12px;
    right:12px;
    width:26px;
    height:26px;
  }

  .pd-extra-note{
    margin-top:14px;
    line-height:1.5;
  }

}
@media (max-width: 480px){

  .pd-extra{
    min-height:165px;
  }

  .pd-extra:first-child{
    min-height:240px;
  }

  .pd-extra-label{
    left:12px;
    right:12px;
    bottom:12px;
  }

  .pd-extra-label b{
    font-size:12px;
    letter-spacing:.04em;
  }

  .pd-extra-label em{
    font-size:9px;
  }

}
