/*! PrintPosters.in — Photo Frames hub v2 (photo-frames-hub-v2.css)
 *  Ported from the approved MagicPath design:
 *    project   https://www.magicpath.ai/files/463173098145988608
 *    prototype https://designs.magicpath.ai/v1/friendly-stone-3498
 *    component PhotoFramesHubPremiumResponsiveRedesign
 *  Scoped entirely under .pfh-page — no global selectors, no header/footer rules.
 */
.pfh-page{--pp-black:#191919;--pp-white:#fff;--pp-mint:#C6A15B;--pp-green:#A77B2F;--pp-muted:#71717a;--pp-border:#e4e4e7;--pp-soft:#f4f4f5;--pp-paper:#fbfaf7;--pp-warm:#f4f2ec;--pp-heading:"Playfair Display",Georgia,serif;color:var(--pp-black);background:var(--pp-white);font:16px/1.6 Inter,Arial,sans-serif;overflow:hidden}.pfh-page *{box-sizing:border-box}.pfh-page a{color:inherit;text-decoration:none}.pfh-page button{font:inherit}.pfh-page img{display:block;width:100%;height:100%;object-fit:cover}.pfh-page h1,.pfh-page h2,.pfh-page h3,.pfh-page p{margin-top:0}.pfh-page h1,.pfh-page h2{font-family:var(--pp-heading);font-weight:500;letter-spacing:-.045em;line-height:1.04}.pfh-page h1 em,.pfh-page h2 em{color:#A77B2F;font-weight:500}.pfh-page a:focus-visible,.pfh-page button:focus-visible,.pfh-page summary:focus-visible{outline:3px solid #A77B2F;outline-offset:3px}
.pfh-announcement{min-height:31px;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:6px max(5.5%,calc((100% - 1280px)/2));background:#191919;color:#fff;text-transform:uppercase;letter-spacing:.1em;font-size:14px;font-weight:700}.pfh-announcement span:last-child{color:#d8ded8;letter-spacing:.06em}.pfh-announcement i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--pp-mint);vertical-align:middle;margin:0 8px}
.pfh-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:17px;font-size:15.8px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#505b52}.pfh-eyebrow>span:first-child:not(:only-child){width:23px;height:1px;background:#A77B2F;display:inline-block}.pfh-hero{max-width:1280px;margin:0 auto;padding:48px 0 64px;display:grid;grid-template-columns:.88fr 1.12fr;gap:55px;align-items:center;min-height:525px}.pfh-hero-copy{padding-left:2px}.pfh-hero h1{font-size:clamp(56px,5.5vw,78px);margin-bottom:22px}.pfh-hero-sub{font-size:19.9px;line-height:1.85;color:#626262;max-width:465px;margin-bottom:26px}.pfh-hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.pfh-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:46px;padding:12px 17px;font-size:19.2px;font-weight:700;border-radius:3px;transition:transform .18s,background .18s}.pfh-btn:hover{transform:translateY(-2px)}.pfh-btn-primary{background:var(--pp-black);color:#fff!important}.pfh-btn-primary svg{color:var(--pp-mint)}.pfh-btn-primary:hover{background:#2e4636}.pfh-text-link{display:inline-flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid #DAC48D;font-size:17.5px;font-weight:700}.pfh-text-link svg{color:#A77B2F}
.pfh-trust-inline{display:flex;align-items:center;gap:10px;margin-top:35px;padding-top:17px;border-top:1px solid #ededed;max-width:450px}.pfh-stars{font-size:21px;letter-spacing:1px;color:#A77B2F;white-space:nowrap}.pfh-trust-inline strong,.pfh-trust-inline small{display:block}.pfh-trust-inline strong{font-size:17.5px}.pfh-trust-inline small{font-size:14px;color:#777;margin-top:3px}.pfh-trust-divider{height:28px;width:1px;background:#e1e1e1;margin:0 4px 0 9px}
.pfh-hero-visual{min-height:410px;position:relative;padding:0 14px 14px 0}.pfh-hero-image{position:absolute;inset:0 20px 14px 28px;overflow:hidden;background:#e9e6dc}.pfh-hero-image>img{object-position:center}.pfh-image-shade{position:absolute;inset:48% 0 0;background:linear-gradient(transparent,rgba(20,26,21,.63))}.pfh-image-word{position:absolute;left:25px;bottom:24px;color:#fff;font-family:var(--pp-heading);font-size:27.6px;line-height:1.08;letter-spacing:-.02em}.pfh-image-word em{color:var(--pp-mint);font-style:normal}.pfh-hero-card{position:absolute;background:#fff;box-shadow:0 12px 28px rgba(0,0,0,.12);padding:14px 16px;min-width:165px;display:flex;flex-direction:column;gap:3px}.pfh-hero-card-top{top:30px;left:0;border-left:3px solid var(--pp-mint)}.pfh-hero-card-bottom{right:0;bottom:38px;border-left:3px solid #191919}.pfh-card-kicker{font-size:13.5px;letter-spacing:.13em;color:#6b716b;font-weight:700}.pfh-hero-card strong{font-family:var(--pp-heading);font-size:24.1px;font-weight:500}.pfh-hero-card>span:last-child{font-size:15.8px;font-weight:700;color:#A77B2F}.pfh-hero-stamp{position:absolute;right:4px;top:2px;width:91px;height:91px;border-radius:50%;background:var(--pp-mint);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#1a2b20;transform:rotate(8deg);box-shadow:0 8px 24px rgba(0,0,0,.1)}.pfh-hero-stamp span{font-size:13.5px;font-weight:700;letter-spacing:.16em}.pfh-hero-stamp strong{font-family:var(--pp-heading);font-size:24.1px;font-weight:500;line-height:1.2}.pfh-hero-stamp i{font-style:normal;font-size:19.2px}
.pfh-service-ribbon{padding:22px max(5.5%,calc((100% - 1280px)/2));background:#f8f8f6;border-top:1px solid #e8e8e6;border-bottom:1px solid #e8e8e6;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.pfh-service-ribbon>div{display:flex;align-items:center;gap:11px}.pfh-service-ribbon strong,.pfh-service-ribbon small{display:block}.pfh-service-ribbon strong{font-size:17.5px}.pfh-service-ribbon small{font-size:14px;color:#777;margin-top:4px}.pfh-ribbon-symbol,.pfh-ribbon-number{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #E6DCC8;border-radius:50%;font-size:14px;color:#A77B2F;font-weight:700;flex:none}.pfh-ribbon-symbol svg{width:16px}
.pfh-section{max-width:1280px;margin:0 auto;padding:88px 0}.pfh-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:45px;margin-bottom:32px}.pfh-section-head .pfh-eyebrow{margin-bottom:13px}.pfh-section h2,.pfh-finish-left h2,.pfh-bundle-copy h2,.pfh-process-heading h2,.pfh-final-cta h2{font-size:clamp(37px,3.8vw,52px);margin-bottom:0}.pfh-section-head>p{max-width:390px;margin-bottom:4px;color:#696969;font-size:21px;line-height:1.8}
.pfh-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px}.pfh-product-card{min-width:0;display:block}.pfh-product-photo{height:250px;position:relative;overflow:hidden;background:#eeece4}.pfh-product-photo img{transition:transform .35s ease}.pfh-product-card:hover .pfh-product-photo img{transform:scale(1.035)}.pfh-product-card-featured .pfh-product-photo{outline:1px solid var(--pp-mint);outline-offset:3px}.pfh-product-tag{position:absolute;left:12px;top:12px;padding:7px 9px;background:#fff;font-size:13.5px;letter-spacing:.14em;font-weight:700}.pfh-product-arrow{position:absolute;right:11px;bottom:11px;width:33px;height:33px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#fff;transition:background .18s}.pfh-product-arrow svg{color:#A77B2F}.pfh-product-card:hover .pfh-product-arrow{background:var(--pp-mint)}.pfh-product-info{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-top:14px}.pfh-product-info h3{font-size:21px;margin-bottom:5px;font-weight:700}.pfh-product-info p{font-size:17.5px;line-height:1.65;color:#777;max-width:255px;margin-bottom:0}.pfh-product-info>strong{font-size:17.5px;color:#8B6728;white-space:nowrap;margin-top:1px}.pfh-link-cloud{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:36px;padding-top:22px;border-top:1px solid #e8e8e8}.pfh-link-cloud>span{font-size:17.5px;color:#666;font-weight:700;margin-right:5px}.pfh-link-cloud>a{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #e4e4e7;border-radius:2px;background:#fff;font-size:15.8px;color:#343434}.pfh-link-cloud>a svg{color:#A77B2F}.pfh-link-cloud>a:hover{border-color:#6FD39A;background:#FBF6EB}
.pfh-finish-section{background:#f5f4f0;padding:76px max(6%,calc((100% - 1180px)/2));display:grid;grid-template-columns:1.05fr .95fr;gap:66px;align-items:center;border-top:1px solid #e9e7e0;border-bottom:1px solid #e9e7e0}.pfh-finish-left .pfh-eyebrow{margin-bottom:15px}.pfh-finish-left h2{font-size:clamp(40px,4vw,55px)}.pfh-finish-intro{max-width:500px;color:#666;font-size:21px;line-height:1.8;margin:17px 0 23px}.pfh-finish-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pfh-finish-option{min-width:0;display:flex;align-items:center;gap:9px;position:relative;text-align:left;padding:10px;border:1px solid #deded9;border-radius:2px;background:#fff;cursor:pointer;font-size:15.8px;font-weight:600;line-height:1.35}.pfh-finish-option:hover,.pfh-finish-option.is-selected{border-color:#A77B2F;background:#FBF6EB}.pfh-finish-swatch{width:24px;height:24px;display:block;border:1px solid rgba(0,0,0,.16);box-shadow:inset 0 0 0 2px rgba(255,255,255,.12);flex:none}.pfh-swatch-white{border:1px solid #d9d9d4}.pfh-swatch-gold{box-shadow:inset 0 0 0 2px rgba(255,255,255,.35)}.pfh-option-check{margin-left:auto;color:#8B6728;font-size:19.2px}.pfh-mat-picker,.pfh-profile-picker{margin-top:19px;padding-top:16px;border-top:1px solid #e1dfd8}.pfh-control-heading{display:flex;justify-content:space-between;gap:14px;align-items:baseline;margin-bottom:10px}.pfh-control-heading strong{font-size:17.5px}.pfh-control-heading span{font-size:14px;color:#777}.pfh-mat-options{display:flex;gap:6px;flex-wrap:wrap}.pfh-mat-options button{padding:7px 9px;background:#fff;border:1px solid #deded9;color:#555;font-size:14px;cursor:pointer}.pfh-mat-options button.is-selected{border-color:#191919;background:#191919;color:#fff}.pfh-profile-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.pfh-profile-options button{display:flex;align-items:center;flex-direction:column;gap:8px;padding:10px 5px;border:1px solid #deded9;background:#fff;font-size:14px;cursor:pointer}.pfh-profile-options button.is-selected{border-color:#A77B2F;background:#FBF6EB}.pfh-profile-bar{display:block;width:43px;height:27px;background:#b18b5e;border:3px solid #775035;box-shadow:inset 0 0 0 2px #d6c2a4}.pfh-profile-slim{border-width:2px;width:43px;height:22px}.pfh-profile-standard{border-width:5px;width:43px;height:25px}.pfh-profile-gallery{border-width:7px;width:43px;height:29px}.pfh-finish-left>.pfh-btn{margin-top:21px}
.pfh-finish-preview-wrap{padding:25px;background:#fff;box-shadow:0 12px 42px rgba(25,25,25,.05)}.pfh-preview-topline{display:flex;align-items:center;gap:7px;margin-bottom:18px;font-size:13.5px;font-weight:700;letter-spacing:.16em;color:#71717a}.pfh-preview-dot{width:6px;height:6px;border-radius:50%;background:#6FD39A;margin-left:auto}.pfh-finish-preview{height:330px;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 24px rgba(0,0,0,.12);transition:padding .2s ease,background-color .2s ease}.pfh-mat-frame{width:100%;height:100%;display:flex;align-items:center;justify-content:center;transition:padding .2s ease,background-color .2s ease}.pfh-mat-frame img{object-fit:cover;box-shadow:0 2px 7px rgba(0,0,0,.12)}.pfh-preview-caption{display:flex;align-items:center;gap:15px;padding-top:20px}.pfh-preview-overline{font-size:13.5px;letter-spacing:.16em;color:#71717a;font-weight:700}.pfh-preview-caption h3{font-family:var(--pp-heading);font-size:27.6px;font-weight:500;margin:4px 0 5px}.pfh-preview-caption p{font-size:17.5px;line-height:1.6;color:#737373;margin:0;max-width:340px}.pfh-preview-tone{width:34px;height:34px;border:1px solid rgba(0,0,0,.16);margin-left:auto;flex:none}.pfh-preview-best{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:16px;padding-top:13px;border-top:1px solid #ececec}.pfh-preview-best span{font-size:13.5px;letter-spacing:.12em;color:#71717a;font-weight:700}.pfh-preview-best strong{font-size:15.8px}.pfh-preview-disclaimer{font-size:14px;line-height:1.6;color:#858585;margin:14px 0 0}
.pfh-comparison-section{padding-top:88px;padding-bottom:72px}.pfh-comparison-table-wrap{overflow-x:auto;border:1px solid #e4e4e7;background:#fff}.pfh-comparison-table{width:100%;border-collapse:collapse;text-align:left;min-width:790px}.pfh-comparison-table th{background:#f7f7f5;color:#555;padding:15px 16px;font-size:14px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;border-bottom:1px solid #e4e4e7}.pfh-comparison-table td{padding:13px 16px;font-size:17.5px;color:#555;line-height:1.55;border-bottom:1px solid #ededed}.pfh-comparison-table tr:last-child td{border-bottom:0}.pfh-comparison-table tbody tr.is-current{background:#FBF6EB}.pfh-table-name{display:flex;flex-direction:column;align-items:flex-start;gap:3px;border:0;background:none;text-align:left;cursor:pointer;font-weight:700;font-size:17.5px;color:#191919;padding:0}.pfh-table-name span{font-size:13.5px;letter-spacing:.03em;color:#A77B2F;font-weight:600}.pfh-price-cell{white-space:nowrap;font-weight:700;color:#267845!important}.pfh-table-link{display:inline-flex;align-items:center;gap:6px;font-weight:700;color:#191919}.pfh-table-link svg{color:#A77B2F}.pfh-comparison-highlight{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;background:#f4f4f5;margin-top:13px}.pfh-comparison-brow{font-size:13.5px;letter-spacing:.14em;font-weight:700;color:#666}.pfh-comparison-highlight h3{font-family:var(--pp-heading);font-size:26.4px;font-weight:500;margin:3px 0}.pfh-comparison-highlight p{font-size:15.8px;color:#707070;margin:0}.pfh-comparison-highlight .pfh-btn{min-height:40px;padding:10px 13px;font-size:15.8px;white-space:nowrap}.pfh-price-note{font-size:14px;color:#858585;margin:12px 0 0;line-height:1.6}
.pfh-size-section{padding-top:25px}.pfh-size-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.pfh-size-tile{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:17px 8px 15px;border:1px solid #e4e4e7;background:#fff;transition:border .15s,background .15s}.pfh-size-tile:hover{border-color:#6FD39A;background:#FBF6EB}.pfh-size-outline{height:63px;display:flex;align-items:center;justify-content:center;width:100%;position:relative}.pfh-size-outline i{display:block;border:2px solid #B18D48;background:#F3E8CF}.pfh-size-small i{width:26px;height:35px}.pfh-size-medium i{width:39px;height:48px}.pfh-size-large i{width:49px;height:57px}.pfh-size-tile strong{font-size:19.2px}.pfh-size-tile small{font-size:14px;color:#777}.pfh-size-custom{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;padding:15px;background:#f3f7f2;border:1px solid #E9DFCC}.pfh-custom-icon{display:flex;align-items:center;justify-content:center;width:27px;height:27px;border:1px solid #bbd6c1;border-radius:50%;color:#8B6728}.pfh-size-custom strong{font-size:17.5px}.pfh-size-custom small{font-size:14px;color:#666;line-height:1.5}.pfh-size-cta{display:flex;align-items:center;gap:5px;margin-top:3px;font-size:14px;font-weight:700;color:#8B6728}.pfh-size-footer{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:18px;padding-top:17px;border-top:1px solid #ededed;font-size:15.8px;color:#777}.pfh-size-footer a{display:flex;align-items:center;gap:6px;font-weight:700;color:#191919}.pfh-size-footer a svg{color:#A77B2F}
.pfh-finder-section{background:#F6F1E7;padding:67px max(6%,calc((100% - 1180px)/2));display:grid;grid-template-columns:.72fr 1.28fr;gap:65px;align-items:center}.pfh-finder-intro h2{font-size:clamp(39px,4vw,53px)}.pfh-finder-intro>p:not(.pfh-eyebrow){font-size:21px;color:#636b63;line-height:1.8;max-width:300px;margin:16px 0}.pfh-finder-note{display:flex;align-items:center;gap:8px;color:#8B6728;font-size:15.8px;font-weight:600}.pfh-finder-note svg{width:15px}.pfh-finder-panel{background:#fff;padding:22px;border:1px solid #e0e8df}.pfh-purpose-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pfh-purpose-options button{min-height:82px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:13px;padding:11px;border:1px solid #e3e5e0;background:#fbfbf9;text-align:left;cursor:pointer}.pfh-purpose-options button>span{font-family:var(--pp-heading);font-size:27.6px;color:#A77B2F;line-height:1}.pfh-purpose-options button strong{font-size:15.8px}.pfh-purpose-options button:hover,.pfh-purpose-options button.is-selected{border-color:#A77B2F;background:#F6EFDF}.pfh-finder-result{margin-top:20px;padding-top:19px;border-top:1px solid #e3e7e0;display:grid;grid-template-columns:1fr auto;align-items:center;gap:14px}.pfh-result-label{grid-column:1/-1;font-size:13.5px;font-weight:700;letter-spacing:.14em;color:#70796f}.pfh-finder-result h3{font-family:var(--pp-heading);font-size:26.4px;font-weight:500;margin:0 0 5px}.pfh-finder-result p{font-size:15.8px;color:#696e67;line-height:1.7;max-width:360px;margin:0}.pfh-finder-result .pfh-btn{min-height:40px;padding:10px 12px;font-size:15.8px;white-space:nowrap}
.pfh-rooms-section{padding-top:40px}.pfh-room-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:13px}.pfh-room{position:relative;height:325px;overflow:hidden;background:#e4e1d7}.pfh-room-large{height:370px}.pfh-room img{transition:transform .4s}.pfh-room:hover img{transform:scale(1.04)}.pfh-room-gradient{position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(12,20,14,.75))}.pfh-room-copy{position:absolute;left:20px;right:12px;bottom:20px;display:flex;flex-direction:column;color:#fff}.pfh-room-copy small{font-size:13.5px;letter-spacing:.14em;margin-bottom:6px;color:#e5e9e2}.pfh-room-copy strong{font-family:var(--pp-heading);font-size:28.8px;font-weight:500;margin-bottom:6px}.pfh-room-copy>span{display:flex;align-items:center;gap:7px;font-size:15.8px}
.pfh-bundle-banner{background:#f2f1eb;padding:69px max(6%,calc((100% - 1180px)/2));display:grid;grid-template-columns:1fr .95fr;gap:65px;align-items:center}.pfh-bundle-image{height:390px;position:relative;margin:0 16px 15px 0}.pfh-bundle-image>img{box-shadow:16px 16px 0 #d9d7ca}.pfh-bundle-sticker{position:absolute;right:-16px;bottom:30px;background:#191f1a;color:white;padding:19px 23px;min-width:160px}.pfh-bundle-sticker>span{font-size:13.5px;letter-spacing:.13em;color:var(--pp-mint);font-weight:700}.pfh-bundle-sticker strong{display:block;font-family:var(--pp-heading);font-size:28.8px;font-weight:500;line-height:1.1;margin-top:8px}.pfh-bundle-sticker em{color:var(--pp-mint)}.pfh-bundle-copy .pfh-eyebrow{margin-bottom:14px}.pfh-bundle-copy h2{font-size:clamp(40px,4vw,54px);margin-bottom:19px}.pfh-bundle-copy>p:not(.pfh-eyebrow){font-size:21px;color:#666;line-height:1.8}.pfh-bundle-copy ul{list-style:none;padding:0;margin:19px 0 23px;display:grid;gap:10px}.pfh-bundle-copy li{display:flex;align-items:center;gap:9px;font-size:17.5px;color:#3f463f}.pfh-bundle-copy li span{display:flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:50%;background:#EDE0BB;color:#267845;font-size:15.8px;flex:none}.pfh-bundle-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.pfh-bundle-actions .pfh-btn{font-size:17.5px}
.pfh-occasions .pfh-section-head{margin-bottom:28px}.pfh-occasion-list{border-top:1px solid #e5e5e5}.pfh-occasion-list>a{display:grid;grid-template-columns:32px 1.1fr 1.4fr auto;align-items:center;gap:17px;padding:19px 8px;border-bottom:1px solid #e5e5e5;transition:background .15s,padding .15s}.pfh-occasion-list>a:hover{background:#f8faf7;padding-left:14px}.pfh-occasion-list>a>span:first-child{font-size:15.8px;color:#A77B2F;font-weight:700}.pfh-occasion-list strong{font-size:19.2px}.pfh-occasion-list small{font-size:15.8px;color:#777}.pfh-occasion-list svg{color:#A77B2F}
.pfh-process-section{padding:76px max(5.5%,calc((100% - 1280px)/2));background:#191f1a;color:#fff}.pfh-process-heading{display:grid;grid-template-columns:1fr 1fr;column-gap:60px;align-items:end;margin-bottom:34px}.pfh-process-heading .pfh-eyebrow{grid-column:1/-1;color:#D9C48A;margin-bottom:15px}.pfh-process-heading h2{font-size:clamp(40px,4vw,54px)}.pfh-process-heading h2 em{color:var(--pp-mint)}.pfh-process-heading>p:last-child{font-size:19.2px;line-height:1.7;color:#c0c8c0;max-width:300px;margin-bottom:3px}.pfh-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;padding:27px 0;border-top:1px solid #465148;border-bottom:1px solid #465148}.pfh-process-grid>div{position:relative;padding-right:12px}.pfh-process-grid>div>span{display:flex;align-items:center;justify-content:center;width:33px;height:33px;border:1px solid #526354;border-radius:50%;color:var(--pp-mint);font-family:var(--pp-heading);font-size:25.6px;margin-bottom:15px}.pfh-process-grid>div>b{position:absolute;top:0;right:0;font-size:13.5px;color:#9da79d}.pfh-process-grid h3{font-family:var(--pp-heading);font-size:27px;font-weight:500;margin-bottom:7px}.pfh-process-grid p{font-size:15.8px;line-height:1.8;color:#c0c8c0;max-width:230px;margin-bottom:0}.pfh-process-foot{display:flex;align-items:center;gap:19px;flex-wrap:wrap;margin-top:22px}.pfh-process-foot>span{display:flex;align-items:center;gap:6px;font-size:14px;color:#d2d8d0}.pfh-process-foot svg{color:var(--pp-mint)}.pfh-process-foot>a{display:flex;align-items:center;gap:7px;margin-left:auto;color:var(--pp-mint);font-size:15.8px;font-weight:600}
.pfh-why-section{padding-top:75px}.pfh-why-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #e4e4e7;border-bottom:1px solid #e4e4e7}.pfh-why-grid>div{padding:23px 20px 24px 0;border-right:1px solid #e4e4e7;margin-right:20px}.pfh-why-grid>div:last-child{border-right:0;margin-right:0}.pfh-why-grid span{font-size:14px;letter-spacing:.12em;color:#A77B2F;font-weight:700}.pfh-why-grid h3{font-family:var(--pp-heading);font-size:27px;font-weight:500;line-height:1.15;margin:13px 0 8px}.pfh-why-grid p{font-size:15.8px;color:#777;line-height:1.8;margin:0;max-width:210px}
.pfh-faq-section{display:grid;grid-template-columns:.65fr 1.35fr;gap:85px;align-items:start;padding-top:75px;padding-bottom:85px}.pfh-faq-intro .pfh-eyebrow{margin-bottom:13px}.pfh-faq-intro h2{font-size:clamp(39px,3.7vw,49px);margin-bottom:15px}.pfh-faq-intro>p:not(.pfh-eyebrow){font-size:19.2px;color:#777;margin-bottom:18px}.pfh-faq-intro>a{display:inline-flex;align-items:center;gap:8px;font-size:17.5px;font-weight:700;border-bottom:1px solid #DAC48D;padding-bottom:7px}.pfh-faq-intro>a svg{color:#A77B2F}.pfh-faq-list{border-top:1px solid #e4e4e7}.pfh-faq-list details{border-bottom:1px solid #e4e4e7}.pfh-faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;cursor:pointer;font-size:19.2px;font-weight:600}.pfh-faq-list summary::-webkit-details-marker{display:none}.pfh-faq-list summary span{display:flex;align-items:center;justify-content:center;width:23px;height:23px;border:1px solid #e0e4df;border-radius:50%;color:#A77B2F;font-size:21.3px;font-weight:400;flex:none;transition:transform .15s}.pfh-faq-list details[open] summary span{transform:rotate(45deg);background:#F7EFDF}.pfh-faq-list details p{max-width:680px;margin:0;padding:0 38px 17px 0;color:#747474;font-size:17.5px;line-height:1.8}
.pfh-final-cta{padding:52px max(6%,calc((100% - 1180px)/2));background:#F5EDD9;display:grid;grid-template-columns:1.1fr .9fr;gap:55px;align-items:center}.pfh-final-cta .pfh-eyebrow{margin-bottom:12px}.pfh-final-cta h2{font-size:clamp(41px,4vw,55px)}.pfh-final-cta h2 em{color:#8B6728}.pfh-final-cta>div:last-child>p{font-size:21px;line-height:1.8;color:#56675a;max-width:410px;margin-bottom:19px}.pfh-btn-light{background:#191919;color:#fff!important}.pfh-btn-light svg{color:var(--pp-mint)}
@media(max-width:1320px){.pfh-hero,.pfh-section{margin-left:5.5%;margin-right:5.5%}.pfh-hero{gap:35px}.pfh-section{padding-top:75px;padding-bottom:75px}.pfh-finish-section,.pfh-bundle-banner,.pfh-finder-section,.pfh-final-cta{padding-left:5.5%;padding-right:5.5%}}
@media(max-width:980px){.pfh-hero{margin:0 4%;grid-template-columns:.9fr 1.1fr;gap:25px;padding:38px 0 52px}.pfh-hero h1{font-size:58px}.pfh-hero-visual{min-height:350px}.pfh-hero-card{min-width:135px;padding:11px}.pfh-service-ribbon{padding-left:4%;padding-right:4%;gap:13px}.pfh-service-ribbon small{font-size:13.5px}.pfh-section{margin-left:4%;margin-right:4%;padding:66px 0}.pfh-product-grid{gap:24px 15px}.pfh-product-photo{height:210px}.pfh-product-info{display:block}.pfh-product-info>strong{display:block;margin-top:7px}.pfh-finish-section{gap:30px;padding:58px 4%}.pfh-finish-preview-wrap{padding:18px}.pfh-finish-preview{height:285px}.pfh-size-grid{grid-template-columns:repeat(4,1fr)}.pfh-size-custom{min-height:145px}.pfh-finder-section{gap:30px;padding:55px 4%}.pfh-purpose-options button{min-height:75px}.pfh-finder-result{grid-template-columns:1fr}.pfh-bundle-banner{gap:36px;padding:58px 4%}.pfh-bundle-image{height:330px}.pfh-room,.pfh-room-large{height:290px}.pfh-process-section{padding:60px 4%}.pfh-faq-section{gap:45px}.pfh-why-grid h3{font-size:19.5px}}
@media(max-width:720px){.pfh-page{font-size:16.1px;padding-bottom:68px}.pfh-announcement{justify-content:center;padding:8px 12px;font-size:13.5px}.pfh-announcement span:last-child{display:none}.pfh-hero{display:flex;flex-direction:column;align-items:stretch;gap:24px;margin:0;padding:32px 17px 38px}.pfh-hero-copy{padding:0}.pfh-eyebrow{font-size:13.5px;margin-bottom:13px}.pfh-hero h1{font-size:clamp(49px,12vw,65px);margin-bottom:17px}.pfh-hero-sub{font-size:16.2px;line-height:1.8;margin-bottom:19px}.pfh-hero-actions{gap:17px}.pfh-btn{min-height:44px;padding:11px 13px;font-size:13.5px}.pfh-text-link{font-size:13.5px}.pfh-trust-inline{margin-top:25px;padding-top:13px;gap:8px}.pfh-stars{font-size:13.5px;letter-spacing:0}.pfh-trust-inline strong{font-size:13.5px}.pfh-trust-inline small{font-size:13.5px}.pfh-trust-divider{margin:0 2px}.pfh-hero-visual{min-height:285px;margin:0 5px;padding:0 10px 11px}.pfh-hero-image{inset:0 15px 12px 18px}.pfh-image-word{left:13px;bottom:13px;font-size:20.7px}.pfh-hero-card{padding:9px 10px;min-width:118px}.pfh-hero-card-top{top:20px;left:0}.pfh-hero-card-bottom{bottom:25px;right:0}.pfh-hero-card strong{font-size:16.1px}.pfh-card-kicker{font-size:13.5px}.pfh-hero-card>span:last-child{font-size:13.5px}.pfh-hero-stamp{width:66px;height:66px;right:0;top:1px}.pfh-hero-stamp span{font-size:13.5px}.pfh-hero-stamp strong{font-size:15px}.pfh-service-ribbon{grid-template-columns:repeat(2,1fr);padding:17px;gap:16px 11px}.pfh-service-ribbon>div{gap:8px}.pfh-ribbon-symbol,.pfh-ribbon-number{width:28px;height:28px;font-size:13.5px}.pfh-service-ribbon strong{font-size:13.5px}.pfh-service-ribbon small{font-size:13.5px;line-height:1.4}.pfh-section{margin:0;padding:56px 17px}.pfh-section-head{display:block;margin-bottom:23px}.pfh-section-head .pfh-eyebrow{margin-bottom:11px}.pfh-section h2,.pfh-finish-left h2,.pfh-bundle-copy h2,.pfh-process-heading h2,.pfh-final-cta h2{font-size:39px;line-height:1.06}.pfh-section-head>p{font-size:14.8px;line-height:1.75;margin-top:13px;margin-bottom:0}.pfh-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 11px}.pfh-product-photo{height:clamp(140px,42vw,205px)}.pfh-product-tag{top:7px;left:7px;padding:5px 6px;font-size:13.5px;letter-spacing:.1em}.pfh-product-arrow{width:27px;height:27px;right:7px;bottom:7px}.pfh-product-info{padding-top:10px}.pfh-product-info h3{font-size:13.5px;line-height:1.4}.pfh-product-info p{font-size:13.5px;line-height:1.6}.pfh-product-info>strong{font-size:13.5px;margin-top:6px}.pfh-link-cloud{gap:7px;margin-top:27px;padding-top:18px}.pfh-link-cloud>span{width:100%;margin-bottom:3px;font-size:13.5px}.pfh-link-cloud>a{padding:7px 8px;font-size:13.5px}.pfh-finish-section{display:flex;flex-direction:column;gap:30px;padding:43px 17px}.pfh-finish-left h2{font-size:42px}.pfh-finish-intro{font-size:14.8px;margin:14px 0 18px}.pfh-finish-options{gap:6px}.pfh-finish-option{font-size:13.5px;padding:8px;gap:7px}.pfh-finish-swatch{width:20px;height:20px}.pfh-control-heading{align-items:flex-start;flex-direction:column;gap:4px}.pfh-mat-options{gap:5px}.pfh-mat-options button{font-size:13.5px;padding:7px}.pfh-profile-options button{font-size:13.5px}.pfh-finish-left>.pfh-btn{width:100%;justify-content:space-between}.pfh-finish-preview-wrap{width:100%;padding:13px}.pfh-finish-preview{height:260px}.pfh-preview-caption h3{font-size:23px}.pfh-preview-caption p{font-size:13.5px}.pfh-preview-tone{width:26px;height:26px}.pfh-preview-best{gap:7px}.pfh-preview-best strong{font-size:13.5px}.pfh-comparison-section{padding-top:56px!important;padding-bottom:52px!important}.pfh-comparison-table-wrap{margin-right:-17px}.pfh-comparison-table{min-width:715px}.pfh-comparison-table th{padding:12px 11px;font-size:13.5px}.pfh-comparison-table td{padding:12px 11px;font-size:13.5px}.pfh-comparison-highlight{align-items:flex-start;flex-direction:column;padding:15px;margin-right:0}.pfh-comparison-highlight .pfh-btn{width:100%;justify-content:space-between}.pfh-size-section{padding-top:24px}.pfh-size-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pfh-size-tile{padding:12px 4px}.pfh-size-outline{height:47px}.pfh-size-small i{width:20px;height:27px}.pfh-size-medium i{width:28px;height:36px}.pfh-size-large i{width:34px;height:43px}.pfh-size-tile strong{font-size:13.5px}.pfh-size-tile small{font-size:13.5px}.pfh-size-custom{min-height:125px;padding:10px}.pfh-size-custom strong{font-size:13.5px}.pfh-size-custom small{font-size:13.5px}.pfh-size-footer{gap:10px;font-size:13.5px}.pfh-size-footer>span{width:100%}.pfh-finder-section{display:block;padding:45px 17px}.pfh-finder-intro{margin-bottom:22px}.pfh-finder-intro h2{font-size:41px}.pfh-finder-intro>p:not(.pfh-eyebrow){font-size:14.8px}.pfh-finder-panel{padding:12px}.pfh-purpose-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.pfh-purpose-options button{min-height:75px;padding:10px;gap:12px}.pfh-purpose-options button>span{font-size:21px}.pfh-purpose-options button strong{font-size:13.5px}.pfh-finder-result{gap:11px;margin-top:15px;padding-top:15px}.pfh-finder-result h3{font-size:23px}.pfh-finder-result p{font-size:13.5px}.pfh-finder-result .pfh-btn{width:100%;justify-content:space-between}.pfh-rooms-section{padding-top:25px}.pfh-room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.pfh-room,.pfh-room-large{height:218px}.pfh-room-large{grid-column:1/-1;height:254px}.pfh-room-copy{left:12px;bottom:13px}.pfh-room-copy small{font-size:13.5px;margin-bottom:5px}.pfh-room-copy strong{font-size:23px;margin-bottom:5px}.pfh-room-copy>span{font-size:13.5px;gap:4px;align-items:flex-start}.pfh-bundle-banner{display:flex;flex-direction:column;gap:30px;padding:40px 17px}.pfh-bundle-image{height:260px;width:calc(100% - 12px);margin-right:12px}.pfh-bundle-image>img{box-shadow:10px 10px 0 #d9d7ca}.pfh-bundle-sticker{right:-10px;bottom:20px;padding:14px 16px;min-width:125px}.pfh-bundle-sticker>span{font-size:13.5px}.pfh-bundle-sticker strong{font-size:23px}.pfh-bundle-copy h2{font-size:42px;margin-bottom:14px}.pfh-bundle-copy>p:not(.pfh-eyebrow){font-size:14.8px}.pfh-bundle-copy li{font-size:13.5px}.pfh-bundle-actions{gap:15px}.pfh-bundle-actions .pfh-btn{width:100%;justify-content:space-between}.pfh-bundle-actions .pfh-text-link{align-self:flex-start}.pfh-occasions .pfh-section-head{margin-bottom:22px}.pfh-occasion-list>a{grid-template-columns:24px 1fr auto;gap:10px;padding:15px 3px}.pfh-occasion-list strong{font-size:13.5px;grid-column:2;grid-row:1}.pfh-occasion-list small{font-size:13.5px;grid-column:2;grid-row:2}.pfh-occasion-list>a>span:first-child{grid-row:1/3}.pfh-occasion-list svg{grid-column:3;grid-row:1/3}.pfh-process-section{padding:43px 17px}.pfh-process-heading{display:block;margin-bottom:26px}.pfh-process-heading h2{font-size:42px;margin-bottom:12px}.pfh-process-heading>p:last-child{font-size:14.8px}.pfh-process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 14px;padding:21px 0}.pfh-process-grid h3{font-size:19.5px}.pfh-process-grid p{font-size:13.5px;line-height:1.7}.pfh-process-foot{gap:11px}.pfh-process-foot>span{font-size:13.5px}.pfh-process-foot>a{width:100%;margin:4px 0 0}.pfh-why-section{padding-top:55px}.pfh-why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pfh-why-grid>div{padding:17px 12px 19px 0;margin-right:12px;border-bottom:1px solid #e4e4e7}.pfh-why-grid>div:nth-child(2){border-right:0;margin-right:0;padding-right:0}.pfh-why-grid>div:nth-child(3),.pfh-why-grid>div:nth-child(4){border-bottom:0}.pfh-why-grid h3{font-size:19.5px;margin:10px 0 6px}.pfh-why-grid p{font-size:13.5px}.pfh-faq-section{display:block;padding-top:52px;padding-bottom:55px}.pfh-faq-intro{margin-bottom:22px}.pfh-faq-intro h2{font-size:41px;margin-bottom:12px}.pfh-faq-intro>p:not(.pfh-eyebrow){font-size:13.5px}.pfh-faq-list summary{font-size:13.5px;line-height:1.5;padding:15px 0}.pfh-faq-list details p{font-size:13.5px;padding-right:20px}.pfh-final-cta{display:block;padding:40px 17px}.pfh-final-cta h2{font-size:42px;margin-bottom:19px}.pfh-final-cta>div:last-child>p{font-size:14.8px}.pfh-final-cta .pfh-btn{width:100%;justify-content:space-between}}
@media(prefers-reduced-motion:reduce){.pfh-page *{transition:none!important;scroll-behavior:auto!important}}

/* Premium black + gold */
.pfh-page{--pp-mint:#C6A15B;--pp-green:#A77B2F;--pp-black:#101010;--pp-deep:#11110f;--pp-paper:#fff;--pp-warm:#F7F3EA}
.pfh-announcement{background:#0b0b0b;border-bottom:1px solid #332b1a}.pfh-btn-primary,.pfh-btn-light{background:#101010}
.pfh-hero-stamp{background:#C6A15B;color:#17130c}
.pfh-eyebrow>span:first-child:not(:only-child){background:#C6A15B}.pfh-text-link svg,.pfh-product-arrow svg,.pfh-gallery-set-link svg,.pfh-table-link svg{color:#A77B2F}
.pfh-service-ribbon{background:#FAF7F0;border-color:#E8DDC6}
.pfh-ribbon-symbol,.pfh-ribbon-number{border-color:#E0CFAB;color:#A77B2F}
.pfh-product-card-featured .pfh-product-photo{outline-color:#C6A15B}
.pfh-product-tag{border-left:2px solid #C6A15B}
.pfh-link-cloud>a:hover{border-color:#C6A15B;background:#FBF6EB}
.pfh-finish-section{background:#F7F3EA;border-color:#E4D8BE}
.pfh-finish-option:hover,.pfh-finish-option.is-selected{border-color:#B18D48;background:#FBF6EB}
.pfh-mat-options button.is-selected{background:#111;color:#fff;border-color:#C6A15B;box-shadow:inset 0 -2px #C6A15B}
.pfh-profile-options button.is-selected{border-color:#B18D48;background:#FBF6EB}
.pfh-finish-preview-wrap{border-top:3px solid #C6A15B}
.pfh-preview-dot{background:#C6A15B}
.pfh-same-photo-section{background:#111;color:#fff;padding:77px max(5.5%,calc((100% - 1280px)/2))}
.pfh-same-photo-head{display:grid;grid-template-columns:1fr .9fr;column-gap:55px;align-items:end;margin-bottom:30px}
.pfh-same-photo-head .pfh-eyebrow{grid-column:1/-1;color:#D5BE88;margin-bottom:13px}
.pfh-same-photo-head h2{font-family:var(--pp-heading);font-size:clamp(38px,3.8vw,52px);font-weight:500;letter-spacing:-.045em;line-height:1.05;margin:0}
.pfh-same-photo-head h2 em{color:#D2AF65}
.pfh-same-photo-head>p:last-child{font-size:19.2px;line-height:1.8;color:#c5c1b7;max-width:420px;margin:0 0 3px}
.pfh-same-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pfh-same-photo-card{min-width:0;padding:12px 12px 14px;background:#191919;border:1px solid #3d372a;color:#fff;text-align:left;cursor:pointer;transition:border-color .18s,background .18s}
.pfh-same-photo-card:hover,.pfh-same-photo-card.is-active{border-color:#C6A15B;background:#211e18}
.pfh-same-photo-frame{height:205px;padding:12px;background:#292929;display:flex;align-items:stretch;justify-content:stretch;transition:padding .2s}
.pfh-same-photo-frame img{min-height:0;object-fit:cover}
.pfh-same-photo-border{padding:15px;background:#101010;border:1px solid #C6A15B}
.pfh-same-photo-border img{border:10px solid #f6f3eb}
.pfh-same-photo-acrylic{padding:9px;background:#E9E9E7;box-shadow:inset 0 0 0 2px #C6A15B}
.pfh-same-photo-acrylic img{border:2px solid #fff}
.pfh-same-photo-canvas{padding:5px;background:#eee6d8;border:1px solid #C4A568}
.pfh-same-photo-canvas img{border:4px solid #eee6d8}
.pfh-same-photo-floater{padding:17px;background:#8a693d;box-shadow:inset 0 0 0 1px #d4b56d}
.pfh-same-photo-floater img{border:5px solid #e5d7bb}
.pfh-same-photo-card-caption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px}
.pfh-same-photo-card-caption strong,.pfh-same-photo-card-caption small{display:block}
.pfh-same-photo-card-caption strong{font-family:var(--pp-heading);font-weight:500;font-size:22.7px}
.pfh-same-photo-card-caption small{color:#b6b1a6;font-size:14px;margin-top:3px}
.pfh-same-photo-check{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;border:1px solid #625337;color:#D6B875;flex:none}
.pfh-same-photo-card.is-active .pfh-same-photo-check{background:#C6A15B;color:#111;border-color:#C6A15B}
.pfh-same-photo-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding-top:18px;border-top:1px solid #3d372a;color:#d2cec5;font-size:17.5px}
.pfh-same-photo-cta strong{color:#fff}
.pfh-btn-gold{background:#C6A15B;color:#111!important}
.pfh-btn-gold svg{color:#111}
.pfh-btn-gold:hover{background:#D8B96F}
.pfh-material-section{max-width:1280px;margin:0 auto;padding:80px 0 88px}
.pfh-material-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:28px}
.pfh-material-heading .pfh-eyebrow{margin-bottom:12px}
.pfh-material-heading h2{font-family:var(--pp-heading);font-size:clamp(38px,3.8vw,51px);font-weight:500;line-height:1.05;letter-spacing:-.045em;margin:0}
.pfh-material-heading h2 em{color:#A77B2F}
.pfh-material-heading>p{max-width:390px;margin-bottom:3px;color:#6d6a62;font-size:19.2px;line-height:1.8}
.pfh-material-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.pfh-material-card{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:18px 17px 17px;border:1px solid #E6E0D3;background:#fff;transition:transform .18s,border-color .18s,box-shadow .18s}
.pfh-material-card:hover{transform:translateY(-3px);border-color:#C6A15B;box-shadow:0 12px 30px rgba(17,17,17,.06)}
.pfh-material-index{font-size:14px;letter-spacing:.13em;color:#A77B2F;font-weight:700;padding-bottom:15px;border-bottom:1px solid #eee8dc}
.pfh-material-card h3{font-family:var(--pp-heading);font-size:28.4px;font-weight:500;line-height:1.15;margin:14px 0 15px}
.pfh-material-card>div{padding:10px 0 9px;border-top:1px solid #efede6}
.pfh-material-card>div small{font-size:13.5px;letter-spacing:.12em;color:#8b7a5c;font-weight:700}
.pfh-material-card>div p{font-size:15.8px;line-height:1.6;color:#5f5e59;margin:5px 0 0}
.pfh-material-card .pfh-material-best{background:#faf6ed;padding:11px;margin-top:4px;border-top:1px solid #e8dbc0}
.pfh-material-card .pfh-material-best p{color:#25231e;font-weight:500}
.pfh-material-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:15px;margin-top:auto;font-size:15.8px;font-weight:700;color:#181818}
.pfh-material-link svg{color:#A77B2F}
.pfh-material-note{font-size:14px;line-height:1.6;color:#858176;margin:13px 0 0}
.pfh-gallery-sets-section{padding:76px max(5.5%,calc((100% - 1280px)/2));background:#f8f5ed;border-top:1px solid #e7ddc7;border-bottom:1px solid #e7ddc7}
.pfh-gallery-sets-section .pfh-section-head{max-width:1280px;margin:0 auto 28px}
.pfh-gallery-sets-section .pfh-section-head .pfh-eyebrow>span:first-child{background:#C6A15B}
.pfh-gallery-sets-section .pfh-section-head h2 em{color:#A77B2F}
.pfh-gallery-set-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.pfh-gallery-set-card{min-width:0;background:#fff;border:1px solid #e6dfd1;display:flex;flex-direction:column;padding:9px;transition:transform .18s,border-color .18s}
.pfh-gallery-set-card:hover{transform:translateY(-3px);border-color:#C6A15B}
.pfh-gallery-set-image{height:177px;position:relative;overflow:hidden;background:#e8e2d4}
.pfh-gallery-set-image img{transition:transform .3s}
.pfh-gallery-set-card:hover .pfh-gallery-set-image img{transform:scale(1.035)}
.pfh-set-count{position:absolute;left:8px;top:8px;padding:6px 8px;background:#111;color:#E0C781;font-size:13.5px;letter-spacing:.1em;font-weight:700}
.pfh-set-arrow{position:absolute;right:7px;bottom:7px;width:27px;height:27px;display:flex;align-items:center;justify-content:center;background:#C6A15B;color:#111;border-radius:50%}
.pfh-gallery-set-meta{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;padding:13px 3px 8px}
.pfh-gallery-set-meta h3{font-family:var(--pp-heading);font-weight:500;font-size:22.7px;line-height:1.2;margin:0 0 6px}
.pfh-gallery-set-meta p{font-size:14px;color:#777168;margin:0;line-height:1.5}
.pfh-gallery-set-meta>strong{white-space:nowrap;color:#8B6728;font-size:15.8px}
.pfh-gallery-set-link{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 3px 3px;margin-top:auto;border-top:1px solid #eee8dc;font-size:14px;font-weight:700}
.pfh-gallery-set-link svg{color:#A77B2F}
.pfh-gallery-sets-footer{max-width:1280px;margin:21px auto 0;padding-top:16px;border-top:1px solid #e6dcc8;display:flex;justify-content:space-between;align-items:center;gap:16px;color:#716b60;font-size:15.8px}
.pfh-gallery-sets-footer a{display:flex;align-items:center;gap:7px;font-weight:700;color:#171717}
.pfh-gallery-sets-footer svg{color:#A77B2F}
.pfh-room-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.pfh-room-copy small{color:#ead8aa}
.pfh-room-copy>span svg{color:#D6B875}
.pfh-occasion-list>a:hover{background:#FAF7F0}
.pfh-faq-list details[open] summary span{background:#FBF6EB;border-color:#C6A15B}
.pfh-process-grid>div>span{border-color:#79683e;color:#D4B56E}
.pfh-process-foot>a{color:#D4B56E}
@media(max-width:1320px){.pfh-material-section{margin-left:5.5%;margin-right:5.5%}}
@media(max-width:980px){.pfh-same-photo-section,.pfh-gallery-sets-section{padding-left:4%;padding-right:4%}.pfh-same-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pfh-same-photo-frame{height:190px}.pfh-material-section{margin-left:4%;margin-right:4%;padding-top:65px;padding-bottom:65px}.pfh-material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pfh-gallery-set-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pfh-gallery-set-image{height:210px}}
@media(max-width:720px){.pfh-same-photo-section{padding:45px 17px}.pfh-same-photo-head{display:block;margin-bottom:23px}.pfh-same-photo-head .pfh-eyebrow{margin-bottom:12px}.pfh-same-photo-head h2{font-size:39px}.pfh-same-photo-head>p:last-child{font-size:13.5px;line-height:1.75;margin-top:13px}.pfh-same-photo-grid{gap:9px}.pfh-same-photo-card{padding:7px}.pfh-same-photo-frame{height:135px;padding:7px}.pfh-same-photo-border{padding:9px}.pfh-same-photo-border img{border-width:5px}.pfh-same-photo-acrylic{padding:6px}.pfh-same-photo-canvas{padding:4px}.pfh-same-photo-canvas img{border-width:2px}.pfh-same-photo-floater{padding:9px}.pfh-same-photo-floater img{border-width:3px}.pfh-same-photo-card-caption strong{font-size:15px}.pfh-same-photo-card-caption small{font-size:13.5px;line-height:1.45}.pfh-same-photo-cta{align-items:stretch;flex-direction:column;font-size:13.5px}.pfh-same-photo-cta .pfh-btn{width:100%;justify-content:space-between}.pfh-material-section{margin:0;padding:55px 17px}.pfh-material-heading{display:block;margin-bottom:22px}.pfh-material-heading h2{font-size:39px}.pfh-material-heading>p{font-size:13.5px;margin-top:13px}.pfh-material-grid{gap:8px}.pfh-material-card{padding:12px 10px}.pfh-material-index{padding-bottom:10px}.pfh-material-card h3{font-size:19.5px;margin:11px 0}.pfh-material-card>div{padding:8px 0 7px}.pfh-material-card>div small{font-size:13.5px}.pfh-material-card>div p{font-size:13.5px}.pfh-material-card .pfh-material-best{padding:8px;margin-top:2px}.pfh-material-link{font-size:13.5px;padding-top:10px}.pfh-gallery-sets-section{padding:45px 17px}.pfh-gallery-sets-section .pfh-section-head{margin-bottom:22px}.pfh-gallery-set-grid{gap:9px}.pfh-gallery-set-card{padding:6px}.pfh-gallery-set-image{height:138px}.pfh-gallery-set-meta{display:block;padding:10px 2px 8px}.pfh-gallery-set-meta h3{font-size:16.1px;margin-bottom:5px}.pfh-gallery-set-meta p{font-size:13.5px;margin-bottom:7px}.pfh-gallery-set-meta>strong{font-size:13.5px}.pfh-gallery-set-link{font-size:13.5px;padding-top:8px}.pfh-gallery-sets-footer{align-items:flex-start;flex-direction:column;gap:8px;font-size:13.5px}.pfh-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pfh-room-grid .pfh-room-large{grid-column:1/-1}}


/* Global PrintPosters shopping shell — black, gold and warm ivory */
.pfh-announcement{background:#080808;border-bottom:1px solid #3c301c}
.pfh-announcement>span{display:flex;align-items:center;gap:7px}
.pfh-announcement>span>a{color:#D2B26F;font-weight:800}
.pfh-announcement i{display:inline-block;width:4px;height:4px;border-radius:50%;background:#C6A15B;margin:0 5px}
.pfh-header-search{min-width:0;display:flex;align-items:center;gap:11px;border:1px solid #e3e0d8;background:#fbfaf7;padding:0 10px 0 13px;height:42px;border-radius:3px;color:#89857b}
.pfh-header-search>svg{width:17px;height:17px;flex:none;color:#A77B2F}
.pfh-header-search input{min-width:0;width:100%;height:100%;border:0;outline:none;background:transparent;color:#191919;font:inherit;font-size:19.2px}
.pfh-header-search input::placeholder{color:#89857b}
.pfh-header-search>a{font-size:15.8px;font-weight:700;color:#161616;padding:8px 10px;border-left:1px solid #e3e0d8;white-space:nowrap}
.pfh-trending-row{display:flex;align-items:center;gap:14px;padding:10px max(5.5%,calc((100% - 1280px)/2));border-bottom:1px solid #efede7;overflow-x:auto;white-space:nowrap;scrollbar-width:none;background:#fbfaf7}
.pfh-trending-row::-webkit-scrollbar{display:none}.pfh-trending-row strong{font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:#777}.pfh-trending-row a{font-size:15.8px;color:#4e4e4a}.pfh-trending-row a:hover{color:#8B6728}
.pfh-offers-home{padding:65px max(5.5%,calc((100% - 1280px)/2));display:grid;grid-template-columns:.7fr 1.3fr;gap:42px;align-items:center;background:#f8f5ed;border-bottom:1px solid #e8dfcc}
.pfh-offers-heading .pfh-eyebrow{margin-bottom:13px}.pfh-offers-heading h2{font-family:var(--pp-heading);font-size:clamp(37px,3.7vw,49px);line-height:1.03;letter-spacing:-.04em;font-weight:500;margin:0 0 16px}.pfh-offers-heading h2 em{color:#A77B2F}.pfh-offers-heading>p:not(.pfh-eyebrow){font-size:17.5px;line-height:1.8;color:#6d695f}.pfh-offers-heading>a{display:inline-flex;align-items:center;gap:7px;margin-top:8px;font-size:15.8px;font-weight:700;border-bottom:1px solid #c6a15b;padding-bottom:6px}.pfh-offers-heading>a svg{color:#A77B2F}
.pfh-offer-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pfh-offer-card{min-height:218px;position:relative;overflow:hidden;padding:16px 14px;display:flex;flex-direction:column;align-items:flex-start;border:1px solid #e2d5b9;transition:transform .18s,border-color .18s}.pfh-offer-card:hover{transform:translateY(-3px);border-color:#C6A15B}.pfh-offer-card-dark{background:#151515;color:#fff;border-color:#332b1c}.pfh-offer-card-ivory{background:#fff}.pfh-offer-card-gold{background:#E7D8B6;color:#17130c}.pfh-offer-number{font-size:13.5px;letter-spacing:.11em;font-weight:800;opacity:.8;line-height:1.4}.pfh-offer-big{font-family:var(--pp-heading);font-size:clamp(24px,2.25vw,32px);line-height:.98;font-weight:500;letter-spacing:-.03em;margin:22px 0 10px}.pfh-offer-big em{font-style:normal;color:#C6A15B}.pfh-offer-card-ivory .pfh-offer-big em,.pfh-offer-card-gold .pfh-offer-big em{color:#8B6728}.pfh-offer-card p{font-size:14px;line-height:1.65;opacity:.82;margin-bottom:13px}.pfh-offer-cta{display:flex;align-items:center;gap:5px;margin-top:auto;font-size:14px;font-weight:700}.pfh-offer-card-dark .pfh-offer-cta{color:#D7B66C}.pfh-offer-card-ivory .pfh-offer-cta{color:#8B6728}.pfh-offer-card-gold .pfh-offer-cta{color:#17130c}.pfh-offer-star{position:absolute;right:8px;top:31px;color:#C6A15B;font-size:27px;opacity:.7}.pfh-offer-card-gold .pfh-offer-star{color:#7F6025}
.pfh-quickstart-section{max-width:1280px;margin:0 auto;padding:63px 0 20px;display:grid;grid-template-columns:.65fr 1.35fr;gap:38px;align-items:center}.pfh-quickstart-intro .pfh-eyebrow{margin-bottom:12px}.pfh-quickstart-intro h2{font-family:var(--pp-heading);font-size:clamp(34px,3.2vw,43px);line-height:1.05;font-weight:500;letter-spacing:-.04em;margin:0}.pfh-quickstart-intro h2 em{color:#A77B2F}.pfh-quickstart-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.pfh-quickstart-grid>a{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:165px;padding:13px 11px;border:1px solid #e7e2d8;background:#fff;transition:border .18s,background .18s}.pfh-quickstart-grid>a:hover{border-color:#C6A15B;background:#fcf8ef}.pfh-quick-number{position:absolute;top:12px;right:11px;font-size:13.5px;color:#9a896a;font-weight:700}.pfh-quick-icon{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border:1px solid #e5d8bc;color:#9b742d;background:#faf6ec;font-family:var(--pp-heading);font-size:28.4px;margin-bottom:14px}.pfh-quickstart-grid strong{font-size:15.8px;line-height:1.4;margin-bottom:6px}.pfh-quickstart-grid small{font-size:13.5px;color:#777269;line-height:1.6;margin-bottom:12px}.pfh-quick-link{display:flex;align-items:center;gap:5px;margin-top:auto;font-size:13.5px;font-weight:700;color:#8B6728}
.pfh-no-results{grid-column:1/-1;background:#f8f5ed;border:1px dashed #c6a15b;padding:24px;font-size:19.2px;color:#6a655c}.pfh-no-results a{color:#8B6728;text-decoration:underline;font-weight:700}
.pfh-colour-spotlight{max-width:1180px;margin:0 auto;padding:54px 0 63px;display:grid;grid-template-columns:.78fr 1.22fr;gap:43px;align-items:center}.pfh-colour-spotlight h2{font-family:var(--pp-heading);font-size:clamp(35px,3.4vw,46px);font-weight:500;line-height:1.04;letter-spacing:-.04em;margin:0 0 12px}.pfh-colour-spotlight h2 em{color:#A77B2F}.pfh-colour-spotlight>div:first-child>p:last-child{font-size:17.5px;line-height:1.8;color:#716d64}.pfh-colour-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pfh-colour-tile{display:flex;align-items:center;gap:9px;min-width:0;padding:11px 9px;border:1px solid #e4e0d6;background:#fff;text-align:left;cursor:pointer}.pfh-colour-tile:hover,.pfh-colour-tile.is-selected{border-color:#C6A15B;background:#fbf7ee}.pfh-colour-chip{width:28px;height:28px;flex:none;border:1px solid rgba(0,0,0,.17);box-shadow:inset 0 0 0 2px rgba(255,255,255,.12)}.pfh-colour-black{background:#202020}.pfh-colour-white{background:#faf9f3}.pfh-colour-natural{background:#c6a273}.pfh-colour-walnut{background:#68452f}.pfh-colour-gold{background:#C6A15B}.pfh-colour-silver{background:#a9acae}.pfh-colour-tile strong,.pfh-colour-tile small{display:block}.pfh-colour-tile strong{font-size:14px;line-height:1.4}.pfh-colour-tile small{font-size:13.5px;line-height:1.4;color:#777;margin-top:3px}.pfh-colour-tile>svg{width:12px;flex:none;margin-left:auto;color:#A77B2F}
.pfh-craft-section{padding:72px max(5.5%,calc((100% - 1280px)/2));background:#f8f5ed;border-top:1px solid #e9dfcc;border-bottom:1px solid #e9dfcc}.pfh-craft-heading{display:grid;grid-template-columns:1fr .75fr;column-gap:60px;align-items:end;margin-bottom:30px}.pfh-craft-heading .pfh-eyebrow{grid-column:1/-1;margin-bottom:13px}.pfh-craft-heading h2{font-family:var(--pp-heading);font-size:clamp(39px,4vw,54px);font-weight:500;line-height:1.04;margin:0}.pfh-craft-heading h2 em{color:#A77B2F}.pfh-craft-heading>p:last-child{font-size:17.5px;color:#6f6a5f;line-height:1.8;margin-bottom:3px;max-width:360px}.pfh-craft-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.pfh-craft-cards article{padding:10px;background:#fff;border:1px solid #e6dfd1}.pfh-craft-image{height:205px;overflow:hidden;background:#e9e1d1;margin-bottom:14px}.pfh-craft-cards article>span{font-size:13.5px;letter-spacing:.14em;color:#8B6728;font-weight:800}.pfh-craft-cards h3{font-family:var(--pp-heading);font-size:28.4px;font-weight:500;margin:8px 0}.pfh-craft-cards p{font-size:15.8px;line-height:1.7;color:#706d65;margin-bottom:6px}.pfh-craft-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:19px;padding-top:17px;border-top:1px solid #e1d7c2}.pfh-craft-facts strong,.pfh-craft-facts small{display:block}.pfh-craft-facts strong{font-size:15.8px}.pfh-craft-facts small{font-size:13.5px;color:#787166;margin-top:4px}
.pfh-reviews-section{display:grid;grid-template-columns:1fr .8fr;gap:60px;align-items:center;padding:72px max(7%,calc((100% - 1180px)/2));background:#111;color:#fff}.pfh-review-summary .pfh-eyebrow{color:#dfc88f;margin-bottom:14px}.pfh-review-summary h2{font-family:var(--pp-heading);font-size:clamp(39px,3.8vw,51px);font-weight:500;line-height:1.04;margin:0 0 18px}.pfh-review-summary h2 em{color:#D5B46A}.pfh-review-summary>p:not(.pfh-eyebrow){color:#c6c0b4;max-width:420px;font-size:17.5px;line-height:1.8;margin-bottom:20px}.pfh-review-summary .pfh-btn{font-size:15.8px}.pfh-review-card{position:relative;padding:25px 24px;border:1px solid #5f4c2e;background:#1a1916}.pfh-review-stars{font-size:21px;letter-spacing:2px;color:#D8B66C}.pfh-review-score{font-family:var(--pp-heading);font-size:57px;line-height:1;margin:12px 0 8px;color:#fff}.pfh-review-score span{font-size:28.4px;color:#c7a661}.pfh-review-card>strong{font-size:17.5px}.pfh-review-card>p{font-size:14px;color:#b8b2a7;margin:5px 0 18px}.pfh-review-card>a{display:flex;align-items:center;gap:6px;margin-top:15px;font-size:14px;font-weight:700;color:#D8B66C}
.pfh-professional-section{padding:74px max(5.5%,calc((100% - 1280px)/2));display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.pfh-professional-copy .pfh-eyebrow{margin-bottom:13px}.pfh-professional-copy h2{font-family:var(--pp-heading);font-weight:500;font-size:clamp(39px,3.8vw,52px);line-height:1.05;margin:0 0 16px}.pfh-professional-copy h2 em{color:#A77B2F}.pfh-professional-copy>p:not(.pfh-eyebrow){font-size:17.5px;line-height:1.8;color:#6c6a63;margin-bottom:20px}.pfh-professional-copy .pfh-btn{font-size:15.8px}.pfh-professional-tiles{border-top:1px solid #e8e4dc}.pfh-professional-tiles a{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:14px 4px;border-bottom:1px solid #e8e4dc}.pfh-professional-tiles a:hover{background:#fbf7ef}.pfh-professional-tiles a>span{grid-row:1/3;grid-column:1;font-size:14px;color:#A77B2F;font-weight:800}.pfh-professional-tiles strong{font-size:15.8px;grid-column:2}.pfh-professional-tiles small{font-size:13.5px;color:#777;grid-column:2}.pfh-professional-tiles svg{grid-column:3;grid-row:1/3;color:#A77B2F}
.pfh-guides-section{padding:72px max(5.5%,calc((100% - 1280px)/2));background:#fbfaf7;border-top:1px solid #eeece6}.pfh-guides-section .pfh-section-head{max-width:1280px;margin:0 auto 27px}.pfh-guides-section .pfh-section-head .pfh-eyebrow>span:first-child{background:#C6A15B}.pfh-guides-section .pfh-section-head h2 em{color:#A77B2F}.pfh-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1280px;margin:0 auto}.pfh-guide-grid>a{display:flex;flex-direction:column;position:relative;border:1px solid #e6e0d4;background:#fff;padding:9px;transition:transform .18s,border-color .18s}.pfh-guide-grid>a:hover{transform:translateY(-3px);border-color:#C6A15B}.pfh-guide-tag{position:absolute;z-index:1;left:17px;top:17px;padding:6px 7px;background:#111;color:#E6D2A1;font-size:13.5px;letter-spacing:.12em;font-weight:800}.pfh-guide-image{height:175px;overflow:hidden;background:#e9e4d8}.pfh-guide-grid h3{font-family:var(--pp-heading);font-size:28.4px;font-weight:500;margin:13px 4px 7px}.pfh-guide-grid p{font-size:14px;line-height:1.75;color:#746f65;margin:0 4px 12px}.pfh-guide-grid>a>span:last-child{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:700;margin:auto 4px 3px;color:#8B6728}
@media(max-width:1320px){.pfh-quickstart-section,.pfh-colour-spotlight{margin-left:5.5%;margin-right:5.5%}}
@media(max-width:980px){.pfh-trending-row{padding-left:4%;padding-right:4%}.pfh-offers-home{grid-template-columns:1fr;gap:25px;padding-left:4%;padding-right:4%}.pfh-offer-card{min-height:195px}.pfh-quickstart-section{display:block;margin-left:4%;margin-right:4%;padding-top:46px}.pfh-quickstart-intro{margin-bottom:20px}.pfh-quickstart-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.pfh-colour-spotlight{margin-left:4%;margin-right:4%;gap:25px}.pfh-craft-section,.pfh-reviews-section,.pfh-professional-section,.pfh-guides-section{padding-left:4%;padding-right:4%}.pfh-craft-image{height:160px}.pfh-professional-section{gap:30px}.pfh-process-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.pfh-announcement{justify-content:center;text-align:center;padding:8px 12px;font-size:13.5px;flex-wrap:wrap;gap:2px 7px}.pfh-announcement>span:last-child{font-size:13.5px;justify-content:center}.pfh-header-search{grid-column:1/-1;grid-row:2;height:38px;order:3}.pfh-trending-row{padding:9px 15px;gap:11px}.pfh-trending-row strong{font-size:13.5px}.pfh-trending-row a{font-size:13.5px}.pfh-offers-home{padding:42px 15px;gap:21px}.pfh-offers-heading h2{font-size:39px}.pfh-offers-heading>p:not(.pfh-eyebrow){font-size:13.5px}.pfh-offer-cards{grid-template-columns:1fr;gap:8px}.pfh-offer-card{min-height:155px;padding:15px}.pfh-offer-big{font-size:27px;margin:14px 0 8px}.pfh-offer-card p{max-width:260px}.pfh-offer-star{right:16px;top:35px;font-size:23px}.pfh-quickstart-section{margin:0;padding:43px 15px 13px}.pfh-quickstart-intro h2{font-size:36px}.pfh-quickstart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pfh-quickstart-grid>a{min-height:150px;padding:12px 10px}.pfh-quickstart-grid strong{font-size:13.5px}.pfh-quickstart-grid small{font-size:13.5px}.pfh-colour-spotlight{display:block;margin:0;padding:45px 15px}.pfh-colour-spotlight h2{font-size:38px}.pfh-colour-spotlight>div:first-child>p:last-child{font-size:13.5px;margin-top:12px}.pfh-colour-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:20px}.pfh-colour-tile{padding:9px 7px;gap:7px}.pfh-colour-chip{width:24px;height:24px}.pfh-colour-tile strong{font-size:13.5px}.pfh-colour-tile small{font-size:13.5px}.pfh-craft-section{padding:44px 15px}.pfh-craft-heading{display:block;margin-bottom:22px}.pfh-craft-heading h2{font-size:41px}.pfh-craft-heading>p:last-child{margin-top:12px;font-size:13.5px}.pfh-craft-cards{grid-template-columns:1fr;gap:9px}.pfh-craft-cards article{display:grid;grid-template-columns:106px 1fr;column-gap:12px;padding:9px}.pfh-craft-image{grid-row:1/4;height:105px;margin:0}.pfh-craft-cards article>span{font-size:13.5px;align-self:end}.pfh-craft-cards h3{font-size:19.5px;margin:4px 0}.pfh-craft-cards p{font-size:13.5px;margin:0}.pfh-craft-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.pfh-craft-facts strong{font-size:13.5px}.pfh-craft-facts small{font-size:13.5px}.pfh-reviews-section{grid-template-columns:1fr;gap:25px;padding:45px 15px}.pfh-review-summary h2{font-size:42px}.pfh-review-card{padding:20px}.pfh-professional-section{display:block;padding:45px 15px}.pfh-professional-copy h2{font-size:42px}.pfh-professional-copy>p:not(.pfh-eyebrow){font-size:13.5px}.pfh-professional-tiles{margin-top:25px}.pfh-professional-tiles a{grid-template-columns:24px 1fr auto;gap:7px;padding:12px 2px}.pfh-professional-tiles strong{font-size:13.5px}.pfh-professional-tiles small{font-size:13.5px}.pfh-guides-section{padding:45px 15px}.pfh-guides-section .pfh-section-head{margin-bottom:20px}.pfh-guide-grid{grid-template-columns:1fr;gap:9px}.pfh-guide-grid>a{display:grid;grid-template-columns:105px 1fr;column-gap:12px;padding:8px}.pfh-guide-tag{left:13px;top:13px;font-size:13.5px;padding:5px}.pfh-guide-image{grid-row:1/5;height:108px}.pfh-guide-grid h3{font-size:18.4px;margin:8px 0 0}.pfh-guide-grid p{font-size:13.5px;margin:5px 0}.pfh-guide-grid>a>span:last-child{margin:0 4px 3px;font-size:13.5px}}
@media(prefers-reduced-motion:reduce){.pfh-page *{transition:none!important;scroll-behavior:auto!important}}

/* Interactive size, orientation and display selectors */
.pfh-size-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 15px;padding:15px 17px;background:#faf7f0;border:1px solid #e8dfcc}
.pfh-size-control-label{display:block;margin-bottom:8px;font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#78623a}
.pfh-size-toggle{display:flex;gap:6px;flex-wrap:wrap}
.pfh-size-toggle button{padding:8px 11px;border:1px solid #ded8cb;background:#fff;color:#57544c;font-size:15.8px;font-weight:600;cursor:pointer}
.pfh-size-toggle button.is-selected{background:#111;color:#fff;border-color:#C6A15B;box-shadow:inset 0 -2px #C6A15B}
.pfh-size-tile{font:inherit;color:inherit;cursor:pointer;width:100%;border-radius:0}
.pfh-size-tile:hover,.pfh-size-tile.is-selected{border-color:#C6A15B;background:#FBF6EB}
.pfh-size-tile.is-selected{box-shadow:inset 0 0 0 1px #C6A15B}
.pfh-size-outline.is-landscape i{transform:rotate(90deg)}
.pfh-size-selected-summary{margin-top:13px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 17px;background:#111;color:#fff}
.pfh-size-selected-summary>div{display:flex;flex-direction:column;gap:4px}
.pfh-size-selected-summary span{font-size:13.5px;letter-spacing:.15em;color:#D6B875;font-weight:800}
.pfh-size-selected-summary strong{font-family:var(--pp-heading);font-size:28.4px;font-weight:500}
.pfh-size-selected-summary small{font-size:14px;line-height:1.6;color:#c7c1b5;max-width:390px}
.pfh-size-selected-summary .pfh-btn{flex:none;font-size:15.8px;min-height:40px}
@media(max-width:720px){.pfh-size-controls{grid-template-columns:1fr;gap:13px;padding:12px}.pfh-size-toggle button{flex:1}.pfh-size-selected-summary{align-items:stretch;flex-direction:column;padding:14px;gap:12px}.pfh-size-selected-summary strong{font-size:20.7px}.pfh-size-selected-summary .pfh-btn{width:100%;justify-content:space-between}}


/* Mobile readability pass: larger type, calmer spacing and thumb-friendly controls */
@media (max-width:720px){
  .pfh-page{font-size:18.4px;line-height:1.65;padding-bottom:78px;overflow-x:hidden}
  .pfh-page p{line-height:1.7}
  .pfh-page button,.pfh-page input{font-size:16.1px}
  .pfh-eyebrow{font-size:13.5px;line-height:1.45;letter-spacing:.11em;margin-bottom:14px}
  .pfh-announcement{font-size:13.5px;line-height:1.45;padding:9px 12px}
  .pfh-announcement>span:last-child{font-size:13.5px;line-height:1.4}
  .pfh-header-search{min-height:44px;height:44px}
  .pfh-header-search input{font-size:16.1px}
  .pfh-header-search input::placeholder{font-size:16.2px}
  .pfh-header-search>a{font-size:14.8px;padding:9px}
  .pfh-trending-row{padding:11px 16px;gap:13px}
  .pfh-trending-row strong{font-size:13.5px}
  .pfh-trending-row a{font-size:14.8px}
  .pfh-hero{gap:25px;padding:35px 17px 38px}
  .pfh-hero h1{font-size:clamp(44px,11.5vw,54px);line-height:1.02;letter-spacing:-.045em;margin-bottom:18px}
  .pfh-hero-sub{font-size:17.2px;line-height:1.75;margin-bottom:23px}
  .pfh-hero-actions{gap:14px;align-items:flex-start}
  .pfh-btn{font-size:15px;line-height:1.35;min-height:48px;padding:13px 14px;gap:10px}
  .pfh-text-link{font-size:16.2px;line-height:1.45;padding:9px 0}
  .pfh-trust-inline{margin-top:26px;gap:9px;padding-top:16px;flex-wrap:wrap}
  .pfh-stars{font-size:15px;letter-spacing:1px}
  .pfh-trust-inline strong{font-size:16.2px;line-height:1.4}
  .pfh-trust-inline small{font-size:14.8px;line-height:1.45}
  .pfh-trust-divider{height:30px}
  .pfh-hero-visual{min-height:285px;margin:0 3px}
  .pfh-hero-image{inset:0 15px 12px 18px}
  .pfh-image-word{font-size:21px;line-height:1.15;left:14px;bottom:14px}
  .pfh-hero-card{min-width:125px;padding:11px 12px;gap:4px}
  .pfh-card-kicker{font-size:13.5px;line-height:1.3;letter-spacing:.09em}
  .pfh-hero-card strong{font-size:19.5px;line-height:1.25}
  .pfh-hero-card>span:last-child{font-size:16.2px}
  .pfh-hero-stamp{width:69px;height:69px}
  .pfh-hero-stamp span{font-size:13.5px}
  .pfh-hero-stamp strong{font-size:17.2px}
  .pfh-service-ribbon{padding:19px 17px;gap:17px 12px}
  .pfh-service-ribbon>div{align-items:flex-start;gap:9px}
  .pfh-service-ribbon strong{font-size:16.2px;line-height:1.4}
  .pfh-service-ribbon small{font-size:14.8px;line-height:1.5;margin-top:4px}
  .pfh-ribbon-symbol,.pfh-ribbon-number{width:32px;height:32px;font-size:13.5px}
  .pfh-offers-home{padding:44px 17px;gap:23px}
  .pfh-offers-heading h2{font-size:40px;line-height:1.06}
  .pfh-offers-heading>p:not(.pfh-eyebrow){font-size:16.1px;line-height:1.7}
  .pfh-offers-heading>a{font-size:15px;line-height:1.4;min-height:36px}
  .pfh-offer-card{padding:17px;min-height:174px}
  .pfh-offer-number{font-size:13.5px;line-height:1.5;letter-spacing:.1em}
  .pfh-offer-big{font-size:30px;line-height:1.02;margin:15px 0 9px}
  .pfh-offer-card p{font-size:15px;line-height:1.65;margin-bottom:13px;max-width:none}
  .pfh-offer-cta{font-size:16.2px;line-height:1.4;min-height:30px}
  .pfh-offer-star{font-size:24px;top:19px;right:17px}
  .pfh-quickstart-section{padding:44px 17px 14px}
  .pfh-quickstart-intro h2{font-size:37px;line-height:1.08}
  .pfh-quickstart-grid{gap:10px}
  .pfh-quickstart-grid>a{min-height:180px;padding:14px 12px}
  .pfh-quick-number{font-size:13.5px;top:12px;right:12px}
  .pfh-quick-icon{width:34px;height:34px;font-size:22px;margin-bottom:16px}
  .pfh-quickstart-grid strong{font-size:15px;line-height:1.4;margin-bottom:7px}
  .pfh-quickstart-grid small{font-size:16.2px;line-height:1.55;margin-bottom:13px}
  .pfh-quick-link{font-size:14.8px;line-height:1.45;gap:6px}
  .pfh-section{padding:58px 17px}
  .pfh-section-head{margin-bottom:25px}
  .pfh-section h2,.pfh-finish-left h2,.pfh-bundle-copy h2,.pfh-process-heading h2,.pfh-final-cta h2{font-size:clamp(35px,9.4vw,42px);line-height:1.08;letter-spacing:-.035em}
  .pfh-section-head>p{font-size:16.1px;line-height:1.75;margin-top:14px}
  .pfh-section-head .pfh-eyebrow{margin-bottom:13px}
  .pfh-product-grid{gap:26px 12px}
  .pfh-product-photo{height:clamp(150px,43vw,205px)}
  .pfh-product-tag{font-size:13.5px;line-height:1.3;letter-spacing:.06em;padding:7px 8px;top:8px;left:8px}
  .pfh-product-arrow{width:34px;height:34px}
  .pfh-product-info{padding-top:12px}
  .pfh-product-info h3{font-size:16.1px;line-height:1.4;margin-bottom:6px}
  .pfh-product-info p{font-size:16.2px;line-height:1.55}
  .pfh-product-info>strong{font-size:16.2px;line-height:1.4;margin-top:7px}
  .pfh-link-cloud{gap:8px;margin-top:26px;padding-top:19px}
  .pfh-link-cloud>span{font-size:16.2px;line-height:1.5}
  .pfh-link-cloud>a{font-size:14.8px;line-height:1.4;min-height:37px;padding:8px 10px}
  .pfh-no-results{font-size:15px;line-height:1.7;padding:16px}
  .pfh-colour-spotlight{padding:44px 17px}
  .pfh-colour-spotlight h2{font-size:39px;line-height:1.08}
  .pfh-colour-spotlight>div:first-child>p:last-child{font-size:16.1px;line-height:1.7;margin-top:13px}
  .pfh-colour-tiles{gap:9px;margin-top:20px}
  .pfh-colour-tile{min-height:66px;padding:10px 8px;gap:9px}
  .pfh-colour-chip{width:29px;height:29px}
  .pfh-colour-tile strong{font-size:16.2px;line-height:1.4}
  .pfh-colour-tile small{font-size:13.5px;line-height:1.45;margin-top:4px}
  .pfh-colour-tile>svg{width:15px}
  .pfh-finish-section{padding:45px 17px;gap:27px}
  .pfh-finish-left h2{font-size:42px}
  .pfh-finish-intro{font-size:16.1px;line-height:1.75;margin:15px 0 20px}
  .pfh-finish-options{gap:8px}
  .pfh-finish-option{font-size:16.2px;line-height:1.4;padding:10px;gap:9px;min-height:53px}
  .pfh-finish-swatch{width:25px;height:25px}
  .pfh-option-check{font-size:16.1px}
  .pfh-control-heading{gap:5px}
  .pfh-control-heading strong{font-size:15px}
  .pfh-control-heading span{font-size:14.8px;line-height:1.5}
  .pfh-mat-options{gap:7px}
  .pfh-mat-options button{font-size:16.2px;min-height:39px;padding:9px 10px}
  .pfh-profile-options button{font-size:14.8px;line-height:1.4;min-height:65px;padding:9px 5px}
  .pfh-profile-bar{transform:scale(1.05)}
  .pfh-finish-preview-wrap{padding:14px}
  .pfh-preview-topline{font-size:13.5px;letter-spacing:.1em;margin-bottom:14px}
  .pfh-finish-preview{height:255px}
  .pfh-preview-caption{gap:11px;padding-top:17px}
  .pfh-preview-overline{font-size:13.5px;letter-spacing:.1em}
  .pfh-preview-caption h3{font-size:22px;line-height:1.2}
  .pfh-preview-caption p{font-size:16.2px;line-height:1.6}
  .pfh-preview-tone{width:30px;height:30px}
  .pfh-preview-best span{font-size:13.5px;line-height:1.4}
  .pfh-preview-best strong{font-size:16.2px;line-height:1.5}
  .pfh-preview-disclaimer{font-size:14.8px;line-height:1.65}
  .pfh-comparison-section{padding:58px 17px!important}
  .pfh-comparison-table-wrap{overflow:visible;border:0;background:transparent}
  .pfh-comparison-table{display:block;min-width:0;width:100%;border-collapse:separate}
  .pfh-comparison-table thead{display:none}
  .pfh-comparison-table tbody{display:grid;gap:10px}
  .pfh-comparison-table tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:10px 12px;border:1px solid #E6DDCA;background:#fff}
  .pfh-comparison-table tbody tr.is-current{border-color:#C6A15B;background:#FBF7EE}
  .pfh-comparison-table td{display:block;padding:9px 4px;border:0;font-size:15px;line-height:1.6;color:#555}
  .pfh-comparison-table td:first-child{grid-column:1/-1;border-bottom:1px solid #e8e1d4;padding:4px 4px 10px;margin-bottom:2px}
  .pfh-table-name{font-size:17.2px;line-height:1.4;gap:4px}
  .pfh-table-name span{font-size:14.8px;line-height:1.4}
  .pfh-comparison-table td:nth-child(2)::before,.pfh-comparison-table td:nth-child(3)::before,.pfh-comparison-table td:nth-child(4)::before{display:block;font-size:13.5px;line-height:1.4;letter-spacing:.07em;font-weight:800;color:#8B6728;margin-bottom:5px}
  .pfh-comparison-table td:nth-child(2)::before{content:"LOOK & FINISH"}
  .pfh-comparison-table td:nth-child(3)::before{content:"BEST FOR"}
  .pfh-comparison-table td:nth-child(4)::before{content:"STARTING PRICE"}
  .pfh-price-cell{font-size:16.1px!important;line-height:1.5;font-weight:800;color:#8B6728!important}
  .pfh-comparison-table td:nth-child(5){grid-column:1/-1;justify-self:stretch;padding:8px 4px 2px;border-top:1px solid #eee8dc;margin-top:3px}
  .pfh-table-link{font-size:15px;line-height:1.4;min-height:34px;justify-content:flex-end}
  .pfh-comparison-highlight{align-items:stretch;gap:14px;padding:16px}
  .pfh-comparison-brow{font-size:13.5px;line-height:1.4}
  .pfh-comparison-highlight h3{font-size:24px;line-height:1.2}
  .pfh-comparison-highlight p{font-size:15px;line-height:1.65}
  .pfh-comparison-highlight .pfh-btn{font-size:16.2px;min-height:46px;width:100%}
  .pfh-price-note{font-size:14.8px;line-height:1.65}
  .pfh-same-photo-section{padding:45px 17px}
  .pfh-same-photo-head h2{font-size:39px;line-height:1.08}
  .pfh-same-photo-head>p:last-child{font-size:16.1px;line-height:1.7}
  .pfh-same-photo-card{padding:9px}
  .pfh-same-photo-frame{height:145px}
  .pfh-same-photo-card-caption strong{font-size:17.2px;line-height:1.35}
  .pfh-same-photo-card-caption small{font-size:14.8px;line-height:1.5}
  .pfh-same-photo-check{width:30px;height:30px;font-size:16.1px}
  .pfh-same-photo-cta{font-size:15px;line-height:1.5}
  .pfh-material-section{padding:55px 17px}
  .pfh-material-heading h2{font-size:39px}
  .pfh-material-heading>p{font-size:16.1px;line-height:1.7}
  .pfh-material-grid{gap:10px}
  .pfh-material-card{padding:13px 11px}
  .pfh-material-index{font-size:13.5px;line-height:1.4;padding-bottom:11px}
  .pfh-material-card h3{font-size:20.7px;line-height:1.2;margin:12px 0}
  .pfh-material-card>div{padding:9px 0}
  .pfh-material-card>div small{font-size:13.5px;line-height:1.4}
  .pfh-material-card>div p{font-size:16.2px;line-height:1.55}
  .pfh-material-card .pfh-material-best{padding:9px}
  .pfh-material-link{font-size:14.8px;line-height:1.45;padding-top:12px}
  .pfh-material-note{font-size:14.8px;line-height:1.65}
  .pfh-size-section{padding:29px 17px 58px}
  .pfh-size-controls{padding:14px;gap:15px}
  .pfh-size-control-label{font-size:14.8px;line-height:1.4;margin-bottom:9px}
  .pfh-size-toggle button{font-size:16.2px;min-height:42px;padding:10px}
  .pfh-size-grid{gap:8px}
  .pfh-size-tile{min-height:132px;gap:8px;padding:11px 5px}
  .pfh-size-outline{height:55px}
  .pfh-size-tile strong{font-size:15px;line-height:1.4}
  .pfh-size-tile small{font-size:14.8px;line-height:1.45}
  .pfh-size-custom{min-height:132px;padding:11px;gap:8px}
  .pfh-size-custom strong{font-size:16.2px;line-height:1.4}
  .pfh-size-custom small{font-size:14.8px;line-height:1.5}
  .pfh-size-cta{font-size:14.8px;line-height:1.4}
  .pfh-size-selected-summary{padding:16px}
  .pfh-size-selected-summary span{font-size:13.5px;line-height:1.4}
  .pfh-size-selected-summary strong{font-size:21px;line-height:1.3}
  .pfh-size-selected-summary small{font-size:16.2px;line-height:1.6}
  .pfh-size-selected-summary .pfh-btn{font-size:15px;min-height:48px}
  .pfh-size-footer{gap:12px;font-size:16.2px;line-height:1.5}
  .pfh-size-footer>span{font-size:16.2px}
  .pfh-size-footer a{font-size:16.2px;line-height:1.5;min-height:32px}
  .pfh-finder-section{padding:45px 17px}
  .pfh-finder-intro h2{font-size:41px;line-height:1.08}
  .pfh-finder-intro>p:not(.pfh-eyebrow){font-size:16.1px;line-height:1.7}
  .pfh-finder-note{font-size:16.2px;line-height:1.5}
  .pfh-finder-panel{padding:13px}
  .pfh-purpose-options button{min-height:86px;padding:12px;gap:13px}
  .pfh-purpose-options button>span{font-size:25px}
  .pfh-purpose-options button strong{font-size:16.2px;line-height:1.4}
  .pfh-result-label{font-size:13.5px;line-height:1.4}
  .pfh-finder-result h3{font-size:23px;line-height:1.25}
  .pfh-finder-result p{font-size:15px;line-height:1.65}
  .pfh-finder-result .pfh-btn{font-size:16.2px;min-height:47px}
  .pfh-room,.pfh-room-large{height:232px}
  .pfh-room-large{height:266px}
  .pfh-room-copy{left:13px;right:11px;bottom:14px}
  .pfh-room-copy small{font-size:13.5px;line-height:1.4;letter-spacing:.08em;margin-bottom:6px}
  .pfh-room-copy strong{font-size:22px;line-height:1.2;margin-bottom:7px}
  .pfh-room-copy>span{font-size:14.8px;line-height:1.45;gap:5px}
  .pfh-bundle-banner{padding:42px 17px;gap:30px}
  .pfh-bundle-image{height:270px}
  .pfh-bundle-sticker{padding:16px;min-width:132px}
  .pfh-bundle-sticker>span{font-size:13.5px;line-height:1.4}
  .pfh-bundle-sticker strong{font-size:23px;line-height:1.1}
  .pfh-bundle-copy h2{font-size:42px;line-height:1.08}
  .pfh-bundle-copy>p:not(.pfh-eyebrow){font-size:16.1px;line-height:1.75}
  .pfh-bundle-copy li{font-size:15px;line-height:1.5}
  .pfh-bundle-copy li span{width:21px;height:21px;font-size:16.2px}
  .pfh-bundle-actions{gap:14px}
  .pfh-bundle-actions .pfh-btn{font-size:16.2px;min-height:48px}
  .pfh-bundle-actions .pfh-text-link{font-size:16.2px;line-height:1.4}
  .pfh-gallery-sets-section{padding:44px 17px}
  .pfh-gallery-sets-section .pfh-section-head{margin-bottom:23px}
  .pfh-gallery-set-grid{gap:10px}
  .pfh-gallery-set-card{padding:8px}
  .pfh-gallery-set-image{height:145px}
  .pfh-set-count{font-size:13.5px;line-height:1.4;padding:6px 7px}
  .pfh-gallery-set-meta h3{font-size:19.5px;line-height:1.25}
  .pfh-gallery-set-meta p{font-size:14.8px;line-height:1.45}
  .pfh-gallery-set-meta>strong{font-size:16.2px}
  .pfh-gallery-set-link{font-size:14.8px;line-height:1.4;min-height:32px}
  .pfh-gallery-sets-footer{font-size:16.2px;line-height:1.5}
  .pfh-gallery-sets-footer a{font-size:16.2px}
  .pfh-occasion-list>a{gap:10px;padding:17px 3px}
  .pfh-occasion-list strong{font-size:15px;line-height:1.45}
  .pfh-occasion-list small{font-size:16.2px;line-height:1.5}
  .pfh-occasion-list>a>span:first-child{font-size:14.8px}
  .pfh-process-section{padding:45px 17px}
  .pfh-process-heading h2{font-size:42px;line-height:1.08}
  .pfh-process-heading>p:last-child{font-size:16.1px;line-height:1.7}
  .pfh-process-grid{gap:25px 16px}
  .pfh-process-grid>div>span{width:37px;height:37px;font-size:21px}
  .pfh-process-grid>div>b{font-size:13.5px}
  .pfh-process-grid h3{font-size:23px;line-height:1.25}
  .pfh-process-grid p{font-size:16.2px;line-height:1.65}
  .pfh-process-foot{gap:13px}
  .pfh-process-foot>span{font-size:14.8px;line-height:1.5}
  .pfh-process-foot>a{font-size:16.2px;line-height:1.5;min-height:38px}
  .pfh-why-grid h3{font-size:21.8px;line-height:1.25}
  .pfh-why-grid span{font-size:13.5px}
  .pfh-why-grid p{font-size:16.2px;line-height:1.65}
  .pfh-craft-section{padding:45px 17px}
  .pfh-craft-heading h2{font-size:42px;line-height:1.08}
  .pfh-craft-heading>p:last-child{font-size:16.1px;line-height:1.7}
  .pfh-craft-cards{gap:12px}
  .pfh-craft-cards article{grid-template-columns:112px 1fr;column-gap:13px;padding:10px}
  .pfh-craft-image{height:112px}
  .pfh-craft-cards article>span{font-size:13.5px;line-height:1.4;letter-spacing:.07em}
  .pfh-craft-cards h3{font-size:21.8px;line-height:1.2;margin:5px 0}
  .pfh-craft-cards p{font-size:16.2px;line-height:1.6}
  .pfh-craft-facts{gap:15px 12px}
  .pfh-craft-facts strong{font-size:16.2px;line-height:1.4}
  .pfh-craft-facts small{font-size:14.8px;line-height:1.5}
  .pfh-reviews-section{padding:45px 17px;gap:23px}
  .pfh-review-summary h2{font-size:42px;line-height:1.08}
  .pfh-review-summary>p:not(.pfh-eyebrow){font-size:16.1px;line-height:1.7}
  .pfh-review-summary .pfh-btn{font-size:16.2px;min-height:48px}
  .pfh-review-card{padding:21px}
  .pfh-review-stars{font-size:18.4px;letter-spacing:2px}
  .pfh-review-score{font-size:61px}
  .pfh-review-card>strong{font-size:15px}
  .pfh-review-card>p{font-size:16.2px;line-height:1.5}
  .pfh-review-card>a{font-size:16.2px;line-height:1.5;min-height:35px}
  .pfh-professional-section{padding:45px 17px}
  .pfh-professional-copy h2{font-size:42px;line-height:1.08}
  .pfh-professional-copy>p:not(.pfh-eyebrow){font-size:16.1px;line-height:1.7}
  .pfh-professional-copy .pfh-btn{font-size:16.2px;min-height:48px}
  .pfh-professional-tiles a{grid-template-columns:27px 1fr auto;gap:9px;padding:14px 3px}
  .pfh-professional-tiles a>span{font-size:13.5px}
  .pfh-professional-tiles strong{font-size:16.2px;line-height:1.45}
  .pfh-professional-tiles small{font-size:14.8px;line-height:1.5}
  .pfh-guides-section{padding:45px 17px}
  .pfh-guide-grid{gap:11px}
  .pfh-guide-grid>a{grid-template-columns:112px 1fr;column-gap:13px;padding:9px}
  .pfh-guide-tag{font-size:13.5px;line-height:1.3;padding:5px 6px}
  .pfh-guide-image{height:116px}
  .pfh-guide-grid h3{font-size:20.7px;line-height:1.25;margin-top:7px}
  .pfh-guide-grid p{font-size:16.2px;line-height:1.55}
  .pfh-guide-grid>a>span:last-child{font-size:14.8px;line-height:1.4}
  .pfh-faq-section{padding:53px 17px}
  .pfh-faq-intro h2{font-size:42px;line-height:1.08}
  .pfh-faq-intro>p:not(.pfh-eyebrow){font-size:16.1px;line-height:1.7}
  .pfh-faq-intro>a{font-size:16.2px;min-height:36px}
  .pfh-faq-list summary{font-size:16.1px;line-height:1.5;padding:17px 0;gap:12px}
  .pfh-faq-list summary span{width:30px;height:30px;font-size:21.8px}
  .pfh-faq-list details p{font-size:15px;line-height:1.7;padding:0 6px 18px 0}
  .pfh-final-cta{padding:43px 17px}
  .pfh-final-cta h2{font-size:43px;line-height:1.08}
  .pfh-final-cta>div:last-child>p{font-size:16.1px;line-height:1.75}
  .pfh-final-cta .pfh-btn{font-size:15px;min-height:49px}
}
@media(max-width:390px){
  .pfh-page{font-size:17.2px}
  .pfh-hero h1{font-size:44px}
  .pfh-hero-card{min-width:112px;padding:9px 10px}
  .pfh-hero-card strong{font-size:17.2px}
  .pfh-hero-card>span:last-child{font-size:14.8px}
  .pfh-product-grid{gap:23px 9px}
  .pfh-product-photo{height:150px}
  .pfh-product-info h3{font-size:15px}
  .pfh-product-info p{font-size:15.5px}
  .pfh-product-info>strong{font-size:14.8px}
  .pfh-finish-option{font-size:14.8px;gap:7px;padding:9px}
  .pfh-finish-swatch{width:23px;height:23px}
  .pfh-mat-options button{font-size:14.8px;padding:8px}
  .pfh-size-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pfh-size-tile,.pfh-size-custom{min-height:125px}
  .pfh-room-grid{gap:8px}
  .pfh-room,.pfh-room-large{height:218px}
  .pfh-room-large{height:250px}
  .pfh-room-copy strong{font-size:23px}
  .pfh-room-copy>span{font-size:13.5px}
  .pfh-craft-cards article{grid-template-columns:94px 1fr;column-gap:10px}
  .pfh-craft-image{height:105px}
  .pfh-craft-cards h3{font-size:19.5px}
  .pfh-craft-cards p{font-size:14.8px}
  .pfh-gallery-set-image{height:125px}
  .pfh-gallery-set-meta h3{font-size:17.2px}
  .pfh-quickstart-grid>a{min-height:174px}
  .pfh-quickstart-grid strong{font-size:16.2px}
  .pfh-quickstart-grid small{font-size:14.8px}
  .pfh-colour-tile{gap:6px;padding:8px 6px}
  .pfh-colour-chip{width:24px;height:24px}
  .pfh-colour-tile strong{font-size:14.8px}
  .pfh-colour-tile small{font-size:13.5px}
}

/* ==========================================================================
   PrintPosters.in — Photo Frames hub v2
   Integration overrides for the MagicPath "Photo Frames Hub Premium
   Responsive Redesign" design.

   Everything above this banner is the MagicPath stylesheet, ported verbatim
   so the reference design is reproduced exactly. Everything below adapts it
   to live INSIDE the existing printposters.in shell (layouts.master), and
   applies the mobile typography floors required for the live site.

   All selectors stay scoped under .pfh-page. Nothing here touches the global
   header, the global footer, or any other page.
   ========================================================================== */

/* --- 1. Root integration ------------------------------------------------- */
/* The design was authored as a standalone canvas with overflow:hidden on the
   root. Inside a real page that would clip sticky/:focus outlines and fight
   the global layout, so clip only the horizontal axis. */
.pfh-page {
  overflow: visible;
  overflow-x: clip;
  width: 100%;
  max-width: 100%;
}

/* Belt-and-braces: nothing in this page may push the document sideways. */
.pfh-page * {
  min-width: 0;
}

/* The MagicPath canvas shipped its own header, nav and footer. The live site
   supplies those from layouts.master and they must never be duplicated, so the
   markup omits them. These rules make that structural, not just incidental. */
.pfh-page .pfh-header,
.pfh-page .pfh-header-full,
.pfh-page .pfh-main-nav,
.pfh-page .pfh-footer,
.pfh-page .pfh-footer-full,
.pfh-page .pfh-mobile-bar {
  display: none !important;
}

/* --- 2. Mobile typography ------------------------------------------------- */
/* Absolute sizes come from the rescaled core above; this is layout only. */
@media (max-width: 720px) {
  .pfh-page h1, .pfh-page h2, .pfh-page h3 { overflow-wrap: anywhere; hyphens: none; }
  .pfh-page h1 { font-size: clamp(2.1rem, 10.5vw, 3rem); line-height: 1.06; }
  .pfh-page h2 { font-size: clamp(1.75rem, 8vw, 2.4rem); line-height: 1.08; }
  .pfh-page .pfh-btn,
  .pfh-page .pfh-mat-options button,
  .pfh-page .pfh-profile-options button,
  .pfh-page .pfh-size-toggle button,
  .pfh-page .pfh-finish-option,
  .pfh-page .pfh-colour-tile,
  .pfh-page .pfh-size-tile,
  .pfh-page .pfh-purpose-options button,
  .pfh-page .pfh-table-name { min-height: 44px; }
}

/* --- 3. Mobile frame comparison ------------------------------------------ */
/* Brief: use a mobile-friendly comparison layout rather than squeezing the
   wide desktop table into the viewport. Below 720px the table becomes stacked
   cards, with each cell labelled from its data-label. */
@media (max-width: 720px) {
  .pfh-page .pfh-comparison-table-wrap {
    overflow: visible;
  }

  .pfh-page .pfh-comparison-table,
  .pfh-page .pfh-comparison-table tbody,
  .pfh-page .pfh-comparison-table tr,
  .pfh-page .pfh-comparison-table td {
    display: block;
    width: 100%;
  }

  .pfh-page .pfh-comparison-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }

  .pfh-page .pfh-comparison-table tr {
    border: 1px solid var(--pp-border);
    border-radius: 14px;
    padding: 0.35rem 0.9rem 0.8rem;
    margin-bottom: 0.85rem;
    background: #fff;
  }

  .pfh-page .pfh-comparison-table tr.is-current {
    border-color: var(--pp-green);
    box-shadow: 0 0 0 1px var(--pp-green) inset;
  }

  .pfh-page .pfh-comparison-table td {
    border: 0;
    padding: 0.5rem 0;
    font-size: 15px;
  }

  .pfh-page .pfh-comparison-table td + td {
    border-top: 1px solid var(--pp-soft);
  }

  .pfh-page .pfh-comparison-table td[data-label]::before {
    content: attr(data-label);
    display: block;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--pp-muted);
    margin-bottom: 0.25rem;
  }
}

/* --- 4. Clearance for the global sticky bottom nav ------------------------ */
/* layouts.master renders .pp-bottom-nav (5-item sticky bar incl. Upload) on
   phones. The canvas design's own .pfh-mobile-bar is therefore omitted, and
   the page is padded so the final CTA is never hidden behind that bar. */
@media (max-width: 991.98px) {
  .pfh-page {
    padding-bottom: 72px;
  }
}

/* --- 5. Focus visibility -------------------------------------------------- */
/* The design defines :focus-visible already; make sure the fallback is never
   an invisible outline for keyboard users on older engines. */
.pfh-page :focus-visible {
  outline: 3px solid var(--pp-green);
  outline-offset: 3px;
}

/* --- 6. Image safety ------------------------------------------------------ */
/* Product/room photography is remote and may 404; keep the box from collapsing
   so the grid geometry survives a missing asset. */
.pfh-page img {
  background: var(--pp-warm);
}

/* --- 7. Reduced motion ---------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  .pfh-page * {
    animation-duration: 0.001ms !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}

/* --- 8. Global <button> reset (defensive) -------------------------------- */
/* The site ships a global `button { width:100px; height:40px; color:#fff }`
   rule in style.css, which loads async. This page has ~40 real buttons
   (finishes, mats, profiles, sizes, colours, finder, comparison), and every
   one of them would be crushed to a 100×40 white-text box by that rule.
   `.pfh-page button` is more specific, so this wins on specificity rather
   than on load order or !important. */
.pfh-page button {
  width: auto;
  height: auto;
  min-height: 0;
  color: inherit;
  font: inherit;
  line-height: inherit;
  text-align: inherit;
  white-space: normal;
  overflow: visible;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}

/* Re-assert the design's own button geometry after the reset above, so the
   reset can never flatten a control the MagicPath stylesheet sized. */
.pfh-page .pfh-finish-option,
.pfh-page .pfh-colour-tile,
.pfh-page .pfh-size-tile,
.pfh-page .pfh-same-photo-card,
.pfh-page .pfh-purpose-options button {
  width: 100%;
}

/* Utility used by the comparison table's screen-reader-only labels. */
.pfh-page .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

/* --- 9. Breadcrumb slot --------------------------------------------------- */
/* The site's own breadcrumb partial renders inside .pfh-breadcrumb-slot; give
   it the design's gutter without restyling the partial itself. */
.pfh-page .pfh-breadcrumb-slot {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0.6rem 2.2rem 0;
  font-size: 13.5px;
}

@media (max-width: 720px) {
  .pfh-page .pfh-breadcrumb-slot {
    padding: 0.5rem 1.15rem 0;
  }
}

/* --- 10. Selected-state details ------------------------------------------ */
/* The source component rendered the ✓ only for the active finish. The Blade
   markup always emits it (simpler, and it keeps the button width stable), so
   it is revealed by state here instead. */
.pfh-page .pfh-finish-option:not(.is-selected) .pfh-option-check {
  visibility: hidden;
}

/* --- 11. Hero caption / card collision ----------------------------------- */
/* In the source design the hero's "KEEP THE MOMENT." caption runs underneath
   the floating "02 / CONTEMPORARY" price card at phone widths, clipping the
   second line. Constrain the caption so it wraps clear of the card instead.
   This is a deliberate deviation from the reference: the brief requires that
   badges and overlays never overlap. */
@media (max-width: 720px) {
  .pfh-page .pfh-image-word {
    max-width: calc(100% - 150px);
  }
}


/* --- 13. Type scale floor ------------------------------------------------- */
/* The MagicPath stylesheet was authored at canvas scale: body copy computed to
   8-10px and table cells to 10px in a real browser. Every font-size in the core
   above has been rescaled (small text lifted most, display headings untouched)
   so the design's hierarchy is preserved at a readable absolute size.
   This is a backstop for anything the rescale could not reach. */
.pfh-page small,
.pfh-page .pfh-eyebrow,
.pfh-page figcaption {
  font-size: 13.5px;
}

.pfh-page p,
.pfh-page li,
.pfh-page td {
  font-size: 16px;
  line-height: 1.6;
}

@media (max-width: 720px) {
  .pfh-page p,
  .pfh-page li,
  .pfh-page td {
    font-size: 15.5px;
  }
}

/* --- 14. Fine print ------------------------------------------------------- */
/* Disclaimers and price caveats are deliberately quieter than body copy. The
   paragraph floor above would otherwise promote them to full body size and
   make them compete with the content they qualify. */
.pfh-page .pfh-preview-disclaimer,
.pfh-page .pfh-price-note,
.pfh-page .pfh-material-note {
  font-size: 13.5px;
  line-height: 1.55;
  color: var(--pp-muted);
  margin-top: 0.85rem;
}

/* --- 15. H1 eyebrow ------------------------------------------------------- */
/* The hero eyebrow now sits inside the <h1> so the page's single H1 carries
   the target keyword. It must not inherit the heading's serif face, tight
   tracking or display line-height — this restores its own typography, so the
   rendered result is identical to the standalone <p> it replaced. */
.pfh-page .pfh-h1-eyebrow {
  font-family: Inter, Arial, sans-serif;
  line-height: 1.45;
  letter-spacing: 0.16em;
  font-weight: 700;
}

.pfh-page .pfh-h1-display {
  display: block;
}

/* --- 16. FAQ overflow toggle ---------------------------------------------- */
/* config('photo_frames_hub.faqs') carries 22 entries against the reference
   design's 7. All 22 stay in the DOM so the visible answers and the FAQPage
   schema cannot diverge; the surplus is collapsed behind a toggle. */
.pfh-page .pfh-faq-extra {
  display: none;
}

.pfh-page .pfh-faq-list.is-expanded .pfh-faq-extra {
  display: block;
}

.pfh-page .pfh-faq-more {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1.1rem;
  padding: 0.75rem 1.3rem;
  min-height: 44px;
  background: transparent;
  border: 1px solid var(--pp-border);
  border-radius: 999px;
  font-size: 14.5px;
  font-weight: 600;
  color: var(--pp-black);
  transition: border-color .18s ease, background-color .18s ease;
}

.pfh-page .pfh-faq-more:hover {
  border-color: var(--pp-green);
  background: rgba(198, 161, 91, 0.08);
}

.pfh-page .pfh-faq-more::after {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.6px solid currentColor;
  border-bottom: 1.6px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transition: transform .18s ease;
}

.pfh-page .pfh-faq-more[aria-expanded="true"]::after {
  transform: rotate(225deg) translateY(-2px);
}
