.pn-landing *{ box-sizing: border-box; }
.pn-landing{ scroll-behavior: smooth; }
.pn-landing{ margin: 0px; background: rgb(247, 245, 239); color: rgb(32, 34, 30); font-family: Arial, Helvetica, sans-serif; line-height: 1.55; }
.pn-landing a{ color: inherit; text-decoration: none; }
.pn-landing button{ font: inherit; cursor: pointer; }
.pn-landing .review{ background: rgb(233, 226, 211); color: rgb(85, 74, 52); padding: 10px 4%; font-size: 12px; display: flex; justify-content: space-between; gap: 12px; }
.pn-landing .review nav{ display: flex; gap: 20px; }
.pn-landing .review a[aria-current="page"]{ text-decoration: underline; font-weight: bold; }
.pn-landing header{ padding: 22px 6%; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgb(220, 216, 206); gap: 25px; }
.pn-landing .brand{ display: flex; align-items: center; gap: 25px; }
.pn-landing .brand img{ width: 118px; height: 80px; object-fit: contain; }
.pn-landing .brand span{ font-size: 12px; border-left: 1px solid rgb(200, 191, 174); padding-left: 24px; }
.pn-landing header nav{ display: flex; align-items: center; gap: 28px; font-size: 13px; }
.pn-landing .active{ color: rgb(124, 104, 66); border-bottom: 1px solid; }
.pn-landing{ max-width: 1440px; margin: auto; }
.pn-landing .wrap{ padding: 66px 6%; }
.pn-landing .eyebrow{ font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: rgb(130, 109, 71); font-weight: bold; }
.pn-landing .eyebrow.light{ color: rgb(201, 182, 141); }
.pn-landing h1,.pn-landing h2,.pn-landing h3,.pn-landing p{ margin-top: 0px; }
.pn-landing h1{ font-size: clamp(38px, 4.4vw, 64px); letter-spacing: -2px; line-height: 1.06; margin-bottom: 24px; font-weight: 500; max-width: 950px; }
.pn-landing h2{ font-size: clamp(29px, 3vw, 43px); letter-spacing: -1.3px; line-height: 1.15; font-weight: 500; margin-bottom: 20px; }
.pn-landing h3{ font-size: 24px; line-height: 1.2; font-weight: 500; letter-spacing: -0.5px; }
.pn-landing em{ font-style: normal; color: rgb(130, 109, 71); }
.pn-landing .lead{ color: rgb(104, 107, 98); font-size: 17px; max-width: 650px; }
.pn-landing .btn{ display: inline-block; padding: 16px 23px; background: rgb(35, 39, 32); color: rgb(255, 255, 255); border: 1px solid rgb(35, 39, 32); font-size: 13px; font-weight: bold; }
.pn-landing .btn.outline{ background: transparent; color: inherit; border-color: rgb(166, 163, 149); }
.pn-landing .arrow{ margin-left: 22px; }
.pn-landing figure{ margin: 0px; }
.pn-landing img{ display: block; width: 100%; }
.pn-landing .intro{ display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 60px; align-items: center; }
.pn-landing .intro .photo{ height: 470px; }
.pn-landing .photo{ position: relative; overflow: hidden; background: rgb(225, 223, 215); }
.pn-landing .photo img{ height: 100%; width: 100%; object-fit: cover; }
.pn-landing .tag{ position: absolute; top: 18px; left: 18px; background: rgb(247, 245, 239); padding: 6px 12px; font-size: 10px; letter-spacing: 1.5px; font-weight: bold; }
.pn-landing .tag.dark{ background: rgb(37, 42, 35); color: white; }
.pn-landing .pic-foot{ position: absolute; bottom: 0px; left: 0px; right: 0px; padding: 45px 22px 20px; background: linear-gradient(transparent, rgba(17, 17, 17, 0.667)); color: white; font-size: 14px; }
.pn-landing .section-head{ display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 32px; }
.pn-landing .section-head p{ max-width: 350px; color: rgb(104, 107, 98); font-size: 14px; }
.pn-landing .compare{ display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.pn-landing .compare .photo{ height: 460px; }
.pn-landing .compare img{ object-fit: contain; background: rgb(230, 227, 218); }
.pn-landing .compare figcaption{ padding: 13px 0px; font-size: 13px; color: rgb(104, 107, 98); }
.pn-landing .fine{ font-size: 12px; color: rgb(119, 120, 109); }
.pn-landing .casebar{ display: flex; justify-content: space-between; align-items: center; padding: 25px 0px; border-bottom: 1px solid rgb(212, 208, 198); gap: 25px; }
.pn-landing .casebar h3{ margin-bottom: 5px; }
.pn-landing .text-link{ font-size: 13px; white-space: nowrap; border-bottom: 1px solid rgb(129, 112, 78); padding-bottom: 6px; }
.pn-landing .dark-section{ background: rgb(37, 44, 37); color: rgb(248, 246, 239); }
.pn-landing .steps{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; }
.pn-landing .step{ border-top: 1px solid rgb(91, 98, 86); padding-top: 20px; }
.pn-landing .num{ font-size: 12px; color: rgb(189, 173, 137); display: block; margin-bottom: 32px; }
.pn-landing .step p{ font-size: 14px; color: rgb(212, 214, 205); }
.pn-landing .method-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.pn-landing .method-grid .photo{ height: 450px; }
.pn-landing .method-grid img{ object-fit: contain; background: rgb(222, 221, 213); }
.pn-landing .caption{ display: flex; gap: 20px; padding-top: 18px; }
.pn-landing .caption b{ font-size: 13px; color: rgb(130, 109, 71); }
.pn-landing .caption p{ color: rgb(104, 107, 98); font-size: 14px; max-width: 450px; }
.pn-landing .results{ display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 18px; }
.pn-landing .results .photo{ height: 380px; }
.pn-landing .results img{ object-fit: contain; background: rgb(222, 221, 213); }
.pn-landing .results figcaption{ font-size: 12px; padding-top: 10px; }
.pn-landing .cta{ display: grid; grid-template-columns: 1.2fr 1fr; gap: 70px; align-items: center; border-top: 1px solid rgb(216, 210, 196); background: rgb(238, 233, 221); }
.pn-landing .cta h2{ max-width: 570px; }
.pn-landing .cta p{ color: rgb(98, 102, 87); font-size: 15px; max-width: 490px; }
.pn-landing .cta ol{ padding-left: 18px; font-size: 13px; color: rgb(98, 102, 87); margin-bottom: 25px; }
.pn-landing footer{ padding: 32px 6%; display: flex; justify-content: space-between; font-size: 12px; color: rgb(112, 115, 101); }
.pn-landing .pills{ display: flex; gap: 10px; flex-wrap: wrap; margin-top: 28px; }
.pn-landing .pill{ border: 1px solid rgb(200, 194, 179); padding: 8px 14px; font-size: 12px; }
.pn-landing .pill.selected{ background: rgb(37, 44, 37); color: white; border-color: rgb(37, 44, 37); }
.pn-landing .case-card{ display: grid; grid-template-columns: 1.3fr 1fr; gap: 50px; align-items: center; margin-top: 36px; }
.pn-landing .case-card .photo{ height: 440px; }
.pn-landing .meta{ display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgb(210, 205, 191); margin-top: 28px; gap: 18px; padding-top: 20px; font-size: 13px; }
.pn-landing .meta small{ display: block; text-transform: uppercase; font-size: 9px; letter-spacing: 1px; color: rgb(130, 109, 71); margin-bottom: 6px; }
.pn-landing .flow{ padding: 18px 0px; border-bottom: 1px solid rgb(210, 205, 191); font-size: 12px; letter-spacing: 1px; color: rgb(123, 106, 72); }
.pn-landing .note{ padding: 20px 25px; background: rgb(237, 230, 214); font-size: 12px; color: rgb(102, 90, 67); border-left: 2px solid rgb(168, 144, 93); margin-top: 28px; }
.pn-landing .breadcrumb{ font-size: 12px; color: rgb(115, 116, 103); margin-bottom: 32px; }
.pn-landing dialog{ border: 0px; max-width: 520px; padding: 40px; background: rgb(247, 245, 239); color: rgb(36, 42, 33); }
.pn-landing dialog::backdrop{ background: rgba(17, 17, 17, 0.6); }
.pn-landing dialog h2{ font-size: 30px; }
.pn-landing dialog p{ font-size: 14px; }
.pn-landing dialog button{ margin-top: 15px; }
.pn-landing .hero-case{ display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 70px; align-items: end; }
.pn-landing .hero-case .meta{ margin: 0px; }
.pn-landing .mobile-cta{ display: none; }
.pn-landing .review-note{ border-top: 1px solid rgb(216, 210, 196); padding: 24px 6%; font-size: 12px; color: rgb(113, 102, 79); background: rgb(236, 231, 219); }
.pn-landing .review-note strong{ display: block; margin-bottom: 6px; }
@media (max-width: 760px){.pn-landing .review{ display: block; font-size: 10px; }
.pn-landing .review nav{ margin-top: 7px; gap: 18px; }
.pn-landing header{ padding: 12px 6%; }
.pn-landing .brand img{ width: 90px; height: 60px; }
.pn-landing .brand span{ display: none; }
.pn-landing header nav{ gap: 14px; font-size: 11px; }
.pn-landing header nav .optional{ display: none; }
.pn-landing .wrap{ padding: 42px 6%; }
.pn-landing .intro,.pn-landing .hero-case,.pn-landing .case-card,.pn-landing .cta{ grid-template-columns: 1fr; gap: 28px; }
.pn-landing h1{ letter-spacing: -1.3px; }
.pn-landing .intro .photo{ height: 400px; }
.pn-landing .section-head{ display: block; }
.pn-landing .section-head p{ max-width: 100%; }
.pn-landing .compare{ gap: 10px; }
.pn-landing .compare .photo{ height: 280px; }
.pn-landing .compare .tag{ left: 8px; top: 8px; font-size: 9px; padding: 5px 8px; }
.pn-landing .compare figcaption{ font-size: 11px; }
.pn-landing .casebar{ align-items: start; }
.pn-landing .casebar h3{ font-size: 20px; }
.pn-landing .casebar .text-link{ font-size: 11px; }
.pn-landing .steps{ grid-template-columns: 1fr; gap: 20px; }
.pn-landing .num{ margin-bottom: 12px; }
.pn-landing .method-grid{ gap: 15px; }
.pn-landing .method-grid .photo{ height: 280px; }
.pn-landing .caption{ display: block; }
.pn-landing .caption p{ font-size: 12px; }
.pn-landing .results{ grid-template-columns: 1fr 1fr; }
.pn-landing .results figure:first-child{ grid-column: 1 / -1; }
.pn-landing .results .photo{ height: 290px; }
.pn-landing .results figure:first-child .photo{ height: 400px; }
.pn-landing .cta{ gap: 10px; }
.pn-landing .case-card .photo{ height: 400px; }
.pn-landing footer{ display: block; padding-bottom: 70px; }
.pn-landing footer span{ display: block; margin-bottom: 8px; }
.pn-landing .mobile-cta{ display: block; position: fixed; bottom: 0px; left: 0px; right: 0px; text-align: center; background: rgb(37, 44, 37); color: white; padding: 15px; border: 0px; font-size: 12px; z-index: 10; }
.pn-landing dialog{ margin: 20vh 6%; padding: 28px; }
.pn-landing .review-note{ padding-bottom: 32px; }
}
.pn-landing .sector-grid{ display: grid; grid-template-columns: 1fr 1fr; gap: 26px; margin-top: 44px; }
.pn-landing .sector{ padding: 38px; border: 1px solid rgb(205, 198, 183); display: flex; flex-direction: column; align-items: start; min-height: 370px; background: rgb(238, 233, 222); }
.pn-landing .sector:nth-child(2){ background: rgb(227, 228, 220); }
.pn-landing .sector h2{ font-size: 42px; }
.pn-landing .sector p{ max-width: 420px; color: rgb(98, 102, 87); }
.pn-landing .sector .btn{ margin-top: auto; }
.pn-landing .photo-pending{ padding: 65px 6%; border: 1px dashed rgb(178, 166, 142); background: rgb(237, 232, 220); margin: 40px 0px; }
.pn-landing .private-steps .step{ border-color: rgb(197, 191, 175); }
.pn-landing .private-steps .step p{ color: rgb(104, 107, 98); }
.pn-landing .private-steps .num{ color: rgb(130, 109, 71); }
@media (max-width: 760px){.pn-landing .sector-grid{ grid-template-columns: 1fr; }
.pn-landing .sector{ min-height: 330px; padding: 26px; }
.pn-landing .sector h2{ font-size: 32px; }
.pn-landing .photo-pending{ padding: 35px 7%; }
}
.pn-landing .service-grid{ display: grid; grid-template-columns: repeat(2, 1fr); gap: 25px; margin-top: 35px; }
.pn-landing .service-grid article{ border: 1px solid rgb(208, 200, 185); padding: 30px; scroll-margin-top: 25px; }
.pn-landing .service-grid p{ color: rgb(98, 102, 87); font-size: 15px; }
.pn-landing .service-grid .text-link{ white-space: normal; }
.pn-landing .care-block > p{ max-width: 720px; }
.pn-landing .care-block .fine{ color: rgb(200, 203, 187); margin-top: 18px; }
.pn-landing .light-btn{ background: rgb(242, 237, 223); color: rgb(37, 44, 37); }
.pn-landing .hero-actions{ display: flex; gap: 15px; flex-wrap: wrap; }
.pn-landing header nav{ flex-wrap: wrap; justify-content: end; gap: 20px; }
.pn-landing header .brand{ flex-shrink: 0; }
@media (max-width: 760px){.pn-landing .service-grid{ grid-template-columns: 1fr; }
.pn-landing header{ align-items: start; flex-direction: column; gap: 12px; }
.pn-landing header nav{ justify-content: start; gap: 10px 16px; font-size: 11px; }
.pn-landing .hero-actions .btn{ width: 100%; text-align: center; }
.pn-landing .service-grid article{ padding: 24px; }
}
@media (max-width: 760px){.pn-landing .mobile-cta{ display: flex; padding: 0px; }
.pn-landing .mobile-cta button{ width: 50%; border: 0px; padding: 15px 5px; background: rgb(37, 44, 37); color: white; font-size: 11px; }
.pn-landing .mobile-cta button + button{ border-left: 1px solid rgb(106, 112, 95); background: rgb(231, 224, 207); color: rgb(37, 44, 37); }
}
.pn-landing .landing-nav{ display: flex; gap: 20px; flex-wrap: wrap; font-size: 12px; }
.pn-landing .landing-hero{ display: grid; grid-template-columns: 1fr 1fr; gap: 55px; align-items: center; }
.pn-landing .landing-hero .photo{ height: 570px; }
.pn-landing .landing-hero .photo img{ object-fit: contain; background: rgb(222, 219, 209); }
.pn-landing .landing-hero h1{ font-size: clamp(38px, 4.4vw, 64px); }
.pn-landing .context{ border-top: 1px solid rgb(200, 193, 179); padding-top: 17px; font-size: 13px; color: rgb(108, 112, 94); }
.pn-landing .proof-row{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; padding: 28px 6%; border-block: 1px solid rgb(211, 203, 189); font-size: 13px; }
.pn-landing .proof-row span{ display: block; font-size: 10px; letter-spacing: 1px; color: rgb(130, 109, 71); margin-bottom: 5px; }
.pn-landing .photo-plan{ background: rgb(234, 228, 215); border: 1px dashed rgb(183, 171, 146); padding: 45px 30px; min-height: 440px; display: flex; flex-direction: column; justify-content: center; }
.pn-landing .photo-plan small{ letter-spacing: 2px; color: rgb(130, 109, 71); }
.pn-landing .photo-plan h2{ font-size: 30px; margin-top: 24px; }
.pn-landing .photo-plan p{ font-size: 13px; color: rgb(109, 102, 87); }
.pn-landing .story-label{ display: flex; align-items: center; gap: 20px; margin-bottom: 28px; }
.pn-landing .story-label span{ border: 1px solid rgb(182, 168, 139); color: rgb(130, 109, 71); padding: 9px; font-size: 11px; }
.pn-landing .story-label h2{ margin: 0px; }
.pn-landing .split-copy{ display: grid; grid-template-columns: 1fr 1fr; gap: 55px; }
.pn-landing .split-copy p{ font-size: 16px; color: rgb(98, 102, 87); }
.pn-landing .review-callout{ padding: 16px 6%; font-size: 12px; background: rgb(233, 226, 211); color: rgb(104, 91, 66); }
.pn-landing .caption-title{ font-size: 17px; margin-bottom: 5px; }
.pn-landing .service-bridge{ display: grid; grid-template-columns: 1fr 1fr; gap: 35px; }
.pn-landing .service-bridge p{ color: rgb(98, 102, 87); font-size: 15px; }
.pn-landing .service-bridge .text-link{ white-space: normal; }
.pn-landing .continuity{ background: rgb(234, 229, 216); }
.pn-landing .continuity p{ max-width: 680px; font-size: 16px; color: rgb(98, 102, 87); }
.pn-landing .faq{ border-top: 1px solid rgb(201, 194, 179); padding: 18px 0px; }
.pn-landing .faq summary{ cursor: pointer; font-size: 17px; }
.pn-landing .faq p{ color: rgb(98, 102, 87); font-size: 14px; max-width: 750px; margin-top: 14px; }
.pn-landing .photo-plan.mini{ min-height: 310px; padding: 25px; }
.pn-landing .photo-plan.mini h2{ font-size: 24px; }
.pn-landing .gallery3{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.pn-landing .gallery3 .photo{ height: 380px; }
.pn-landing .gallery3 img{ object-fit: contain; background: rgb(222, 219, 209); }
.pn-landing .gallery3 figcaption{ font-size: 12px; color: rgb(98, 102, 87); padding-top: 12px; }
.pn-landing .draft-status{ font-size: 11px; letter-spacing: 1px; border: 1px solid rgb(181, 164, 125); padding: 7px 11px; display: inline-block; margin-bottom: 20px; }
.pn-landing .land-actions{ display: flex; gap: 12px; flex-wrap: wrap; margin: 25px 0px; }
.pn-landing .small-link{ font-size: 12px; text-decoration: underline; color: rgb(120, 100, 64); }
.pn-landing .landing-head{ max-width: 780px; }
.pn-landing .landing-head p{ max-width: 670px; }
@media (max-width: 760px){.pn-landing .landing-hero,.pn-landing .split-copy,.pn-landing .service-bridge{ grid-template-columns: 1fr; gap: 30px; }
.pn-landing .landing-hero .photo{ height: 440px; }
.pn-landing .proof-row{ grid-template-columns: 1fr; gap: 14px; }
.pn-landing .gallery3{ grid-template-columns: 1fr; }
.pn-landing .gallery3 .photo{ height: 430px; }
.pn-landing .photo-plan{ min-height: 350px; }
.pn-landing .landing-nav{ gap: 12px; }
.pn-landing .land-actions .btn{ width: 100%; text-align: center; }
}
.pn-landing .caprino .compare .photo{ height: 400px; }
.pn-landing .caprino-hero .photo{ height: 420px; }
.pn-landing .caprino .compare figcaption{ font-size: 12px; padding-top: 12px; color: rgb(98, 102, 87); }
.pn-landing .caprino .gallery3 .photo{ height: 330px; }
@media (max-width: 760px){.pn-landing .caprino-hero .photo{ height: 270px; }
.pn-landing .caprino .compare{ grid-template-columns: 1fr; }
.pn-landing .caprino .compare .photo{ height: 280px; }
.pn-landing .caprino .gallery3 .photo{ height: 310px; }
}
.pn-landing .final-hero{ display: grid; grid-template-columns: 1fr 1fr; gap: 55px; align-items: center; }
.pn-landing .final-hero .photo{ height: 560px; }
.pn-landing .final-hero img{ object-fit: cover; }
.pn-landing .final-hero .lead{ font-size: 17px; }
.pn-landing .case-tabs{ display: flex; flex-wrap: wrap; gap: 12px; padding: 25px 6%; border-block: 1px solid rgb(210, 202, 186); }
.pn-landing .case-tabs a{ font-size: 12px; padding: 9px 15px; border: 1px solid rgb(188, 180, 159); }
.pn-landing .case-tabs a:hover{ background: rgb(227, 220, 205); }
.pn-landing .editorial{ display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: center; }
.pn-landing .editorial .photo{ height: 440px; }
.pn-landing .editorial img{ object-fit: contain; background: rgb(228, 224, 215); }
.pn-landing .twophotos{ display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.pn-landing .twophotos .photo{ height: 390px; }
.pn-landing .twophotos img{ object-fit: contain; background: rgb(228, 224, 215); }
.pn-landing .phasebar{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; padding: 25px 0px; margin-bottom: 24px; border-top: 1px solid rgb(212, 205, 190); }
.pn-landing .phasebar h3{ font-size: 18px; }
.pn-landing .phasebar p{ font-size: 13px; color: rgb(108, 112, 95); }
.pn-landing .phasebar .num{ margin-bottom: 10px; color: rgb(130, 109, 71); }
.pn-landing .eyebrow.light + .lead{ color: rgb(213, 216, 206); }
.pn-landing .warm{ background: rgb(238, 232, 219); }
.pn-landing .soft-rule{ border-top: 1px solid rgb(213, 206, 190); }
.pn-landing .picture-note{ font-size: 11px; color: rgb(119, 116, 102); margin-top: 12px; }
.pn-landing .result-strip{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.pn-landing .result-strip .photo{ height: 300px; }
.pn-landing .result-strip img{ object-fit: contain; background: rgb(228, 224, 215); }
.pn-landing .result-strip figcaption,.pn-landing .twophotos figcaption,.pn-landing .editorial figcaption{ padding-top: 12px; font-size: 12px; color: rgb(106, 109, 96); }
.pn-landing .final-cta{ background: rgb(37, 44, 37); color: rgb(247, 245, 239); }
.pn-landing .final-cta p{ color: rgb(212, 216, 203); }
.pn-landing .final-cta .btn{ background: rgb(238, 232, 219); color: rgb(37, 44, 37); border-color: rgb(238, 232, 219); }
.pn-landing .final-cta .outline{ background: transparent; color: rgb(238, 232, 219); }
.pn-landing .final-cta ol{ color: rgb(212, 216, 203); }
.pn-landing .case-title{ display: flex; gap: 30px; align-items: start; justify-content: space-between; }
.pn-landing .case-title .lead{ font-size: 15px; max-width: 340px; }
.pn-landing .compare .photo{ height: 440px; }
.pn-landing .compare img{ object-fit: contain; }
.pn-landing .photo img{ cursor: zoom-in; }
.pn-landing dialog#zoom{ max-width: 95vw; width: 1100px; padding: 20px; }
.pn-landing #zoom img{ max-height: 75vh; width: 100%; object-fit: contain; }
.pn-landing #zoom p{ font-size: 12px; margin: 12px 0px 0px; }
.pn-landing #zoom .close{ display: block; margin: 0px 0px 14px auto; padding: 8px 13px; background: rgb(37, 44, 37); color: white; border: 0px; }
.pn-landing .draft-small{ font-size: 10px; letter-spacing: 0.8px; }
.pn-landing .faq summary{ line-height: 1.4; }
.pn-landing .compare figcaption{ color: rgb(106, 109, 96); font-size: 12px; padding-top: 12px; }
.pn-landing .case-title h2{ max-width: 700px; }
.pn-landing .showcase-intro{ max-width: 700px; }
@media (max-width: 760px){.pn-landing .final-hero{ grid-template-columns: 1fr; gap: 28px; }
.pn-landing .final-hero .photo{ height: 410px; }
.pn-landing .editorial{ grid-template-columns: 1fr; gap: 25px; }
.pn-landing .editorial .photo{ height: 350px; }
.pn-landing .phasebar{ grid-template-columns: 1fr; gap: 8px; }
.pn-landing .phasebar h3{ margin-bottom: 7px; }
.pn-landing .phasebar p{ margin-bottom: 10px; }
.pn-landing .twophotos{ gap: 12px; }
.pn-landing .twophotos .photo{ height: 250px; }
.pn-landing .result-strip{ grid-template-columns: 1fr; }
.pn-landing .result-strip .photo{ height: 360px; }
.pn-landing .case-title{ display: block; }
.pn-landing .case-title .lead{ max-width: 100%; }
.pn-landing .compare .photo{ height: 310px; }
.pn-landing .compare{ grid-template-columns: 1fr 1fr; }
.pn-landing .final-hero h1{ font-size: 43px; }
.pn-landing .compare figcaption{ font-size: 11px; }
.pn-landing .final-cta .btn{ width: 100%; text-align: center; margin-bottom: 10px; }
.pn-landing dialog#zoom{ margin: 10vh 3%; width: 94vw; padding: 13px; }
.pn-landing #zoom img{ max-height: 65vh; }
}
.pn-landing .dark-section figcaption{ color: rgb(208, 213, 198); font-size: 12px; padding-top: 12px; }

.pn-landing{max-width:none;background:#f7f5ef;color:#20221e;font-family:Arial,Helvetica,sans-serif;line-height:1.55}.pn-landing .wrap{width:auto;max-width:1440px;margin-inline:auto}.pn-landing p{margin-bottom:1em}.pn-landing .photo{isolation:isolate}.pn-landing .photo img{border-radius:0}.pn-landing .tag{pointer-events:none}.pn-landing .photo:focus-within{outline:2px solid #826d47;outline-offset:4px}.pn-landing dialog{z-index:100}.pn-landing .mobile-cta a{display:block;width:50%;padding:15px 5px;background:#252c25;color:white;text-align:center;font-size:11px}.pn-landing .mobile-cta a+a{background:#e7e0cf;color:#252c25;border-left:1px solid #777}.pn-real-entry-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.pn-real-entry-grid .card-image{height:330px}.pn-real-entry-grid img{width:100%;height:100%;object-fit:cover}.pn-landing .sector{min-height:320px}.pn-landing .sector .photo{height:260px;width:100%;margin-bottom:25px}.pn-landing .sector .btn{margin-top:20px}.pn-landing .sector h2{font-size:35px}.pn-landing .review{display:none}@media(max-width:760px){.pn-landing .wrap{width:auto}.pn-real-entry-grid{grid-template-columns:1fr}.pn-real-entry-grid .card-image{height:300px}.pn-landing .mobile-cta{z-index:25}.pn-landing .sector h2{font-size:29px}.pn-landing dialog{max-height:90vh;overflow:auto}.pn-landing{padding-bottom:50px}}
