.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );}.elementor-widget-text-editor{color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-13270 .elementor-element.elementor-element-978c9a2 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-da759f1 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-784a599 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-aa1c84a .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-f3eb21c .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-0ad1ae4 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-dc2f96f:not(.elementor-motion-effects-element-type-background), .elementor-13270 .elementor-element.elementor-element-dc2f96f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#4A4642;}.elementor-13270 .elementor-element.elementor-element-dc2f96f{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-13270 .elementor-element.elementor-element-dc2f96f > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13270 .elementor-element.elementor-element-49e1705 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#FBF9F6;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );}.elementor-13270 .elementor-element.elementor-element-bb0933a{width:auto;max-width:auto;}.elementor-13270 .elementor-element.elementor-element-61d5e58 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-4dbce5d .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-7ca8ef1 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-e63915d .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-13270 .elementor-element.elementor-element-76441df .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-weight:300;color:#2A2826;}.elementor-widget-toggle .elementor-toggle-title, .elementor-widget-toggle .elementor-toggle-icon{color:var( --e-global-color-primary );}.elementor-widget-toggle .elementor-toggle-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-toggle .elementor-tab-title.elementor-active a, .elementor-widget-toggle .elementor-tab-title.elementor-active .elementor-toggle-icon{color:var( --e-global-color-accent );}.elementor-widget-toggle .elementor-tab-content{color:var( --e-global-color-text );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-13270 .elementor-element.elementor-element-43421a7{width:100%;}.elementor-13270 .elementor-element.elementor-element-7727fc9{width:100%;}.elementor-13270 .elementor-element.elementor-element-0fe4f62{width:58%;}.elementor-13270 .elementor-element.elementor-element-b4ae20c{width:42%;}.elementor-13270 .elementor-element.elementor-element-2736859{width:100%;}.elementor-13270 .elementor-element.elementor-element-0ef8587{width:100%;}.elementor-13270 .elementor-element.elementor-element-7e4b098{width:33%;}.elementor-13270 .elementor-element.elementor-element-5639a86{width:33%;}.elementor-13270 .elementor-element.elementor-element-c4c1396{width:33%;}.elementor-13270 .elementor-element.elementor-element-c93262e{width:100%;}}/* Start custom CSS */400;500;600&display=swap');
body{background:#FBF9F6}
.pp-sec{padding:0 24px}
.pp-sec > .elementor-container{max-width:1240px}
.pp-sec .elementor-widget{margin-bottom:0}
.pp-eyebrow p{font-family:Montserrat,sans-serif;font-size:12px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:#A88A5C;margin:0 0 18px}
body .pp-h .elementor-heading-title{font-family:Montserrat,sans-serif!important;font-weight:300!important;color:#2A2826;text-transform:uppercase;letter-spacing:.08em;line-height:1.18;margin:0}
body .pp-h1 .elementor-heading-title{font-size:clamp(30px,3.4vw,50px)}
body .pp-h2 .elementor-heading-title{font-size:clamp(24px,2.6vw,36px)}
body .pp-h1,body .pp-h2{margin-bottom:26px!important}
body .pp-h3 .elementor-heading-title{font-size:15px;font-weight:600!important;letter-spacing:.14em;line-height:1.4}
body .pp-h3{margin:30px 0 10px!important}
body .pp-light .elementor-heading-title{color:#FBF9F6}
.pp-text p{font-family:Montserrat,sans-serif;font-size:16px;line-height:1.85;color:#5E574F;margin:0 0 18px}
.pp-text a{color:#A88A5C;border-bottom:1px solid rgba(168,138,92,.4)}
.pp-text a:hover{color:#2A2826}
.pp-small p{font-size:14px;margin:0 0 26px}
.pp-b .elementor-button{font-family:Montserrat,sans-serif;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;border-radius:0;padding:19px 32px;background-image:none!important;transition:all .3s}
.pp-b-light .elementor-button{background-color:#FBF9F6!important;color:#2A2826!important}
.pp-b-light .elementor-button:hover{background-color:#A88A5C!important;color:#fff!important}
.pp-img img{display:block;width:100%!important;max-width:100%!important;height:auto;object-fit:cover}
.pp-img figure{margin:0}
.pp-img .widget-image-caption{font-family:Montserrat,sans-serif;font-size:12px;font-style:normal;letter-spacing:.06em;color:#8A8178;margin-top:12px;text-align:left}
/* hero + title */
.pp-hero-sec{padding:0}
.pp-hero img{height:min(78vh,820px)!important;object-position:center 40%}
.pp-titleband{background:#F3EEE6;text-align:center;padding:72px 24px 64px}
.pp-titleband .elementor-widget-wrap{justify-content:center}
.pp-titleband .elementor-widget{width:100%}
.pp-lede p{font-size:17px;max-width:660px;margin:0 auto 40px}
.pp-meta .elementor-widget-container{display:flex;justify-content:center;flex-wrap:wrap;gap:0;border-top:1px solid #DCD1BF;padding-top:28px;max-width:820px;margin:0 auto}
.pp-meta p{font-family:Montserrat,sans-serif;margin:0;padding:0 32px;font-size:14px;color:#2A2826;text-align:center}
.pp-meta p + p{border-left:1px solid #DCD1BF}
.pp-meta span{display:block;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#A88A5C;margin-bottom:6px}
/* story */
.pp-story{padding-top:clamp(72px,8vw,112px);padding-bottom:clamp(72px,8vw,112px)}
.pp-story-text > .elementor-widget-wrap{padding-right:56px!important}
.pp-tip{margin-top:30px!important}
.pp-tip .elementor-widget-container{background:#F3EEE6;padding:26px 28px;border-left:0}
.pp-tip p{font-family:Montserrat,sans-serif;font-size:15px;line-height:1.7;color:#2A2826;margin:0}
.pp-tip p.pp-tip-label{font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#A88A5C;margin:0 0 8px}
.pp-story-spec > .elementor-widget-wrap{background:#fff;padding:36px 34px!important;align-self:flex-start;box-shadow:0 1px 0 rgba(42,40,38,.04)}
.pp-swatch img{aspect-ratio:3/1;object-position:center}
.pp-spec dl{font-family:Montserrat,sans-serif;margin:24px 0 32px;display:grid;grid-template-columns:auto 1fr;gap:0}
.pp-spec dt,.pp-spec dd{padding:14px 0;border-bottom:1px solid #EAE3D7;margin:0}
.pp-spec dt{font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#A88A5C;padding-right:20px;padding-top:16px}
.pp-spec dd{font-size:14px;line-height:1.6;color:#2A2826}
.pp-side-photo img{aspect-ratio:1/1}
/* cta */
.pp-cta{text-align:center;padding:96px 24px}
.pp-cta .elementor-widget-wrap{justify-content:center}
.pp-cta .elementor-widget{width:100%}
.pp-cta .pp-b{width:auto!important}
.pp-on-dark p{color:#CDBFA8;margin-bottom:30px}
/* more projects */
.pp-more-head{text-align:center;padding-top:clamp(72px,8vw,112px)}
.pp-more{padding-bottom:clamp(72px,8vw,112px)}
.pp-card{overflow:hidden}
.pp-card img{aspect-ratio:4/3;transition:transform 1.2s ease}
.pp-card:hover img{transform:scale(1.04)}
.pp-card-loc p{font-family:Montserrat,sans-serif;font-size:11px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:#A88A5C;margin:18px 0 6px}
body .pp-card-title .elementor-heading-title{font-family:Montserrat,sans-serif!important;font-size:18px;font-weight:400;letter-spacing:.1em;text-transform:uppercase}
body .pp-card-title a{color:#2A2826}
body .pp-card-title a:hover{color:#A88A5C}
/* service areas */
.pp-areas{background:#F3EEE6;padding:64px 24px;text-align:center}
.pp-areas > .elementor-container{max-width:860px}
body .pp-areas-title{margin-top:0!important}
.pp-toggle .elementor-toggle-item{border-top:1px solid #DCD1BF;text-align:left}
.pp-toggle .elementor-toggle-item:last-child{border-bottom:1px solid #DCD1BF}
.pp-toggle .elementor-tab-title{border:0!important;padding:18px 4px!important;font-family:Montserrat,sans-serif;font-size:12px!important;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.pp-toggle .elementor-tab-title a,.pp-toggle .elementor-tab-title .elementor-toggle-icon{color:#2A2826!important}
.pp-toggle .elementor-tab-content{border:0!important;padding:0 4px 22px!important;font-family:Montserrat,sans-serif;font-size:13px;line-height:1.8;color:#5E574F}
@media(max-width:1024px){.pp-story-text > .elementor-widget-wrap{padding-right:10px!important}.pp-story .elementor-column{width:100%!important}.pp-story-spec{margin-top:40px}}
@media(max-width:767px){.pp-hero img{height:56vh!important}.pp-titleband{padding:44px 22px 48px}.pp-meta p{padding:0 14px;font-size:13px}.pp-meta p + p{border-left:0}.pp-meta .elementor-widget-container{gap:18px}.pp-story-spec > .elementor-widget-wrap{padding:28px 22px!important}.pp-more .elementor-column{margin-bottom:32px}}/* End custom CSS */