:root {
    --pf-section-space: clamp(5rem, 10vw, 9rem);
}

body.home {
    background: var(--pf-ivory);
}

.home .site-header--overlay {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    border-bottom-color: rgba(255, 255, 255, 0.16);
    background: linear-gradient(to bottom, rgba(7, 29, 54, 0.8), rgba(7, 29, 54, 0));
    backdrop-filter: none;
}

.home .site-header--overlay .site-title,
.home .site-header--overlay .primary-navigation a,
.home .site-header--overlay .menu-toggle {
    color: var(--pf-white);
}

.home .site-header--overlay .site-title span {
    color: var(--pf-gold);
}

.home .site-header--overlay.is-scrolled {
    border-bottom-color: var(--pf-border);
    background: rgba(249, 247, 240, 0.96);
    box-shadow: 0 10px 30px rgba(7, 29, 54, 0.08);
    backdrop-filter: blur(18px);
}

.home .site-header--overlay.is-scrolled .site-title,
.home .site-header--overlay.is-scrolled .primary-navigation a,
.home .site-header--overlay.is-scrolled .menu-toggle {
    color: var(--pf-navy);
}

.hero {
    position: relative;
    display: grid;
    min-height: 100svh;
    align-items: end;
    overflow: hidden;
    color: var(--pf-white);
    background: var(--pf-navy);
}

.hero__media,
.hero__overlay {
    position: absolute;
    inset: 0;
}

.hero__media {
    background:
        linear-gradient(110deg, rgba(7, 29, 54, 0.14), rgba(7, 29, 54, 0.28)),
        url("../images/hero-dubai.svg") center/cover no-repeat;
    transform: scale(1.02);
}

.hero__overlay {
    background:
        linear-gradient(to top, rgba(7, 29, 54, 0.92) 0%, rgba(7, 29, 54, 0.42) 54%, rgba(7, 29, 54, 0.28) 100%);
}

.hero__content {
    position: relative;
    z-index: 2;
    max-width: 980px;
    padding-top: 10rem;
    padding-bottom: clamp(6rem, 12vw, 10rem);
}

.eyebrow {
    margin-bottom: 1rem;
    color: var(--pf-gold-dark);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.eyebrow--light {
    color: var(--pf-gold);
}

.hero__title {
    max-width: 900px;
    margin-bottom: 1.5rem;
    color: var(--pf-white);
    font-size: clamp(4rem, 9vw, 8.5rem);
    line-height: 0.94;
}

.hero__intro {
    max-width: 680px;
    margin-bottom: 2.25rem;
    color: rgba(255, 255, 255, 0.82);
    font-family: var(--pf-serif);
    font-size: clamp(1.25rem, 2vw, 1.65rem);
    line-height: 1.5;
}

.hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.button {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 0.85rem 1.35rem;
    border: 1px solid transparent;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    transition: transform var(--pf-transition), background var(--pf-transition), color var(--pf-transition), border-color var(--pf-transition);
}

.button:hover {
    transform: translateY(-2px);
}

.button--gold {
    color: var(--pf-navy);
    background: var(--pf-gold);
}

.button--gold:hover {
    color: var(--pf-navy);
    background: #ddc287;
}

.button--ghost {
    border-color: rgba(255, 255, 255, 0.52);
    color: var(--pf-white);
    background: rgba(255, 255, 255, 0.05);
}

.button--ghost:hover {
    border-color: var(--pf-white);
    color: var(--pf-white);
}

.button--navy {
    color: var(--pf-white);
    background: var(--pf-navy);
}

.button--navy:hover {
    color: var(--pf-white);
    background: var(--pf-navy-soft);
}

.hero__scroll {
    position: absolute;
    right: clamp(1.5rem, 5vw, 4rem);
    bottom: 2rem;
    z-index: 2;
    width: 1px;
    height: 80px;
    background: rgba(255, 255, 255, 0.28);
}

.hero__scroll span {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 32px;
    background: var(--pf-gold);
    animation: scrollLine 2.2s ease-in-out infinite;
}

.section {
    padding-block: var(--pf-section-space);
}

.section--ivory {
    background: var(--pf-ivory);
}

.section--navy {
    color: var(--pf-white);
    background: var(--pf-navy);
}

.section-heading {
    max-width: 800px;
    margin-bottom: clamp(2.5rem, 6vw, 5rem);
}

.section-heading h2,
.market-stats h2,
.private-enquiry h2 {
    margin-bottom: 0;
    font-size: clamp(2.8rem, 6vw, 5.4rem);
}

.section-heading--split {
    display: flex;
    max-width: none;
    align-items: end;
    justify-content: space-between;
    gap: 2rem;
}

.text-link {
    display: inline-flex;
    align-items: center;
    gap: 0.65rem;
    color: var(--pf-navy);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.text-link::after {
    width: 42px;
    height: 1px;
    background: var(--pf-gold-dark);
    content: "";
    transition: width var(--pf-transition);
}

.text-link:hover::after {
    width: 64px;
}

.editorial-intro__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
    gap: clamp(3rem, 8vw, 8rem);
    align-items: start;
}

.editorial-intro h2 {
    font-size: clamp(3rem, 6vw, 5.8rem);
}

.editorial-copy {
    max-width: 680px;
    padding-top: 1rem;
}

.editorial-copy .lead {
    color: var(--pf-navy);
    font-family: var(--pf-serif);
    font-size: clamp(1.35rem, 2.3vw, 2rem);
    line-height: 1.5;
}

.market-stats__intro {
    max-width: 780px;
    margin-bottom: 4rem;
}

.market-stats h2 {
    color: var(--pf-white);
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid rgba(255, 255, 255, 0.16);
    border-left: 1px solid rgba(255, 255, 255, 0.16);
}

.stat {
    min-height: 240px;
    padding: 2rem;
    border-right: 1px solid rgba(255, 255, 255, 0.16);
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
}

.stat__number,
.stat__suffix {
    color: var(--pf-gold);
    font-family: var(--pf-serif);
    font-size: clamp(3rem, 6vw, 5rem);
    font-weight: 400;
    line-height: 1;
}

.stat__suffix {
    font-size: clamp(1.4rem, 3vw, 2.4rem);
}

.stat p {
    max-width: 160px;
    margin-top: 1.25rem;
    color: rgba(255, 255, 255, 0.68);
}

.development-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
}

.property-card {
    background: var(--pf-white);
    box-shadow: 0 16px 50px rgba(7, 29, 54, 0.08);
}

.property-card__image {
    position: relative;
    display: block;
    overflow: hidden;
    aspect-ratio: 4 / 5;
}

.property-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 700ms ease;
}

.property-card:hover .property-card__image img {
    transform: scale(1.045);
}

.property-card__badge {
    position: absolute;
    top: 1rem;
    left: 1rem;
    padding: 0.45rem 0.65rem;
    color: var(--pf-navy);
    background: rgba(249, 247, 240, 0.92);
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.property-card__content {
    padding: 1.5rem;
}

.property-card__location {
    margin-bottom: 0.5rem;
    color: var(--pf-gold-dark);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.property-card h3 {
    margin-bottom: 1.5rem;
    font-size: clamp(1.7rem, 3vw, 2.4rem);
}

.property-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--pf-border);
    color: var(--pf-navy);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.property-card__footer a {
    color: var(--pf-gold-dark);
}

.advisory {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    padding-block: 0;
    background: #eee8dc;
}

.advisory__image {
    min-height: 760px;
    background: url("../images/advisory.svg") center/cover no-repeat;
}

.advisory__content {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    padding: clamp(3rem, 8vw, 8rem);
}

.advisory__content h2 {
    max-width: 620px;
    font-size: clamp(3rem, 6vw, 5.5rem);
}

.advisory__content p {
    max-width: 590px;
}

.advisory__list {
    padding: 0;
    margin: 1.5rem 0 2rem;
    list-style: none;
}

.advisory__list li {
    position: relative;
    padding: 0.65rem 0 0.65rem 1.5rem;
    border-bottom: 1px solid rgba(7, 29, 54, 0.12);
}

.advisory__list li::before {
    position: absolute;
    top: 1.25rem;
    left: 0;
    width: 7px;
    height: 7px;
    border: 1px solid var(--pf-gold-dark);
    border-radius: 50%;
    content: "";
}

.area-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.area-card a {
    position: relative;
    display: block;
    overflow: hidden;
    min-height: 560px;
    color: var(--pf-white);
}

.area-card img,
.area-card__overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.area-card img {
    object-fit: cover;
    transition: transform 800ms ease;
}

.area-card:hover img {
    transform: scale(1.055);
}

.area-card__overlay {
    background: linear-gradient(to top, rgba(7, 29, 54, 0.92), rgba(7, 29, 54, 0.12) 65%);
}

.area-card__content {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 2rem;
}

.area-card h3 {
    color: var(--pf-white);
    font-size: clamp(2rem, 4vw, 3.2rem);
}

.area-card p {
    color: rgba(255, 255, 255, 0.74);
}

.area-card span {
    color: var(--pf-gold);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.testimonial-section {
    color: var(--pf-white);
    background:
        linear-gradient(rgba(7, 29, 54, 0.88), rgba(7, 29, 54, 0.88)),
        url("../images/testimonial.svg") center/cover no-repeat;
}

.testimonial-section__inner {
    max-width: 1050px;
    text-align: center;
}

.testimonial-section blockquote {
    margin: 1.5rem 0 2rem;
    color: var(--pf-white);
    font-family: var(--pf-serif);
    font-size: clamp(2rem, 5vw, 4.3rem);
    line-height: 1.25;
}

.testimonial-section__author {
    color: var(--pf-gold);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.insights-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    background: var(--pf-border);
}

.insight-card {
    min-height: 340px;
    padding: 2rem;
    background: var(--pf-ivory);
}

.insight-card__meta {
    color: var(--pf-gold-dark);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.insight-card h3 {
    margin: 1.25rem 0;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
}

.insight-card p:last-child {
    color: var(--pf-grey);
}

.private-enquiry {
    padding-block: clamp(4rem, 8vw, 7rem);
    color: var(--pf-white);
    background: var(--pf-navy);
}

.private-enquiry__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 3rem;
}

.private-enquiry h2 {
    max-width: 880px;
    color: var(--pf-white);
}


/* Phase 4: dynamic content templates */
.archive-hero {
    padding: clamp(9rem, 16vw, 14rem) 0 clamp(4rem, 8vw, 7rem);
    color: var(--pf-white);
    background: linear-gradient(130deg, var(--pf-navy), #163f63);
}
.archive-hero h1 {
    margin-bottom: 1.25rem;
    color: var(--pf-white);
    font-size: clamp(4rem, 9vw, 8rem);
}
.archive-hero p:last-child { max-width: 720px; color: rgba(255,255,255,.74); font-size: 1.15rem; }
.archive-grid { align-items: stretch; }
.property-card__excerpt { color: var(--pf-grey); }
.property-card__excerpt p { margin-bottom: 1rem; }
.archive-pagination { margin-top: 4rem; }
.nav-links { display:flex; flex-wrap:wrap; gap:.5rem; }
.page-numbers { padding:.65rem .9rem; border:1px solid var(--pf-border); }
.page-numbers.current { color:var(--pf-white); background:var(--pf-navy); }
.empty-state { max-width:760px; padding:4rem; background:var(--pf-white); box-shadow:var(--pf-shadow); }
.development-hero { position:relative; display:grid; min-height:82svh; align-items:end; overflow:hidden; background:var(--pf-navy); }
.development-hero__media, .development-hero__overlay { position:absolute; inset:0; }
.development-hero__media img { width:100%; height:100%; object-fit:cover; }
.development-hero__overlay { background:linear-gradient(to top, rgba(7,29,54,.94), rgba(7,29,54,.15) 75%); }
.development-hero__content { position:relative; z-index:2; padding-bottom:clamp(4rem,8vw,7rem); color:var(--pf-white); }
.development-hero h1 { max-width:1100px; margin-bottom:1rem; color:var(--pf-white); font-size:clamp(3.8rem,9vw,8rem); }
.development-hero__content > p:last-child { color:var(--pf-gold); font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.development-facts { background:var(--pf-white); }
.development-facts__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.development-fact { padding:2rem; border-right:1px solid var(--pf-border); border-bottom:1px solid var(--pf-border); }
.development-fact span { display:block; margin-bottom:.55rem; color:var(--pf-gold-dark); font-size:.67rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.development-fact strong { color:var(--pf-navy); font-family:var(--pf-serif); font-size:1.65rem; font-weight:400; }
.development-overview__grid { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:clamp(3rem,8vw,8rem); }
.development-overview .entry-content { font-size:1.08rem; }
.development-actions { display:flex; flex-wrap:wrap; gap:1rem; }
.area-card h2 { color:var(--pf-white); font-size:clamp(2rem,4vw,3.2rem); }
.area-card .entry-summary, .area-card .entry-summary p { color:rgba(255,255,255,.76); }
@media (max-width:900px) {
    .development-facts__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .development-overview__grid { grid-template-columns:1fr; gap:1rem; }
}
@media (max-width:600px) {
    .development-facts__grid { grid-template-columns:1fr; }
    .development-hero { min-height:72svh; }
    .empty-state { padding:2rem; }
}


/* Phase 5 page templates and lead capture */
.page-hero {
    position: relative;
    display: grid;
    min-height: 76svh;
    align-items: end;
    overflow: hidden;
    color: var(--pf-white);
    background: var(--pf-navy);
}
.page-hero::before {
    position: absolute;
    inset: 0;
    background: url("../images/hero-dubai.svg") center/cover no-repeat;
    content: "";
}
.page-hero--about::before { background-image: url("../images/advisory.svg"); }
.page-hero--investments::before { background-image: url("../images/testimonial.svg"); }
.page-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(7,29,54,.94), rgba(7,29,54,.3));
}
.page-hero__content {
    position: relative;
    z-index: 2;
    max-width: 1000px;
    padding-bottom: clamp(4rem, 8vw, 7rem);
}
.page-hero h1 {
    margin-bottom: 1.25rem;
    color: var(--pf-white);
    font-size: clamp(4rem, 9vw, 8rem);
}
.page-hero__content > p:last-child {
    max-width: 700px;
    color: rgba(255,255,255,.78);
    font-size: 1.18rem;
}
.principles-grid,
.service-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 1px;
    background: rgba(255,255,255,.16);
}
.principle,
.service-card {
    padding: clamp(2rem, 5vw, 4rem);
    background: var(--pf-navy);
}
.principle span,
.service-card span {
    color: var(--pf-gold);
    font-family: var(--pf-serif);
    font-size: 2rem;
}
.principle h3,
.service-card h3 {
    margin-top: 2rem;
    color: var(--pf-white);
    font-size: 2rem;
}
.principle p,
.service-card p { color: rgba(255,255,255,.68); }
.investment-services { background: #ede7dc; }
.investment-services .service-grid { grid-template-columns: repeat(2, minmax(0,1fr)); background: var(--pf-border); }
.investment-services .service-card { background: var(--pf-white); }
.investment-services .service-card h3 { color: var(--pf-navy); }
.investment-services .service-card p { color: var(--pf-grey); }
.faq-list { max-width: 1050px; }
.faq-item { border-top: 1px solid rgba(255,255,255,.18); }
.faq-item:last-child { border-bottom: 1px solid rgba(255,255,255,.18); }
.faq-item summary {
    padding: 1.5rem 0;
    color: var(--pf-white);
    font-family: var(--pf-serif);
    font-size: clamp(1.45rem,3vw,2.3rem);
    cursor: pointer;
}
.faq-item p { max-width: 760px; color: rgba(255,255,255,.68); }
.contact-hero {
    padding: clamp(9rem, 15vw, 13rem) 0 var(--pf-section-space);
    background: #eee8dc;
}
.contact-hero__grid {
    display: grid;
    grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
    gap: clamp(3rem,8vw,8rem);
}
.contact-hero__copy h1 {
    font-size: clamp(4rem,8vw,7rem);
}
.contact-hero__copy > p { max-width: 580px; }
.contact-details {
    margin: 2.5rem 0;
    border-top: 1px solid var(--pf-border);
}
.contact-details p {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 1rem;
    padding: 1rem 0;
    margin: 0;
    border-bottom: 1px solid var(--pf-border);
}
.contact-details span {
    color: var(--pf-gold-dark);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.contact-actions { display:flex; flex-wrap:wrap; gap:1rem; }
.button--outline { border-color: var(--pf-navy); color: var(--pf-navy); background: transparent; }
.enquiry-form-wrap {
    padding: clamp(2rem,5vw,4rem);
    background: var(--pf-white);
    box-shadow: var(--pf-shadow);
}
.enquiry-form__intro h2 {
    font-size: clamp(2.4rem,5vw,4.2rem);
}
.form-grid {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 1rem;
}
.enquiry-form p { margin-bottom: 1rem; }
.enquiry-form label {
    display: block;
    margin-bottom: .45rem;
    color: var(--pf-navy);
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.enquiry-form input,
.enquiry-form select,
.enquiry-form textarea {
    width: 100%;
    border: 1px solid var(--pf-border);
    padding: .9rem 1rem;
    color: var(--pf-charcoal);
    background: #fcfbf7;
}
.enquiry-form input:focus,
.enquiry-form select:focus,
.enquiry-form textarea:focus {
    border-color: var(--pf-gold-dark);
    outline: 2px solid rgba(200,169,106,.18);
}
.form-notice {
    margin-bottom: 1.25rem;
    padding: 1rem;
    border-left: 3px solid #a33;
    background: #fff1f1;
}
.form-notice--success {
    border-left-color: #357a4a;
    background: #eef8f1;
}
.footer-grid {
    display: grid;
    grid-template-columns: 1.5fr repeat(3,1fr);
    gap: 3rem;
    padding-bottom: 3rem;
}
.footer-brand {
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--pf-white);
    font-family: var(--pf-serif);
    font-size: 1.8rem;
}
.footer-grid h2 {
    color: var(--pf-gold);
    font-family: var(--pf-sans);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
}
.footer-grid ul { padding: 0; margin: 0; list-style: none; }
.site-footer__bottom {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid rgba(255,255,255,.14);
    font-size: .78rem;
}
.floating-whatsapp {
    position: fixed;
    right: 1.25rem;
    bottom: 1.25rem;
    z-index: 1200;
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 50%;
    color: var(--pf-navy);
    background: var(--pf-gold);
    box-shadow: 0 14px 35px rgba(7,29,54,.28);
    font-weight: 800;
}
.floating-whatsapp:hover { color: var(--pf-navy); transform: translateY(-2px); }

@media (max-width: 900px) {
    .contact-hero__grid,
    .footer-grid { grid-template-columns: 1fr; }
    .principles-grid { grid-template-columns: 1fr; }
    .investment-services .service-grid { grid-template-columns: 1fr; }
    .site-footer__bottom { flex-direction: column; }
}
@media (max-width: 650px) {
    .form-grid { grid-template-columns: 1fr; }
    .page-hero { min-height: 68svh; }
    .contact-details p { grid-template-columns: 1fr; gap: .25rem; }
}

.insights-hero{background:linear-gradient(130deg,rgba(7,29,54,.96),rgba(22,63,99,.9)),url("../images/insight-placeholder.svg") center/cover no-repeat}
.insights-filter{border-bottom:1px solid var(--pf-border);background:var(--pf-white)}
.insights-filter nav{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1.15rem 0}
.insights-filter nav>a,.insights-filter li a{color:var(--pf-navy);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.insights-filter ul,.insights-filter li{display:contents;list-style:none}
.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.editorial-card{display:flex;flex-direction:column;background:var(--pf-white);box-shadow:0 16px 48px rgba(7,29,54,.08)}
.editorial-card__image{display:block;overflow:hidden;aspect-ratio:16/10}
.editorial-card__image img{width:100%;height:100%;object-fit:cover;transition:transform 700ms ease}
.editorial-card:hover .editorial-card__image img{transform:scale(1.045)}
.editorial-card__content{display:flex;flex:1;align-items:flex-start;flex-direction:column;padding:1.75rem}
.editorial-card__meta{display:flex;width:100%;justify-content:space-between;gap:1rem;color:var(--pf-gold-dark);font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.editorial-card h2{margin:1rem 0;font-size:clamp(1.8rem,3vw,2.6rem)}
.editorial-card__excerpt{color:var(--pf-grey)}
.article-header{padding:clamp(10rem,16vw,14rem) 0 clamp(4rem,7vw,6rem);text-align:center;background:#eee8dc}
.article-header__inner{max-width:1100px}.article-header h1{font-size:clamp(3.6rem,8vw,7rem)}
.article-deck{max-width:780px;margin:0 auto 2rem;color:var(--pf-grey);font-family:var(--pf-serif);font-size:clamp(1.25rem,2.5vw,1.8rem)}
.article-byline{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem 2rem;color:var(--pf-gold-dark);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.article-featured{margin-top:-2rem}.article-featured img{width:100%;max-height:760px;object-fit:cover}
.article-body{padding:clamp(4rem,8vw,8rem) 0}.article-layout{display:grid;grid-template-columns:140px minmax(0,760px);justify-content:center;gap:clamp(2rem,6vw,6rem)}
.article-share{display:flex;flex-direction:column;gap:.75rem}.article-content{max-width:760px;font-size:1.08rem}
.article-footer{padding:4rem 0;background:#eee8dc}
.newsletter-section{padding:clamp(4rem,8vw,7rem) 0;color:var(--pf-white);background:var(--pf-navy)}
.newsletter-panel{display:grid;grid-template-columns:1fr .8fr;align-items:end;gap:clamp(3rem,8vw,8rem)}
.newsletter-panel h2{color:var(--pf-white);font-size:clamp(2.8rem,5vw,4.8rem)}
.newsletter-form{display:flex;gap:.75rem}.newsletter-form input{min-width:0;flex:1;border:1px solid rgba(255,255,255,.3);padding:.9rem 1rem;color:var(--pf-white);background:rgba(255,255,255,.06)}
@media(max-width:1000px){.editorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{grid-template-columns:1fr}.article-share{flex-direction:row}}
@media(max-width:750px){.editorial-grid,.newsletter-panel{grid-template-columns:1fr}.newsletter-form{flex-direction:column}}


/* Phase 7 production readiness */
:focus-visible {
    outline: 3px solid var(--pf-gold);
    outline-offset: 4px;
}
.breadcrumb-wrap {
    position: relative;
    z-index: 5;
}
.breadcrumbs {
    padding: 1rem 0;
    border-bottom: 1px solid var(--pf-border);
}
.breadcrumbs ol {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    padding: 0;
    margin: 0;
    list-style: none;
}
.breadcrumbs li {
    color: var(--pf-grey);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.breadcrumbs li:not(:last-child)::after {
    margin-left: .5rem;
    color: var(--pf-gold-dark);
    content: "/";
}
.site-search-form {
    display: flex;
    gap: .75rem;
}
.site-search-form label {
    min-width: 0;
    flex: 1;
}
.site-search-form input {
    width: 100%;
    min-height: 52px;
    border: 1px solid var(--pf-border);
    padding: .9rem 1rem;
    color: var(--pf-charcoal);
    background: var(--pf-white);
}
.search-panel {
    max-width: 900px;
    margin-bottom: 3rem;
}
.search-results {
    display: grid;
    gap: 1px;
    background: var(--pf-border);
}
.search-result {
    padding: clamp(2rem, 5vw, 4rem);
    background: var(--pf-white);
}
.search-result__type {
    color: var(--pf-gold-dark);
    font-size: .66rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.search-result h2 {
    font-size: clamp(2rem, 4vw, 3.2rem);
}
.error-hero {
    display: grid;
    min-height: 78svh;
    align-items: center;
    padding-top: 7rem;
    color: var(--pf-white);
    background:
        linear-gradient(rgba(7,29,54,.88), rgba(7,29,54,.92)),
        url("../images/hero-dubai.svg") center/cover no-repeat;
}
.error-hero__inner {
    max-width: 900px;
}
.error-hero h1 {
    color: var(--pf-white);
    font-size: clamp(4rem, 9vw, 8rem);
}
.error-hero p {
    max-width: 680px;
    color: rgba(255,255,255,.75);
    font-size: 1.15rem;
}
img[loading="lazy"] {
    content-visibility: auto;
}

@media (max-width: 650px) {
    .site-search-form {
        flex-direction: column;
    }
    .site-search-form .button {
        width: 100%;
    }
}
