/* Only enqueued on the three explicit candidate routes. Shared components keep
   the accepted homepage markup and its original scoped styles. */
.dm-portfolio-page{--pf-paper:#faf8f2;--pf-line:#e1dcd0;--pf-olive:#706e4c;font-family:Arial,Helvetica,sans-serif;color:#171914;background:var(--pf-paper);font-weight:400;line-height:1.45}
.dm-portfolio-page *{box-sizing:border-box}.dm-portfolio-page [hidden]{display:none!important}.dm-portfolio-page img{display:block;max-width:100%;height:auto}.dm-portfolio-page a{color:inherit}.dm-portfolio-page :is(a,button,input):focus-visible{outline:3px solid #8b8b60;outline-offset:3px}.dm-portfolio-page button{font:inherit;cursor:pointer}.dm-portfolio-page h1,.dm-portfolio-page h2,.dm-portfolio-page h3{font-family:Arial,Helvetica,sans-serif;letter-spacing:-.04em;line-height:1.07;font-weight:700;color:#161714;margin:0 0 20px;text-transform:none}.dm-portfolio-page h1{font-size:clamp(35px,4.5vw,60px)}.dm-portfolio-page h2{font-size:clamp(29px,3.2vw,42px)}.dm-portfolio-page h3{font-size:23px;letter-spacing:-.025em}.pf-section{max-width:1280px;margin:0 auto;padding:30px 42px;border-bottom:1px solid var(--pf-line);scroll-margin-top:100px}.pf-first{padding-top:34px}.pf-lead{font-size:23px;line-height:1.35;margin:0 0 23px}.pf-filters{display:flex;gap:9px;margin:19px 0 24px;flex-wrap:wrap}.pf-filters button{min-width:104px;padding:10px 20px;border:1px solid #d6d0c1;border-radius:50px;background:transparent;color:#20211b;font-size:16px;font-weight:400;white-space:nowrap}.pf-filters button[aria-pressed=true],.pf-button{background:var(--pf-olive);color:white;border-color:var(--pf-olive)}.pf-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pf-gallery.pf-mosaic{grid-template-columns:1.1fr 1.1fr .8fr}.pf-photo{display:block;position:relative;overflow:hidden;border-radius:6px;background:#e8e3d8;text-decoration:none;line-height:0}.pf-photo img{width:100%;height:270px;object-fit:cover;transition:transform .18s ease}.pf-photo:hover img{transform:scale(1.015)}.pf-mosaic .pf-photo img{height:280px}.pf-magnify{position:absolute;right:12px;bottom:12px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fffdf8;color:#171914;font-size:28px;line-height:1;box-shadow:0 1px 8px #302a1933;opacity:0;transition:opacity .15s}.pf-photo:hover .pf-magnify,.pf-photo:focus-visible .pf-magnify,.pf-detail-pair .pf-magnify{opacity:1}.pf-more-row{text-align:center;margin-top:22px}.pf-button,.pf-outline{display:inline-flex;align-items:center;justify-content:center;min-width:260px;min-height:46px;padding:10px 24px;border:1px solid var(--pf-olive);border-radius:40px;font-size:16px;line-height:1.3;text-decoration:none;font-weight:400}.pf-detail-pair{display:grid;grid-template-columns:1.45fr 1fr;gap:10px}.pf-detail-pair .pf-photo img{height:320px}.pf-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.pf-topic-grid article h3{font-size:21px;margin-bottom:12px}.pf-topic-grid article>a{display:block;text-decoration:none}.pf-topic-grid img{width:100%;height:195px;object-fit:cover;border-radius:6px}.pf-outline{background:transparent;min-width:0;width:100%;margin-top:8px;color:#22231c;font-size:15px}.pf-project-heading{padding-bottom:8px}.pf-story-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.pf-story-heading h2{margin-bottom:0}.pf-project-link{display:inline-flex;gap:12px;align-items:center;font-size:17px;line-height:1.3;text-decoration:none}.pf-project-link:hover{text-decoration:underline}.pf-project-link span{font-size:24px;color:#776d4a}.pf-story-grid{display:grid;grid-template-columns:1.85fr 1fr .52fr;grid-template-rows:235px 235px;gap:10px 12px}.pf-story-grid>.pf-story-main{grid-row:1/3;grid-column:1}.pf-story-grid>.pf-story-detail:nth-of-type(2){grid-row:1;grid-column:2}.pf-story-grid>.pf-story-detail:nth-of-type(3){grid-row:2;grid-column:2}.pf-story-grid .pf-photo img{width:100%;height:100%;object-fit:cover}.pf-story-notes{grid-row:1/3;grid-column:3;list-style:none;margin:30px 0;padding:0;display:flex;flex-direction:column;justify-content:center;font-size:16px;line-height:1.35}.pf-story-notes li{padding:25px 10px;border-bottom:1px solid var(--pf-line);border-left:1px solid var(--pf-line)}.pf-story-notes li:last-child{border-bottom:0}.pf-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.pf-archive-card h3{font-size:22px;line-height:1.18;letter-spacing:-.025em;margin-bottom:12px}.pf-archive-card h3 a{text-decoration:none}.pf-archive-card img{width:100%;height:260px;object-fit:cover;border-radius:5px}.pf-archive-card>.pf-project-link{margin-top:12px;font-size:15px}.pf-taxonomy-nav{display:flex;gap:12px 20px;flex-wrap:wrap;margin:10px 0 25px}.pf-taxonomy-nav a{font-size:15px;text-underline-offset:4px}.pf-preserved{font-size:17px}.pf-preserved h2{font-size:34px}.pf-preserved .hero-project-archive__list{padding:0 0 0 24px;max-width:none;font-size:17px;line-height:1.55}.pf-preserved .wp-block-decormos-how-we-work__inner{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.pf-preserved .wp-block-decormos-how-we-work__step{display:block!important}.pf-preserved .wp-block-decormos-how-we-work__step-decor{display:none!important}.pf-preserved .wp-block-decormos-how-we-work__card{width:auto!important;max-width:none!important}.pf-preserved .wp-block-decormos-how-we-work__card-preview{height:70px!important;margin:0 0 14px!important}.pf-preserved .wp-block-decormos-how-we-work__card-preview img{max-height:65px;width:auto!important;margin:auto}.pf-preserved .wp-block-decormos-how-we-work__card-content{font-size:15px;line-height:1.5}.pf-preserved .wp-block-decormos-how-we-work__card-content h3{font-size:21px}.pf-lightbox{position:fixed;border:0;padding:45px 60px 30px;background:#181916;color:#fff;max-width:97vw;max-height:97vh;border-radius:5px;overflow:visible}.pf-lightbox::backdrop{background:#000c}.pf-lightbox>img{max-width:calc(95vw - 120px);max-height:calc(92vh - 80px);width:auto;height:auto;object-fit:contain;margin:auto}.pf-lightbox p{font-size:13px;line-height:1.2;text-align:center;margin:12px 0 0}.pf-close{position:absolute;right:8px;top:4px;background:none;border:0;color:white;font-size:33px;width:40px;height:38px;line-height:1}.pf-lightbox-prev,.pf-lightbox-next{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border:1px solid #ded7c9;background:#faf8f2;color:#24231b;font-size:23px;border-radius:2px}.pf-lightbox-prev{left:10px}.pf-lightbox-next{right:10px}
.pf-preview-banner{padding:9px 22px;background:#e8e4d9;font:12px Arial;display:flex;gap:16px;align-items:center;justify-content:space-between}.pf-preview-header{position:sticky;top:0;background:#faf8f2f2;z-index:30;border-bottom:1px solid #e1dcd0;font:14px Arial}.pf-preview-header>div{max-width:1280px;margin:auto;display:flex;align-items:center;gap:26px;padding:19px 42px}.pf-preview-logo{display:flex;gap:10px;align-items:center;white-space:nowrap;text-decoration:none;color:#171914!important}.pf-preview-logo b{font-size:28px;letter-spacing:-3px}.pf-preview-header nav{display:flex;gap:22px;margin:auto;font-size:13px}.pf-preview-header nav a{text-decoration:none;color:inherit}.pf-preview-phone{font-size:16px;white-space:nowrap;text-decoration:none;color:inherit}.pf-preview-toggle{display:none;border:0;background:none;font-size:25px}.pf-preview-shell{margin:0;background:#faf8f2}.pf-preview-shell>main{max-width:none;margin:0;padding:0}.pf-preview-response{font-size:13px!important;margin-top:12px!important;color:#5f6246!important}.pf-local-form .accepted-consent{font-size:12px;font-weight:400}.pf-local-form input[type=tel]{width:100%;min-width:0;height:45px;padding:12px;border:1px solid #cfc9bc;background:#fffdfa;border-radius:3px;font:16px Arial}.pf-local-form button{border:0;border-radius:30px;background:#75775a;color:white;padding:12px 22px;min-height:45px;font:15px Arial;cursor:pointer}.pf-local-form>div{display:flex;gap:10px}.pf-local-form .accepted-consent{margin-top:10px;display:block}.pf-preview-shell .accepted-components .accordion-collapse:not(.show){display:none}.pf-preview-shell .accepted-components .accordion-button{cursor:pointer}.pf-preview-shell .accepted-components .wpcf7{margin:0}.pf-preview-shell .accepted-components :is(.wpcf7-spinner,.screen-reader-response){display:none}.pf-preview-shell .accepted-components .wpcf7-form-control-wrap{display:block}
@media(max-width:900px){.pf-section{padding:27px}.pf-story-grid{grid-template-columns:1.5fr 1fr .6fr;grid-template-rows:190px 190px}.pf-filters button{min-width:80px;font-size:14px;padding:9px 16px}.pf-gallery .pf-photo img{height:235px}.pf-preview-header>div{padding:18px 25px;gap:15px}.pf-preview-header nav{gap:15px}}
@media(max-width:700px){.pf-section{padding:23px 17px}.pf-first{padding-top:25px}.dm-portfolio-page h1{font-size:34px;line-height:1.07;margin-bottom:12px}.dm-portfolio-page h2{font-size:27px;margin-bottom:17px}.pf-lead{font-size:18px;margin-bottom:14px}.pf-filters{gap:7px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;margin:14px -1px 18px;padding:0 1px 6px}.pf-filters button{min-width:65px;font-size:13px;padding:8px 16px}.pf-gallery,.pf-gallery.pf-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.pf-gallery .pf-photo img,.pf-mosaic .pf-photo img{height:165px}.pf-magnify{opacity:1;width:27px;height:27px;font-size:23px;right:6px;bottom:6px}.pf-button{min-width:0;width:100%;font-size:15px}.pf-more-row{margin-top:16px}.pf-detail-pair{grid-template-columns:1fr;gap:10px}.pf-detail-pair .pf-photo img{height:220px}.pf-topic-grid{grid-template-columns:1fr;gap:11px}.pf-topic-grid article{display:grid;grid-template-columns:36% 1fr;gap:13px;position:relative;border:1px solid var(--pf-line);border-radius:5px;overflow:hidden;min-height:95px}.pf-topic-grid article>a{display:contents}.pf-topic-grid article h3{grid-column:2;align-self:center;margin:0 14px 0 0;font-size:17px;line-height:1.25;z-index:1;pointer-events:none}.pf-topic-grid article img{height:100%;min-height:95px;grid-row:1;grid-column:1;border-radius:0}.pf-topic-grid article .pf-outline{position:absolute;inset:0;width:100%;height:100%;min-height:0;border:0;margin:0;font-size:0;background:transparent}.pf-topic-grid article .pf-outline:after{content:'›';position:absolute;right:11px;top:35px;font-size:22px}.pf-project-heading .pf-filters{flex-wrap:wrap;overflow:visible}.pf-story-heading{display:block;margin-bottom:15px}.pf-story-heading h2{margin-bottom:8px}.pf-project-link{font-size:15px}.pf-story-grid{grid-template-columns:1fr 1fr;grid-template-rows:255px 150px auto;gap:8px}.pf-story-grid>.pf-story-main{grid-column:1/-1;grid-row:1}.pf-story-grid>.pf-story-detail:nth-of-type(2){grid-column:1;grid-row:2}.pf-story-grid>.pf-story-detail:nth-of-type(3){grid-column:2;grid-row:2}.pf-story-notes{grid-column:1/-1;grid-row:3;margin:3px 0 0;font-size:14px}.pf-story-notes li{padding:11px 12px;border-left:1px solid var(--pf-line);border-bottom:1px solid var(--pf-line)}.pf-archive-grid{grid-template-columns:1fr 1fr;gap:23px 12px}.pf-archive-card h3{font-size:18px}.pf-archive-card img{height:180px}.pf-archive-card>.pf-project-link{font-size:13px}.pf-taxonomy-nav{gap:9px 15px;margin-bottom:20px}.pf-taxonomy-nav a{font-size:13px}.pf-preserved .wp-block-decormos-how-we-work__inner{grid-template-columns:1fr;gap:20px}.pf-preserved .hero-project-archive__list{font-size:16px}.pf-preview-banner{font-size:11px;padding:8px 15px;gap:12px}.pf-preview-header>div{padding:14px 17px;gap:12px}.pf-preview-header nav{display:none}.pf-preview-header nav.pf-open{display:flex;flex-direction:column;position:absolute;left:0;top:100%;width:100%;padding:22px;background:#faf8f2;border-bottom:1px solid #ded7c9}.pf-preview-toggle{display:block;order:3}.pf-preview-phone{font-size:12px;margin-left:auto}.pf-preview-logo{font-size:12px;gap:8px}.pf-preview-logo b{font-size:25px}.pf-lightbox{padding:43px 8px 32px;max-width:97vw;max-height:94vh}.pf-lightbox>img{max-width:calc(97vw - 16px);max-height:calc(88vh - 80px)}.pf-lightbox-prev,.pf-lightbox-next{top:auto;bottom:-5px;transform:none;width:37px;height:37px}.pf-lightbox-prev{left:10px}.pf-lightbox-next{right:10px}.pf-local-form>div{display:block}.pf-local-form button{width:100%;margin-top:10px}.pf-local-form .accepted-consent{font-size:11px}}
@media(prefers-reduced-motion:reduce){.pf-photo img{transition:none}}
