/* Fred / Momentum 1.4.3 */
.fred-brand{--fred-mint:#43eea1;color:#f1f7f4;background:#091513;font-family:inherit;line-height:1.65}
.fred-brand h1,.fred-brand h2,.fred-brand h3{color:#f1f7f4;letter-spacing:-.045em;line-height:1.1;margin:0 0 22px;font-weight:750}
.fred-brand h1{font-size:clamp(36px,4.2vw,62px)}.fred-brand h2{font-size:clamp(29px,3vw,44px)}.fred-brand h3{font-size:24px}.fred-brand h1 span,.fred-brand h2 span{color:var(--fred-mint)}
.fred-brand p{font-size:17px;color:#c1d4cb;max-width:68ch;margin:0 0 22px}.fred-brand .ph-eyebrow{font:600 11px/1.6 monospace;letter-spacing:.18em;color:var(--fred-mint);margin-bottom:20px}
.fred-hero{display:grid!important;grid-template-columns:1.35fr 1fr;align-items:center;gap:48px;padding-top:42px;padding-bottom:42px}.fred-hero-copy{min-width:0}.fred-brand .fred-lead{font-size:clamp(19px,1.6vw,23px);color:#f1f7f4;line-height:1.5}.fred-brand .fred-small{font-size:13px;margin-top:14px;color:#a8c3b5}
.fred-portrait{margin:0;border:1px solid #32664f;border-radius:20px;overflow:hidden;background:#061510;box-shadow:0 18px 70px #0005}.fred-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}.fred-portrait figcaption{padding:13px 18px;font:11px/1.5 monospace;letter-spacing:.12em;color:#91ebbc}.fred-status{display:inline-block;width:7px;height:7px;border-radius:100%;background:#43eea1;margin-right:8px}
.fred-strip{border-top:1px solid #315044;border-bottom:1px solid #315044;padding:18px 0;font:11px/1.8 monospace;letter-spacing:.08em;color:#bce8cf}.fred-strip .ph-shell{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.fred-strip span{color:#43eea1}
.fred-section{padding-top:64px;padding-bottom:64px}.fred-split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.fred-steps article{border-top:1px solid #315044;padding:22px 0}.fred-brand b{font:12px/1.5 monospace;letter-spacing:.1em;color:#43eea1}.fred-steps h3{margin-top:12px}.fred-agency{background:#10251c;border-block:1px solid #315044}.fred-brand .fred-punch{color:#43eea1;font-size:23px;font-weight:700}
.fred-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.fred-cards article{padding:28px;background:#10211b;border:1px solid #315044;border-radius:10px}.fred-cards h3,.fred-cards h2{margin-top:20px;font-size:27px}.fred-brand a:not(.ph-button){color:#64efae;text-decoration:none}.fred-brand a:hover{text-decoration:underline}.fred-brand .ph-button{display:inline-flex;white-space:normal;text-align:left;background:#43eea1;color:#07160f!important;border:1px solid #43eea1;padding:15px 22px;border-radius:6px;font-weight:750;font-size:15px;line-height:1.4}.fred-brand a:focus-visible,.fred-brand button:focus-visible{outline:3px solid white;outline-offset:4px}
.fred-start{border-top:1px solid #315044}.fred-brand .ph-review-card{padding:28px;background:#10211b;border:1px solid #315044;border-radius:12px;min-width:0}.fred-brand input,.fred-brand textarea,.fred-brand select{max-width:100%;box-sizing:border-box}.fred-brand .ph-home-review-form textarea{width:100%;background:#091513;color:#f1f7f4;border:1px solid #517262;border-radius:5px;padding:12px}.fred-byline{font-size:12px;letter-spacing:0;color:#b9d2c4;white-space:nowrap}.fred-brand [id]{scroll-margin-top:130px}
@media(min-width:1100px){.fred-hero .fred-portrait{max-width:440px;justify-self:end}.fred-hero h1{font-size:clamp(40px,3.9vw,58px)}}
@media(max-width:800px){.fred-hero,.fred-split{grid-template-columns:1fr;gap:30px}.fred-hero{padding-top:28px}.fred-hero .fred-portrait{max-width:340px;justify-self:center}.fred-section{padding-top:40px;padding-bottom:40px}.fred-cards{grid-template-columns:1fr}.fred-strip span{display:none}.fred-brand .ph-review-card{padding:20px}.fred-byline{display:none}}
@media(prefers-reduced-motion:reduce){.fred-brand *{scroll-behavior:auto!important;transition:none!important}}
.fred-brand [hidden]{display:none!important}
@media(max-width:800px){.fred-hero .fred-portrait{order:-1;width:145px;justify-self:start;border-radius:12px}.fred-hero .fred-portrait figcaption{display:none}.fred-hero{gap:20px}.fred-hero h1{font-size:36px}.fred-hero .fred-lead{font-size:19px}}
/* 1.4.3: compact cards across the storefront. */
.fred-compact{padding:22px 0 32px}.fred-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fred-panel,.fred-mini{border:1px solid #315044;border-radius:14px;background:#10211b;padding:24px;min-width:0}.fred-main-card{grid-column:span 2;padding:28px 32px}.fred-brand .fred-main-card h1{font-size:clamp(31px,3.2vw,46px);line-height:1.09;margin-bottom:16px}.fred-brand .fred-main-card p{margin-bottom:14px;font-size:16px}.fred-brand .fred-main-card .fred-lead{font-size:20px;max-width:46ch}.fred-brand .fred-main-card .ph-eyebrow{font-size:11px;margin-bottom:14px}.fred-main-card .fred-small{margin-bottom:0!important}.fred-photo-card{padding:0;margin:0;overflow:hidden;display:flex;flex-direction:column}.fred-photo-card img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;aspect-ratio:1}.fred-photo-card figcaption{padding:11px 14px;font:10px/1.5 monospace;color:#91ebbc;letter-spacing:.07em}.fred-mini{padding:20px 24px}.fred-brand .fred-mini h2{font-size:22px;margin:10px 0}.fred-brand .fred-mini p{font-size:15px;margin:0;line-height:1.5}.fred-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.fred-challenge{grid-row:span 2;background:#153023}.fred-brand .fred-challenge h2{font-size:32px}.fred-brand .fred-challenge p{font-size:16px}.fred-brand .fred-challenge .fred-punch{font-size:20px}.fred-brand .fred-service h2{font-size:24px;margin:12px 0}.fred-brand .fred-service p{font-size:15px;margin-bottom:14px;line-height:1.5}.fred-service a,.fred-challenge a{font-weight:650;font-size:15px}.fred-terms{display:flex;align-items:center;gap:28px;margin-top:16px}.fred-terms>div{flex:1}.fred-brand .fred-terms h2{font-size:24px;margin-bottom:10px}.fred-brand .fred-terms p{font-size:14px;margin:0;max-width:90ch}.fred-terms .ph-button{flex-shrink:0;max-width:260px}
/* Brand service and about pages: one hero card and a compact three-card row. */
.page-content--cms .fred-brand{padding:12px 0 24px}.page-content--cms .fred-brand>.fred-split:first-child{padding:24px;grid-template-columns:minmax(0,1.8fr) minmax(200px,1fr);gap:28px;background:#10211b;border:1px solid #315044;border-radius:14px;align-items:center}.page-content--cms .fred-brand h1{font-size:clamp(30px,3.1vw,44px)}.page-content--cms .fred-brand .fred-portrait{max-width:300px;justify-self:end}.page-content--cms .fred-brand .fred-lead{font-size:18px}.page-content--cms .fred-brand .fred-cards{padding:16px 0;gap:16px}.page-content--cms .fred-brand .fred-cards article{padding:22px;border-radius:14px}.page-content--cms .fred-brand .fred-cards h2{font-size:25px;margin-top:0}.page-content--cms .fred-brand .fred-cards p{font-size:16px;margin-bottom:0}.fred-page-cta{padding:24px;margin:0;display:flex;gap:28px;align-items:center}.fred-page-cta>div{flex:1}.fred-brand .fred-page-cta h2{font-size:25px;margin-bottom:12px}.fred-brand .fred-page-cta p{font-size:15px;margin-bottom:0}
/* Contact: clear fields, one screen of decisions, native submission. */
.fred-contact-layout{gap:24px!important;padding-block:20px!important;align-items:start}.fred-contact-layout .ph-contact-intro,.fred-contact-layout .ph-contact-panel{padding:26px!important;background:#10211b;border:1px solid #315044;border-radius:14px}.fred-contact-layout .ph-contact-intro h1{font-size:clamp(30px,3vw,42px);line-height:1.12}.fred-simple-contact h2{font-size:28px!important;line-height:1.15}.fred-simple-contact .fred-form-intro{font-size:15px}.fred-simple-contact small{font-size:12px;color:#b9d2c4}.fred-simple-contact .mb-3{margin-bottom:14px!important}.fred-simple-contact input,.fred-simple-contact textarea,.fred-simple-contact select{width:100%;box-sizing:border-box}.fred-simple-contact label{display:block;margin-bottom:5px}.fred-simple-contact .ph-button{margin-top:8px}.fred-simple-contact [type=checkbox]{width:auto}
/* Catalog and product pages retain native controls and module hooks. */
.ph-console-theme .product-miniature{border:1px solid #315044;border-radius:12px;overflow:hidden;background:#10211b}.ph-console-theme .products__selection{padding:14px 18px;border:1px solid #315044;border-radius:12px;margin-bottom:18px}.ph-console-theme .product__info{padding:20px;border:1px solid #315044;border-radius:14px}.ph-console-theme .ph-product-assistance{padding:14px 18px;border:1px solid #315044;border-radius:10px}.ph-console-theme .ph-product-reassurance{border:1px solid #315044;border-radius:12px;padding:20px}.ph-console-theme .ph-footer{margin-top:24px}.ph-console-theme .ph-footer-top{padding-block:24px}
@media(max-width:1000px){.fred-main-card{padding:24px}.fred-brand .fred-main-card h1{font-size:35px}.fred-brand .fred-challenge h2{font-size:27px}.fred-panel{padding:20px}.fred-photo-card{padding:0}.fred-terms{align-items:start;flex-direction:column}}
@media(max-width:700px){.fred-top-grid{grid-template-columns:minmax(0,1fr) 100px;gap:12px}.fred-main-card{grid-column:1/-1;grid-row:1;padding:20px}.fred-brand .fred-main-card h1{font-size:30px;padding-right:0}.fred-photo-card{grid-column:2;grid-row:2;align-self:start}.fred-photo-card img{height:auto}.fred-photo-card figcaption{display:none}.fred-mini{grid-column:1/-1;padding:18px}.fred-mini:nth-of-type(2){grid-column:1;grid-row:2}.fred-brand .fred-mini h2{font-size:20px}.fred-work-grid{grid-template-columns:1fr;gap:12px;margin-top:12px}.fred-challenge{grid-row:auto}.fred-compact{padding-top:14px}.fred-brand .fred-main-card .fred-lead{font-size:18px}.fred-brand .fred-main-card p{font-size:15px}.fred-brand .fred-main-card .ph-button{padding:13px 16px;font-size:14px}.fred-terms{margin-top:12px}.page-content--cms .fred-brand>.fred-split:first-child{grid-template-columns:1fr;padding:20px}.page-content--cms .fred-brand .fred-portrait{width:130px;justify-self:start;order:-1}.page-content--cms .fred-brand .fred-cards{grid-template-columns:1fr}.fred-page-cta{flex-direction:column;align-items:start}.fred-contact-layout{grid-template-columns:1fr!important}.fred-contact-layout .ph-contact-intro,.fred-contact-layout .ph-contact-panel{padding:20px!important}}
.ph-console-theme .account-menu__link,.ph-console-theme .address{border:1px solid #315044;border-radius:12px;background:#10211b}.ph-console-theme .ph-account-intro{padding:18px 22px;margin-bottom:18px;border:1px solid #315044;border-radius:12px}.ph-console-theme .page-content--cms:not(:has(.fred-brand)){padding:24px;border:1px solid #315044;border-radius:14px}.ph-console-theme .checkout__summary-accordion-item{border:1px solid #315044;border-radius:12px;overflow:hidden}

.fred-contact-layout [hidden]{display:none!important}
.fred-contact-layout .ph-enquiry-review pre{white-space:pre-wrap;overflow-wrap:anywhere}
/* 1.4.3: one full-service destination. */
.fred-services-page{padding:12px 0 24px!important}.fred-services-intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;padding:28px}.fred-services-page .fred-services-intro h1{font-size:clamp(35px,4vw,54px);margin-bottom:16px}.fred-services-page .fred-services-intro p{font-size:16px;margin-bottom:16px}.fred-services-page .fred-services-intro .fred-lead{font-size:20px}.fred-services-intro aside{border-left:1px solid #315044;padding-left:28px;align-self:center}.fred-services-page .fred-services-intro h2{font-size:27px;margin:14px 0}.fred-service-nav{display:flex;flex-wrap:wrap;gap:8px;padding:18px 0;scroll-margin-top:130px}.fred-service-nav a{padding:8px 12px;border:1px solid #315044;background:#10211b;border-radius:6px;font-size:13px;line-height:1.4}.fred-service-nav a:hover,.fred-service-nav a:focus-visible{background:#173c2c;border-color:#43eea1}.fred-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fred-service-detail{display:flex;flex-direction:column;scroll-margin-top:130px;padding:23px}.fred-services-page .fred-service-detail h2{font-size:25px;margin-bottom:14px}.fred-services-page .fred-service-detail h3{font-size:18px;letter-spacing:-.02em;color:#64efae;margin-bottom:12px}.fred-services-page .fred-service-detail p{font-size:15px;line-height:1.6;margin-bottom:16px}.fred-services-page .fred-service-detail .ph-eyebrow{font-size:10px;margin-bottom:14px}.fred-services-page .fred-service-detail .fred-service-includes{font-size:12px;color:#a9c7b7;border-top:1px solid #315044;padding-top:12px;margin-top:auto}.fred-service-detail>a{font-weight:650;font-size:14px}.fred-service-detail:target{border-color:#43eea1;box-shadow:0 0 0 1px #43eea1}.fred-services-close{display:flex;gap:30px;align-items:center;margin-top:16px}.fred-services-close>div{flex:1}.fred-services-page .fred-services-close h2{font-size:26px}.fred-services-page .fred-services-close p{font-size:15px;margin-bottom:10px}.fred-services-close>.ph-button{max-width:290px}.fred-footer-services{padding-top:20px;margin-bottom:0}.fred-footer-services a{color:#43eea1}.fred-services-legacy{margin-block:20px}
@media(max-width:1000px){.fred-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fred-services-intro{gap:22px}.fred-services-close{align-items:start;flex-direction:column}}
@media(max-width:650px){.fred-services-intro{grid-template-columns:1fr;padding:22px}.fred-services-intro aside{border-left:0;border-top:1px solid #315044;padding:20px 0 0}.fred-service-grid{grid-template-columns:1fr;gap:12px}.fred-service-detail{padding:20px}.fred-service-nav{gap:6px}.fred-service-nav a{font-size:12px;padding:7px 10px}.fred-services-close{padding:22px}.fred-services-page .fred-services-intro h1{font-size:36px}}

/* 1.4.3: compact services directory; native anchor navigation. */
.fred-service-directory{padding:24px 0;scroll-margin-top:130px}.fred-services-page .fred-service-directory h2{font-size:clamp(23px,3vw,32px);margin:0 0 18px}.fred-service-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fred-service-menu a{position:relative;display:flex;flex-direction:column;gap:8px;padding:18px 38px 18px 18px;border:1px solid #315044;border-radius:10px;background:#10211b;color:#f5fff9;text-decoration:none}.fred-service-menu strong{font-size:17px;line-height:1.3}.fred-service-menu span{font-size:13px;line-height:1.5;color:#b6c8be}.fred-service-menu b{position:absolute;right:16px;top:16px;color:#64efae}.fred-service-menu a:hover,.fred-service-menu a:focus-visible{border-color:#64efae;background:#173c2c}.fred-service-menu a:focus-visible{outline:2px solid #64efae;outline-offset:3px}@media(max-width:991px){.fred-service-menu{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:575px){.fred-service-menu{grid-template-columns:1fr}.fred-service-directory{padding:18px 0}}
