:root{
  --pd-charcoal:#11100f;
  --pd-charcoal-2:#1b1816;
  --pd-charcoal-3:#2a2522;
  --pd-copper:#c67146;
  --pd-copper-dark:#8f4f31;
  --pd-copper-soft:#d99873;
  --pd-ivory:#f5f1eb;
  --pd-sand:#ded5cc;
  --pd-white:#fff;
  --pd-stone:#6e6761;
  --pd-border:rgba(17,16,15,.13);
  --pd-border-dark:rgba(255,255,255,.14);
  --pd-shadow:0 28px 80px rgba(30,21,16,.14);
  --pd-radius:26px;
  --pd-radius-sm:16px;
  --pd-shell:min(1180px,calc(100vw - 48px));
  --pd-ease:cubic-bezier(.2,.8,.2,1);
}

*,:before,:after{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;background:var(--pd-ivory);color:var(--pd-charcoal);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;overflow-x:clip;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img,svg,video{max-width:100%;height:auto}
a{transition:color .25s ease,opacity .25s ease,transform .25s ease}
.wp-site-blocks{overflow:clip}
.pd-site-main{overflow:clip}
.pd-site-main>.alignfull{margin-block-start:0}
.wp-block-group,.wp-block-columns,.wp-block-column{min-width:0}
.wp-block-columns{margin-bottom:0}
.wp-block-image{margin:0}
.wp-block-image img{display:block;width:100%}
.pd-shell{width:var(--pd-shell);max-width:1180px;margin-inline:auto}

/* Header */
.pd-header{position:sticky;top:0;z-index:1000;margin:0!important;padding:0!important;background:rgba(245,241,235,.9);border-bottom:1px solid rgba(17,16,15,.09);backdrop-filter:blur(16px) saturate(125%);-webkit-backdrop-filter:blur(16px) saturate(125%)}
.admin-bar .pd-header{top:32px}
.pd-header-inner{width:var(--pd-shell);max-width:1180px;margin:auto;min-height:88px;padding:10px 0;gap:28px}
.pd-site-logo img{width:auto!important;max-width:174px!important;max-height:66px!important;object-fit:contain}
.pd-main-nav{font-size:.86rem;letter-spacing:.035em;text-transform:uppercase;font-weight:650}
.pd-main-nav .wp-block-navigation-item__content{padding:10px 7px;color:var(--pd-charcoal)}
.pd-main-nav .wp-block-navigation-item__content:hover{color:var(--pd-copper)}
.pd-main-nav .wp-block-navigation__responsive-container-open{border:1px solid var(--pd-border);border-radius:999px;padding:9px}
.pd-main-nav .wp-block-navigation__responsive-container.is-menu-open{background:var(--pd-charcoal);color:var(--pd-white);padding:28px}
.pd-main-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{color:var(--pd-white);font-size:1.4rem;padding:12px 0}
.pd-main-nav .wp-block-navigation__responsive-container-close{color:var(--pd-white)}

/* Shared typography */
.pd-dark{background:var(--pd-charcoal);color:var(--pd-white)}
.pd-dark a{color:inherit}
.pd-eyebrow,.pd-section-kicker,.pd-card-kicker{margin:0 0 18px;font-size:.72rem!important;line-height:1.35!important;letter-spacing:.2em;text-transform:uppercase;font-weight:750;color:var(--pd-copper)}
.pd-dark .pd-eyebrow,.pd-dark .pd-section-kicker,.pd-dark .pd-card-kicker{color:var(--pd-copper-soft)}
.pd-display,.pd-page-display,.pd-title-xl,.pd-cta-title{overflow-wrap:break-word;word-break:normal;text-wrap:balance}
.pd-display{margin:0;font-size:clamp(3.25rem,7vw,7.2rem)!important;line-height:.9!important;letter-spacing:-.055em;font-weight:480!important;max-width:10.2ch}
.pd-page-display{margin:0;max-width:13ch;font-size:clamp(3rem,6.1vw,6.4rem)!important;line-height:.94!important;letter-spacing:-.05em;font-weight:480!important}
.pd-title-xl{margin:0 0 26px;font-size:clamp(2.4rem,4.5vw,5rem)!important;line-height:.98!important;letter-spacing:-.045em;font-weight:500!important}
.pd-copy-lg,.pd-hero-lead,.pd-page-lead{font-size:clamp(1.05rem,1.55vw,1.3rem)!important;line-height:1.65!important;color:inherit;overflow-wrap:anywhere}
.pd-hero-lead{max-width:58ch;margin:28px 0 0;color:rgba(255,255,255,.76)}
.pd-page-lead{max-width:67ch;margin:28px 0 0;color:rgba(255,255,255,.72)}
.pd-copy-lg{margin:0 0 20px;color:#4f4945}
.pd-dark .pd-copy-lg{color:rgba(255,255,255,.72)}
.pd-footnote,.pd-image-caption,.pd-render-note{font-size:.78rem!important;line-height:1.55!important}
.pd-image-caption{margin:10px 0 0;color:rgba(255,255,255,.56);letter-spacing:.045em}
.pd-footnote{margin:18px 0 0;color:var(--pd-stone)}
.pd-text-link{margin-top:28px;font-weight:700;letter-spacing:.01em}
.pd-text-link a{color:var(--pd-copper);text-decoration:none}
.pd-text-link a:hover{color:var(--pd-copper-dark)}

/* Buttons */
.pd-actions{margin-top:34px;gap:12px;flex-wrap:wrap!important}
.pd-btn .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 24px;border-radius:999px;background:var(--pd-copper);color:#fff;border:1px solid var(--pd-copper);font-size:.9rem;font-weight:750;letter-spacing:.02em;box-shadow:none;white-space:normal;text-align:center;transition:transform .3s var(--pd-ease),background .3s ease,border-color .3s ease,box-shadow .3s ease}
.pd-btn .wp-block-button__link:hover{background:var(--pd-copper-dark);border-color:var(--pd-copper-dark);transform:translateY(-2px);box-shadow:0 14px 30px rgba(198,113,70,.2)}
.pd-btn-outline .wp-block-button__link{background:transparent;color:var(--pd-charcoal);border-color:rgba(17,16,15,.35)}
.pd-btn-outline .wp-block-button__link:hover{background:var(--pd-charcoal);border-color:var(--pd-charcoal);color:#fff}
.pd-btn-outline-light .wp-block-button__link{background:transparent;color:#fff;border-color:rgba(255,255,255,.38)}
.pd-btn-outline-light .wp-block-button__link:hover{background:#fff;border-color:#fff;color:var(--pd-charcoal)}

/* Atmospheric background */
.pd-ambient{position:relative;isolation:isolate}
.pd-ambient:before,.pd-ambient:after{content:"";position:absolute;pointer-events:none;z-index:-1;border-radius:50%;filter:blur(4px)}
.pd-ambient:before{width:min(46vw,650px);height:min(46vw,650px);right:-16vw;top:-22vw;background:radial-gradient(circle,rgba(198,113,70,.2),transparent 67%);animation:pdAmbientA 13s ease-in-out infinite alternate}
.pd-ambient:after{width:min(34vw,500px);height:min(34vw,500px);left:-18vw;bottom:-17vw;background:radial-gradient(circle,rgba(255,255,255,.08),transparent 68%);animation:pdAmbientB 16s ease-in-out infinite alternate}
@keyframes pdAmbientA{to{transform:translate3d(-6vw,8vh,0) scale(1.14)}}
@keyframes pdAmbientB{to{transform:translate3d(8vw,-5vh,0) scale(.92)}}

/* Hero */
.pd-home-hero,.pd-les-hero,.pd-finca-hero{position:relative;margin:0!important;padding:clamp(74px,9vw,132px) 0 clamp(64px,8vw,108px)!important}
.pd-hero-grid{display:grid!important;grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);gap:clamp(38px,6vw,88px);align-items:center}
.pd-hero-copy{position:relative;z-index:2}
.pd-hero-media{position:relative;min-height:clamp(510px,54vw,680px);isolation:isolate;perspective:1200px}
.pd-hero-media:before{content:"";position:absolute;inset:-15px 20px 24px -15px;border:1px solid rgba(198,113,70,.48);border-radius:32px;z-index:-1;transform:rotate(-1.5deg)}
.pd-hero-media:after{content:"";position:absolute;right:-36px;bottom:34px;width:126px;height:126px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:radial-gradient(circle at 30% 30%,rgba(198,113,70,.35),rgba(198,113,70,.04) 62%,transparent 63%);z-index:4;animation:pdOrb 9s ease-in-out infinite}
@keyframes pdOrb{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(18deg)}}
.pd-hero-slide{position:absolute!important;inset:0;margin:0!important;opacity:0;overflow:hidden;border-radius:28px;box-shadow:0 40px 100px rgba(0,0,0,.32);animation:pdHeroCycle 18s infinite both}
.pd-hero-slide img{width:100%!important;height:100%!important;object-fit:cover;transform:scale(1.06);animation:pdHeroZoom 18s infinite both}
.pd-slide-1{animation-delay:0s}.pd-slide-1 img{animation-delay:0s}
.pd-slide-2{animation-delay:6s}.pd-slide-2 img{animation-delay:6s}
.pd-slide-3{animation-delay:12s}.pd-slide-3 img{animation-delay:12s}
@keyframes pdHeroCycle{0%{opacity:0}5%{opacity:1}29%{opacity:1}34%{opacity:0}100%{opacity:0}}
@keyframes pdHeroZoom{0%{transform:scale(1.06) translate3d(0,0,0)}34%{transform:scale(1.13) translate3d(-1.5%,1%,0)}100%{transform:scale(1.06)}}
.pd-render-note{display:inline-block;margin:28px 0 0;padding:11px 15px;border-left:2px solid var(--pd-copper);background:rgba(255,255,255,.06);color:rgba(255,255,255,.68);max-width:88ch}
.pd-stats-row{display:flex!important;gap:12px;margin-top:36px}
.pd-stat{flex:1 1 130px;min-width:0;padding:18px 18px 16px;border-top:1px solid rgba(255,255,255,.2)}
.pd-stat-text{margin:0!important;display:flex;flex-direction:column;gap:4px}
.pd-stat-text strong{display:block;font-size:1.5rem;line-height:1;font-weight:650;color:var(--pd-white)}
.pd-stat-text span{display:block;font-size:.73rem;line-height:1.35;text-transform:uppercase;letter-spacing:.085em;color:rgba(255,255,255,.52)}

/* Ticker */
.pd-ticker{overflow:hidden;margin:0!important;padding:12px 0;background:var(--pd-copper);color:#fff;border-block:1px solid rgba(255,255,255,.12)}
.pd-ticker-text{width:max-content;margin:0!important;padding-left:0;font-size:.72rem!important;line-height:1.2!important;letter-spacing:.18em;white-space:nowrap;font-weight:750;animation:pdTicker 28s linear infinite}
@keyframes pdTicker{to{transform:translateX(-50%)}}

/* Sections */
.pd-section{margin:0!important;padding:clamp(80px,9vw,132px) 0!important;position:relative}
.pd-section-light{background:var(--pd-ivory)}
.pd-split-grid{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(44px,8vw,110px);align-items:start}
.pd-section-heading{position:sticky;top:130px}
.pd-section-copy{max-width:650px}
.pd-feature-grid{display:grid!important;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(42px,7vw,92px);align-items:center}
.pd-promo-copy{padding-right:2vw}
.pd-facts-grid{display:flex!important;gap:10px;margin:32px 0 0}
.pd-facts-grid .pd-stat{border-color:rgba(255,255,255,.18);padding-inline:12px}
.pd-promo-visual{position:relative;perspective:1000px}
.pd-feature-image{overflow:hidden;border-radius:30px;box-shadow:0 40px 100px rgba(0,0,0,.28)}
.pd-feature-image img{aspect-ratio:4/3;object-fit:cover;transition:transform 1.2s var(--pd-ease)}
.pd-promo-visual:hover .pd-feature-image img{transform:scale(1.035)}
.pd-promo-visual:before{content:"";position:absolute;left:-22px;bottom:-22px;width:60%;height:65%;border-left:1px solid rgba(198,113,70,.65);border-bottom:1px solid rgba(198,113,70,.65);border-radius:0 0 0 28px;pointer-events:none}

/* Galleries */
.pd-section-gallery{background:#ede7df}
.pd-editorial-gallery{display:grid!important;grid-template-columns:1.15fr .85fr .85fr;gap:16px;margin-top:48px}
.pd-gallery-img{overflow:hidden;border-radius:20px;background:#d9d0c8;min-height:340px}
.pd-gallery-img img{height:100%!important;min-height:340px;object-fit:cover;transition:transform .85s var(--pd-ease)}
.pd-gallery-img:first-child{min-height:480px}
.pd-gallery-img:first-child img{min-height:480px}
.pd-gallery-img:hover img{transform:scale(1.035)}

/* Project cards */
.pd-section-projects{background:#f0eae3}
.pd-project-grid,.pd-promotion-list-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:42px}
.pd-project-card,.pd-promotion-list-card{position:relative;overflow:hidden;padding:0 0 34px;background:#fff;border-radius:var(--pd-radius);border:1px solid rgba(17,16,15,.08);box-shadow:0 14px 60px rgba(40,29,23,.08);transform-style:preserve-3d;transition:transform .3s ease,box-shadow .3s ease}
.pd-project-card-dark,.pd-promotion-list-card-dark{background:var(--pd-charcoal);color:#fff}
.pd-card-img{overflow:hidden;border-radius:0!important}
.pd-card-img img{aspect-ratio:16/10;object-fit:cover;transition:transform 1s var(--pd-ease)}
.pd-project-card:hover .pd-card-img img,.pd-promotion-list-card:hover .pd-card-img img{transform:scale(1.04)}
.pd-project-card>.wp-block-paragraph,.pd-project-card>.wp-block-heading,.pd-promotion-list-card>.wp-block-paragraph,.pd-promotion-list-card>.wp-block-heading{margin-left:34px;margin-right:34px}
.pd-card-kicker{margin-top:30px!important;margin-bottom:12px!important}
.pd-card-title,.pd-project-card h3,.pd-promotion-list-card h2{font-size:clamp(1.8rem,3vw,2.7rem)!important;letter-spacing:-.035em;margin-top:0;margin-bottom:16px}
.pd-card-copy{color:#5c5550;max-width:48ch}
.pd-project-card-dark .pd-card-copy,.pd-promotion-list-card-dark .pd-card-copy{color:rgba(255,255,255,.68)}
.pd-card-link{margin-top:24px!important;font-weight:700}
.pd-card-link a{color:var(--pd-copper)}

/* Showroom */
.pd-showroom-section{background:#fff}
.pd-showroom-grid{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(44px,8vw,100px);align-items:center}
.pd-showroom-collage{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;align-items:end}
.pd-showroom-main,.pd-showroom-detail,.pd-showroom-img{overflow:hidden;border-radius:20px;box-shadow:0 18px 60px rgba(31,22,17,.09)}
.pd-showroom-main img{aspect-ratio:1/1.16;object-fit:cover}
.pd-showroom-detail{margin-bottom:-40px}
.pd-showroom-detail img{aspect-ratio:.95/1;object-fit:cover}
.pd-showroom-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.pd-showroom-gallery:first-of-type{margin-top:46px}
.pd-showroom-img img{aspect-ratio:4/3;object-fit:cover}

/* Qualities and extras */
.pd-quality-grid,.pd-extra-grid,.pd-principles-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:46px}
.pd-quality-card,.pd-extra-card,.pd-principle-card{height:100%;min-height:245px;padding:30px;border-radius:20px;border:1px solid var(--pd-border-dark);background:rgba(255,255,255,.045);transition:background .35s ease,border-color .35s ease,transform .35s var(--pd-ease)}
.pd-quality-card:hover,.pd-principle-card:hover{background:rgba(255,255,255,.085);border-color:rgba(198,113,70,.5)}
.pd-quality-card h3,.pd-principle-card h3{font-size:1.4rem!important;line-height:1.15;margin:10px 0 18px;color:#fff}
.pd-quality-card p:not(.pd-card-kicker),.pd-principle-card p:not(.pd-card-number){color:rgba(255,255,255,.63);font-size:.94rem;line-height:1.7}
.pd-card-number{color:var(--pd-copper);font-size:.72rem!important;letter-spacing:.15em}
.pd-extras-section{background:#eee7df}
.pd-extra-card{background:#fff;border-color:rgba(17,16,15,.1);min-height:190px;box-shadow:0 14px 50px rgba(38,28,22,.06)}
.pd-extra-card h3{margin-top:0;font-size:1.4rem!important}
.pd-extra-card p{color:#5a534f}

/* Plan */
.pd-plan-grid{display:grid!important;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:clamp(40px,7vw,90px);align-items:center}
.pd-plan-image{overflow:hidden;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.3)}
.pd-plan-image img{aspect-ratio:1.25/1;object-fit:cover}
.pd-plan-section .pd-editorial-gallery{margin-top:56px}
.pd-plan-section .pd-gallery-img{min-height:300px}
.pd-plan-section .pd-gallery-img img{min-height:300px}
.pd-plan-section .pd-gallery-img:first-child,.pd-plan-section .pd-gallery-img:first-child img{min-height:360px}

/* Page heroes and Finca */
.pd-page-hero{margin:0!important;padding:clamp(82px,11vw,158px) 0 clamp(75px,9vw,126px)!important;position:relative;overflow:hidden}
.pd-page-hero:after{content:"";position:absolute;width:40vw;height:40vw;border:1px solid rgba(198,113,70,.22);border-radius:50%;right:-16vw;top:-18vw}
.pd-finca-hero-img{overflow:hidden;border-radius:28px;box-shadow:0 34px 100px rgba(0,0,0,.34)}
.pd-finca-hero-img img{aspect-ratio:4/3;object-fit:cover}

/* Contact */
.pd-contact-section{background:#ece5dd}
.pd-contact-grid{display:grid!important;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:24px;align-items:stretch}
.pd-contact-card,.pd-contact-form{padding:clamp(28px,4vw,48px);border-radius:24px;background:#fff;border:1px solid rgba(17,16,15,.08)}
.pd-contact-card h2,.pd-contact-form h2{font-size:clamp(1.8rem,3vw,2.6rem)!important;letter-spacing:-.035em;margin-top:0}
.pd-contact-card a{color:var(--pd-charcoal)}
.wp-block-form{display:grid;gap:16px}
.wp-block-form-input__label{display:grid;gap:7px;font-size:.76rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:#4f4844}
.wp-block-form-input__input{width:100%;min-height:50px;padding:13px 14px;border:1px solid #cfc5bc;border-radius:10px;background:#faf8f5;color:var(--pd-charcoal);font:inherit;font-size:1rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}
textarea.wp-block-form-input__input{min-height:145px;resize:vertical}
.wp-block-form-input__input:focus{border-color:var(--pd-copper);background:#fff;box-shadow:0 0 0 3px rgba(198,113,70,.14)}
.wp-block-form-submit-button .wp-block-button__link{background:var(--pd-copper);border:0;border-radius:999px;color:#fff;padding:14px 24px;min-height:50px;cursor:pointer;font-weight:750}

/* CTA */
.pd-cta{text-align:center}
.pd-cta-inner{display:flex;flex-direction:column;align-items:center}
.pd-cta-title{font-size:clamp(2.7rem,6vw,6.6rem)!important;line-height:.94!important;letter-spacing:-.055em;max-width:12ch;margin:0 auto 24px}
.pd-cta-copy{font-size:1.1rem;max-width:62ch;color:rgba(255,255,255,.68)}
.pd-copper-section{background:var(--pd-copper);color:#fff;text-align:center}
.pd-copper-section .pd-btn .wp-block-button__link{background:var(--pd-charcoal);border-color:var(--pd-charcoal)}
.pd-copper-section .pd-btn .wp-block-button__link:hover{background:#000;border-color:#000}

/* Legal */
.pd-legal-page{background:#fff;min-height:65vh}
.pd-legal-content{max-width:850px}
.pd-legal-title{font-size:clamp(2.6rem,5vw,4.6rem)!important;margin-top:0;margin-bottom:54px;letter-spacing:-.045em}
.pd-legal-content h2{margin-top:42px;font-size:1.5rem!important}
.pd-legal-content p{color:#56504c}

/* Footer */
.pd-footer{margin:0!important;padding:74px 0 26px!important;background:#0c0b0b;color:#fff}
.pd-footer>div,.pd-footer-grid,.pd-footer-bottom,.pd-footer-sep{width:var(--pd-shell);max-width:1180px;margin-left:auto!important;margin-right:auto!important}
.pd-footer-grid{display:grid!important;grid-template-columns:1.25fr .7fr 1fr;gap:50px}
.pd-footer-logo img{width:auto!important;max-width:160px!important;max-height:72px!important;object-fit:contain;filter:none}
.pd-footer-tagline{color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem!important;margin-top:20px}
.pd-footer h3{font-size:.9rem!important;letter-spacing:.1em;text-transform:uppercase;color:var(--pd-copper);margin-top:0}
.pd-footer p{font-size:.9rem;line-height:1.85;color:rgba(255,255,255,.63)}
.pd-footer a{color:inherit}
.pd-footer a:hover{color:var(--pd-copper-soft)}
.pd-footer-sep{border-color:rgba(255,255,255,.12)!important;margin-top:46px!important;margin-bottom:22px!important}
.pd-footer-bottom{font-size:.75rem;color:rgba(255,255,255,.45)}
.pd-footer-bottom p{font-size:.75rem!important;margin:0}

/* Motion states — content remains readable before JS */
.js .pd-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .85s var(--pd-ease),transform .85s var(--pd-ease)}
.js .pd-reveal.is-visible{opacity:1;transform:none}
.js .pd-mask-reveal{clip-path:inset(0 100% 0 0 round 20px);transition:clip-path 1.1s var(--pd-ease)}
.js .pd-mask-reveal.is-visible{clip-path:inset(0 0 0 0 round 20px)}
.pd-tilt{transform:perspective(1100px) rotateX(var(--pd-rx,0deg)) rotateY(var(--pd-ry,0deg)) translate3d(var(--pd-tx,0),var(--pd-ty,0),0);transition:transform .28s ease;will-change:transform}
.pd-parallax img{transform:translate3d(0,var(--pd-parallax-y,0px),0) scale(1.035);will-change:transform}
.pd-scroll-progress{position:fixed;top:0;left:0;z-index:2000;width:100%;height:3px;pointer-events:none}
.admin-bar .pd-scroll-progress{top:32px}
.pd-scroll-progress__bar{display:block;height:100%;width:100%;background:var(--pd-copper);transform-origin:left center;transform:scaleX(0)}

/* Safety / responsive */
@media (max-width:1100px){
  :root{--pd-shell:min(100% - 40px,1180px)}
  .pd-hero-grid{gap:42px}
  .pd-display{font-size:clamp(3rem,6.6vw,5.8rem)!important}
  .pd-quality-grid,.pd-extra-grid,.pd-principles-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pd-header-inner{min-height:80px}
}

@media (max-width:960px){
  .pd-hero-grid,.pd-split-grid,.pd-feature-grid,.pd-showroom-grid,.pd-plan-grid,.pd-contact-grid{grid-template-columns:1fr!important}
  .pd-section-heading{position:static}
  .pd-home-hero,.pd-les-hero,.pd-finca-hero{padding-top:72px!important}
  .pd-hero-media{min-height:clamp(430px,72vw,620px);margin-top:16px}
  .pd-hero-copy{max-width:780px}
  .pd-display,.pd-page-display{max-width:14ch}
  .pd-editorial-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .pd-editorial-gallery .wp-block-image:first-child{grid-column:1/-1}
  .pd-project-grid,.pd-promotion-list-grid{grid-template-columns:1fr!important}
  .pd-showroom-collage{max-width:780px}
  .pd-plan-copy{max-width:720px}
  .pd-footer-grid{grid-template-columns:1.15fr 1fr;gap:40px}
  .pd-footer-grid>.wp-block-column:first-child{grid-column:1/-1}
}

@media (max-width:782px){
  .admin-bar .pd-header{top:46px}
  .admin-bar .pd-scroll-progress{top:46px}
  .pd-header-inner{min-height:72px}
  .pd-site-logo img{max-width:148px!important;max-height:58px!important}
  .pd-main-nav .wp-block-navigation__responsive-container-open{display:flex}
  .pd-main-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none}
  .pd-quality-grid,.pd-extra-grid,.pd-principles-grid{grid-template-columns:1fr!important}
  .pd-showroom-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .pd-contact-card,.pd-contact-form{padding:28px 22px}
}

@media (max-width:640px){
  :root{--pd-shell:calc(100vw - 30px);--pd-radius:20px}
  .pd-home-hero,.pd-les-hero,.pd-finca-hero{padding:58px 0 68px!important}
  .pd-page-hero{padding:68px 0 78px!important}
  .pd-section{padding:72px 0!important}
  .pd-display{font-size:clamp(2.85rem,14.2vw,4.8rem)!important;line-height:.94!important;letter-spacing:-.05em}
  .pd-page-display{font-size:clamp(2.75rem,13vw,4.4rem)!important}
  .pd-title-xl{font-size:clamp(2.25rem,10.8vw,3.7rem)!important}
  .pd-cta-title{font-size:clamp(2.6rem,12vw,4.5rem)!important}
  .pd-hero-lead,.pd-page-lead,.pd-copy-lg{font-size:1.02rem!important;line-height:1.62!important}
  .pd-hero-media{min-height:390px}
  .pd-hero-media:before{inset:-8px 12px 16px -8px;border-radius:24px}
  .pd-hero-media:after{width:88px;height:88px;right:-18px;bottom:22px}
  .pd-hero-slide{border-radius:20px}
  .pd-stats-row,.pd-facts-grid{gap:6px}
  .pd-stat{flex-basis:105px;padding:14px 8px}
  .pd-stat-text strong{font-size:1.2rem}
  .pd-stat-text span{font-size:.64rem;letter-spacing:.06em}
  .pd-actions{display:grid!important;grid-template-columns:1fr;gap:9px;width:100%}
  .pd-actions .wp-block-button{width:100%}
  .pd-actions .wp-block-button__link{width:100%}
  .pd-editorial-gallery{grid-template-columns:1fr!important;gap:12px}
  .pd-editorial-gallery .wp-block-image:first-child{grid-column:auto}
  .pd-gallery-img,.pd-gallery-img:first-child,.pd-gallery-img img,.pd-gallery-img:first-child img{min-height:290px}
  .pd-showroom-collage{grid-template-columns:1fr 1fr;gap:10px}
  .pd-showroom-detail{margin-bottom:-20px}
  .pd-showroom-gallery{grid-template-columns:1fr!important}
  .pd-project-card>.wp-block-paragraph,.pd-project-card>.wp-block-heading,.pd-promotion-list-card>.wp-block-paragraph,.pd-promotion-list-card>.wp-block-heading{margin-left:24px;margin-right:24px}
  .pd-quality-card,.pd-extra-card,.pd-principle-card{min-height:0;padding:24px}
  .pd-footer{padding-top:58px!important}
  .pd-footer-grid{grid-template-columns:1fr!important;gap:30px}
  .pd-footer-grid>.wp-block-column:first-child{grid-column:auto}
  .pd-footer-bottom{display:block!important}
  .pd-footer-bottom p+p{margin-top:8px}
  .pd-ticker-text{font-size:.64rem!important}
}

@media (max-width:390px){
  :root{--pd-shell:calc(100vw - 24px)}
  .pd-header-inner{min-height:68px}
  .pd-site-logo img{max-width:132px!important}
  .pd-display{font-size:2.75rem!important}
  .pd-page-display{font-size:2.65rem!important}
  .pd-title-xl{font-size:2.15rem!important}
  .pd-hero-media{min-height:330px}
  .pd-stat{flex-basis:90px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .js .pd-reveal{opacity:1!important;transform:none!important}
  .js .pd-mask-reveal{clip-path:none!important}
  .pd-hero-slide{position:absolute!important;opacity:0!important}
  .pd-hero-slide:first-child{opacity:1!important}
  .pd-parallax img,.pd-tilt{transform:none!important}
}
.pd-showroom-gallery-last{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:78%;margin-inline:auto}
.pd-footer-logo{display:inline-flex;padding:10px 12px;background:var(--pd-ivory);border-radius:14px}
@media(max-width:640px){.pd-showroom-gallery-last{max-width:none;grid-template-columns:1fr!important}}

/* =========================================================
   Proedibert Signature 3.1 — robust visual pass
   Keeps all content visible, removes intentional overlap and
   uses fixed grid geometry so no empty photo slots appear.
   ========================================================= */

/* Never split headings inside words. */
.pd-display,.pd-page-display,.pd-title-xl,.pd-cta-title{
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  text-wrap:balance;
}
.pd-display{max-width:12.8ch;font-size:clamp(3.15rem,6.3vw,6.35rem)!important;line-height:.94!important}
.pd-page-display{max-width:15ch;font-size:clamp(3rem,5.7vw,5.75rem)!important;line-height:.97!important}
.pd-title-xl{max-width:18ch;font-size:clamp(2.35rem,4vw,4.35rem)!important;line-height:1.01!important}
.pd-copy-lg,.pd-hero-lead,.pd-page-lead{overflow-wrap:normal!important;word-break:normal!important}

/* More compact vertical rhythm: no large dead zones between sections. */
.pd-section{padding:clamp(68px,7vw,104px) 0!important}
.pd-home-hero,.pd-les-hero,.pd-finca-hero{padding:clamp(64px,7.5vw,108px) 0 clamp(62px,7vw,96px)!important}
.pd-page-hero{padding:clamp(72px,8vw,112px) 0 clamp(66px,7vw,96px)!important}
.pd-section-heading{position:static!important}

/* Content must remain visible even if JS, an observer or a browser extension fails. */
.js .pd-reveal,.pd-reveal{opacity:1!important;transform:none!important}
.js .pd-mask-reveal,.pd-mask-reveal{clip-path:none!important;opacity:1!important}

/* Hero: three images are always visible. No opacity-cycling and no blank first frame. */
.pd-hero-grid{grid-template-columns:minmax(0,.96fr) minmax(0,1.04fr);gap:clamp(36px,5vw,72px)}
.pd-hero-copy{max-width:610px}
.pd-hero-mosaic{
  display:grid!important;
  grid-template-columns:minmax(0,1.45fr) minmax(150px,.72fr);
  grid-template-rows:1fr 1fr;
  gap:14px;
  min-height:clamp(470px,47vw,620px);
  perspective:1200px;
}
.pd-hero-mosaic .wp-block-image{margin:0!important;overflow:hidden;border-radius:24px;background:#282421;box-shadow:0 28px 75px rgba(0,0,0,.28);min-width:0}
.pd-hero-mosaic img{width:100%!important;height:100%!important;object-fit:cover;display:block}
.pd-hero-mosaic-main{grid-column:1;grid-row:1/3;animation:pdFloatMain 10s ease-in-out infinite alternate}
.pd-hero-mosaic-small{grid-column:2;min-height:0}
.pd-mosaic-a{grid-row:1;animation:pdFloatA 8s ease-in-out infinite alternate}
.pd-mosaic-b{grid-row:2;animation:pdFloatB 9.5s ease-in-out infinite alternate}
@keyframes pdFloatMain{to{transform:translate3d(0,-5px,0)}}
@keyframes pdFloatA{to{transform:translate3d(0,7px,0) rotate(.35deg)}}
@keyframes pdFloatB{to{transform:translate3d(0,-7px,0) rotate(-.35deg)}}
.pd-hero-mosaic:after{content:"";position:absolute;inset:auto -18px -18px 22%;height:46%;border-right:1px solid rgba(198,113,70,.55);border-bottom:1px solid rgba(198,113,70,.55);border-radius:0 0 28px 0;pointer-events:none;z-index:-1}
.pd-hero-mosaic{position:relative;isolation:isolate}

/* Old slideshow styles remain harmless if an existing edited page still contains them. */
.pd-hero-media .pd-hero-slide:first-child{opacity:1!important}

/* Home image wall: 4 images, 2x2, no unused grid cells. */
.pd-home-gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:38px}
.pd-home-gallery>.wp-block-column{min-width:0}
.pd-home-gallery-img{overflow:hidden;border-radius:20px;background:#d8d0c8}
.pd-home-gallery-img img{display:block;width:100%!important;aspect-ratio:16/10;object-fit:cover;transition:transform .7s var(--pd-ease)}
.pd-home-gallery-img:hover img{transform:scale(1.025)}

/* Full Les Blasques gallery: every uploaded project image has a stable cell. */
.pd-full-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:38px}
.pd-full-gallery>.wp-block-column{min-width:0}
.pd-full-gallery-img{overflow:hidden;border-radius:18px;background:#d8d0c8;box-shadow:0 12px 38px rgba(44,32,24,.07)}
.pd-full-gallery-img img{display:block;width:100%!important;aspect-ratio:4/3;object-fit:cover;transition:transform .7s var(--pd-ease),filter .7s var(--pd-ease)}
.pd-full-gallery-img:hover img{transform:scale(1.025);filter:contrast(1.02)}

/* Showroom: exactly 8 real photos in a predictable 4x2 grid. */
.pd-showroom-full{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:38px}
.pd-showroom-full>.wp-block-column{min-width:0}
.pd-showroom-full-img{overflow:hidden;border-radius:17px;background:#eee8e1;box-shadow:0 12px 36px rgba(42,31,24,.07)}
.pd-showroom-full-img img{display:block;width:100%!important;aspect-ratio:4/3;object-fit:cover;transition:transform .7s var(--pd-ease)}
.pd-showroom-full-img:hover img{transform:scale(1.025)}

/* Home showroom collage: remove negative margins/intentional overlap. */
.pd-showroom-collage{align-items:stretch!important}
.pd-showroom-main,.pd-showroom-detail{margin:0!important}
.pd-showroom-main img,.pd-showroom-detail img{height:100%!important;min-height:330px;aspect-ratio:auto!important;object-fit:cover}

/* Tracking / video page. */
.pd-tracking-section{background:#e9e1d8}
.pd-tracking-grid{display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(34px,6vw,78px);align-items:center}
.pd-tracking-image,.pd-video-hero-image{overflow:hidden;border-radius:24px;box-shadow:0 28px 80px rgba(31,22,17,.16)}
.pd-tracking-image img{aspect-ratio:16/10;object-fit:cover}
.pd-video-hero-image img{aspect-ratio:4/3;object-fit:cover}
.pd-video-library-section{background:#f0e9e2}
.pd-video-empty{padding:clamp(28px,4vw,48px);border:1px solid rgba(17,16,15,.12);border-radius:22px;background:#fff;max-width:820px;margin-top:30px}
.pd-video-empty h3{font-size:clamp(1.55rem,2.5vw,2.25rem)!important;margin:0 0 10px}
.pd-video-empty p{margin:0;color:#5b544f}
.pd-editor-only{display:none!important}
.pd-video-library-section .wp-block-video,.pd-video-library-section .wp-block-embed{margin-top:22px;margin-bottom:24px;overflow:hidden;border-radius:18px;background:#111}
.pd-video-library-section video,.pd-video-library-section iframe{display:block;width:100%;max-width:100%}

/* Cards and columns: equalized without forcing text into narrow fixed boxes. */
.pd-project-card,.pd-promotion-list-card{height:100%}
.pd-project-grid,.pd-promotion-list-grid,.pd-quality-grid,.pd-extra-grid,.pd-principles-grid{align-items:stretch}
.pd-project-card>.wp-block-heading,.pd-promotion-list-card>.wp-block-heading,.pd-quality-card h3,.pd-extra-card h3,.pd-principle-card h3{overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important}

/* Contact strings and long links can wrap, titles cannot. */
.pd-contact-card a,.pd-footer a,.pd-legal-content a{overflow-wrap:anywhere}

@media (max-width:1100px){
  .pd-display{font-size:clamp(3rem,6.1vw,5.35rem)!important}
  .pd-page-display{font-size:clamp(2.8rem,5.6vw,5rem)!important}
  .pd-showroom-full{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:960px){
  .pd-hero-grid,.pd-tracking-grid{grid-template-columns:1fr!important}
  .pd-hero-copy{max-width:760px}
  .pd-hero-mosaic{min-height:540px;margin-top:6px}
  .pd-full-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pd-showroom-full{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media (max-width:640px){
  .pd-section{padding:62px 0!important}
  .pd-display{font-size:clamp(2.55rem,12.7vw,4.2rem)!important;max-width:none!important}
  .pd-page-display{font-size:clamp(2.45rem,12vw,4rem)!important;max-width:none!important}
  .pd-title-xl{font-size:clamp(2.1rem,9.6vw,3.35rem)!important;max-width:none!important}
  .pd-hero-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;min-height:0;gap:10px}
  .pd-hero-mosaic-main{grid-column:1/-1;grid-row:auto;aspect-ratio:16/10;animation:none}
  .pd-hero-mosaic-small{grid-column:auto;grid-row:auto;aspect-ratio:1/1;animation:none}
  .pd-hero-mosaic:after{display:none}
  .pd-home-gallery,.pd-full-gallery,.pd-showroom-full{grid-template-columns:1fr!important}
  .pd-home-gallery-img img,.pd-full-gallery-img img,.pd-showroom-full-img img{aspect-ratio:4/3}
  .pd-showroom-collage{grid-template-columns:1fr!important}
  .pd-showroom-main img,.pd-showroom-detail img{min-height:280px}
  .pd-tracking-grid{gap:28px}
  .pd-render-note{max-width:100%}
}

/* Switch to the mobile navigation before six menu items can collide with the logo. */
@media (max-width:1040px){
  .pd-main-nav .wp-block-navigation__responsive-container-open{display:flex!important}
  .pd-main-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
  .pd-header-inner{min-height:78px}
}

/* Wider CTA measure so sentences stay visually balanced instead of stacking into a narrow tower. */
.pd-cta-title{max-width:18ch!important;font-size:clamp(2.5rem,5.2vw,5.4rem)!important}
@media(max-width:640px){.pd-cta-title{max-width:none!important;font-size:clamp(2.35rem,10.5vw,4rem)!important}}
