/* Home composition: approved Design Space §12; shared catalogue/form components stay unchanged. */
body.home .wp-site-blocks > main.fdf-overlay-content {padding:0;margin:0;max-width:none}
.fdf-home {margin:0;max-width:none}
.fdf-home > * {margin-block:0}
.fdf-home-hero > .fdf-home-copy,.fdf-home-mosaic > *,.fdf-home-brands > *,.fdf-publications-grid > * {margin-block:0}
.fdf-home-container {width:calc(100% - 48px);max-width:1310px;margin-inline:auto}
.fdf-home-section {padding-block:64px}
.fdf-home-surface {background:var(--wp--preset--color--surface)}
.fdf-home-hero {position:relative;isolation:isolate;min-height:720px;padding-top:166px;overflow:hidden;background:var(--wp--preset--color--navy);color:white}
.fdf-home-hero > figure {position:absolute;inset:0;z-index:-2;margin:0;width:100%;height:100%}
.fdf-home-hero > figure img {width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.fdf-home-hero > .fdf-home-image-mobile {display:none}
.fdf-home-hero::before {content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgb(18 34 49 / .46),rgb(18 34 49 / .42) 44%,rgb(18 34 49 / .28) 60%,rgb(18 34 49 / .14) 74%,rgb(18 34 49 / .04) 86%,transparent),rgb(18 34 49 / .18)}
.fdf-home-copy {padding:18px 0 48px;text-align:center}
.fdf-home-copy .fdf-eyebrow {margin:0;color:var(--wp--preset--color--amber);font-size:14px;line-height:20px;letter-spacing:.06em;text-transform:uppercase}
.fdf-home-copy h1 {max-width:1080px;margin:12px auto 0;font-size:48px;line-height:54px;font-weight:600;letter-spacing:-.6px;color:white;text-wrap:balance}
.fdf-home-lead {display:flex;justify-content:center;flex-wrap:wrap;gap:0 8px;margin:14px auto 0;padding:0;max-width:1160px;list-style:none;color:rgb(255 255 255 / 90%);font-size:18px;line-height:28px}
.fdf-home-lead li + li::before {content:"•";margin-right:8px;color:var(--wp--preset--color--amber)}
.wp-block-columns.fdf-home-benefits {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px;max-width:780px;margin:30px auto 0}
.fdf-home-benefits > .wp-block-column {display:grid;justify-items:center;align-content:start;margin:0;text-align:center}
.fdf-home-benefits > .wp-block-column::before {content:"";width:34px;height:34px;margin-bottom:6px;background:var(--wp--preset--color--amber);mask:var(--fdf-benefit-icon) center/contain no-repeat}
.fdf-home-benefits p {margin:0;font-size:16px;line-height:24px;font-weight:600}
.fdf-home-benefits p + p {font-weight:400;font-size:14px;line-height:20px;color:rgb(255 255 255 / 78%)}
.fdf-home-actions.wp-block-buttons {display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:834px;margin:24px auto 0}
.fdf-home-actions .wp-block-button__link {width:100%;min-height:60px}
.fdf-home-actions .is-style-outline .wp-block-button__link {border:1px solid rgb(255 255 255 / 62%);color:white;background:transparent}
.fdf-home-actions .is-style-outline .wp-block-button__link:is(:hover,:focus-visible) {color:white;background:rgb(252 175 23 / 18%)}
.fdf-home-mobile-benefits {display:none}
.fdf-home-directions {position:relative;z-index:2;margin-top:-120px;padding-bottom:48px}
.fdf-directions.fdf-home-mosaic {grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border-radius:8px;box-shadow:0 0 0 10px var(--wp--preset--color--surface);background:var(--wp--preset--color--surface)}
.fdf-home-mosaic a:nth-child(n) {grid-column:span 1;border-radius:6px}
.fdf-home-mosaic a.is-wide {grid-column:span 2}
.fdf-home-mosaic a.is-accent::before {background:linear-gradient(120deg,rgb(34 51 69 / .96),rgb(29 71 153 / .8))}
.fdf-home-mosaic .is-accent .fdf-direction-cta {width:calc(100% - 40px);max-width:240px;padding:8px 16px;text-align:center;color:var(--wp--preset--color--navy);border-color:var(--wp--preset--color--amber);background:var(--wp--preset--color--amber)}
.fdf-home-mosaic .is-accent:is(:hover,:focus-visible) .fdf-direction-cta {background:var(--wp--preset--color--amber-hover)}
.fdf-home-brands {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.fdf-selection-brand {position:relative;display:grid;grid-template-rows:72px 1fr auto;gap:12px;min-width:0;padding:24px 24px 24px 32px;border:1px solid var(--wp--preset--color--border);border-radius:12px;background:white;color:var(--wp--preset--color--navy);text-decoration:none}
.fdf-selection-brand::before {content:"";position:absolute;left:16px;top:24px;bottom:24px;width:3px;border-radius:3px;background:var(--wp--preset--color--amber)}
.fdf-selection-brand-logo {display:flex;align-items:center}.fdf-selection-brand-logo img {display:block;width:auto;height:auto;max-width:100%;max-height:64px;object-fit:contain}
.fdf-selection-brand-caption {font-size:14px;line-height:20px;color:var(--wp--preset--color--muted)}
.fdf-selection-brand-link {font-size:14px;line-height:20px;color:var(--wp--preset--color--blue)}
.fdf-selection-brand:is(:hover,:focus-visible) .fdf-selection-brand-link {text-decoration:underline}
.fdf-home-reviews {margin:0}.fdf-home-reviews details p {margin-top:12px}
.fdf-publications-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.fdf-selection-publication {position:relative;display:grid;grid-template-rows:124px auto 84px;overflow:hidden;border:1px solid var(--wp--preset--color--border);border-radius:12px;background:var(--wp--preset--color--surface);color:var(--wp--preset--color--navy);text-decoration:none;transition:border-color 180ms,box-shadow 180ms}
.fdf-publication-title {display:flex;align-items:center;justify-content:center;padding:20px 24px;background:white;text-align:center}.fdf-publication-title h3 {font-size:20px;line-height:28px;font-weight:600;margin:0}
.fdf-publication-media {position:relative;display:block;overflow:hidden;aspect-ratio:3/2}.fdf-publication-media img {display:block;width:100%;height:100%;object-fit:cover;transition:transform 260ms ease}
.fdf-publication-summary {position:absolute;inset:0;display:flex;align-items:flex-end;padding:24px;background:linear-gradient(180deg,rgb(23 38 51 / .08) 18%,rgb(23 38 51 / .94));color:white;font-size:16px;line-height:24px;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity 180ms ease,transform 180ms ease}
.fdf-publication-action {position:relative;z-index:2;display:grid;place-items:center;grid-row:3;grid-column:1;justify-self:center;align-self:start;width:56px;height:56px;border:1px solid var(--wp--preset--color--border);border-radius:50%;background:rgb(255 255 255 / .96);color:var(--wp--preset--color--navy);box-shadow:0 10px 24px rgb(34 51 69 / .16);transform:translateY(-50%);transition:background 180ms,border-color 180ms}.fdf-publication-action svg {width:24px;height:24px}
.fdf-publication-date {grid-row:3;grid-column:1;display:flex;align-items:center;justify-content:center;padding:24px 20px 12px;font-size:14px;line-height:20px;color:var(--wp--preset--color--muted)}
.fdf-publications-footer {display:flex;justify-content:center;margin-top:28px}
.fdf-selection-publication:focus-visible .fdf-publication-summary {opacity:1;transform:none}
.fdf-selection-publication:focus-visible .fdf-publication-action {background:linear-gradient(rgb(252 175 23 / 12%),rgb(252 175 23 / 12%)),white;border-color:var(--wp--preset--color--amber)}
@media(hover:hover) and (pointer:fine) {
 .fdf-selection-publication:hover {border-color:rgb(34 51 69 / .24);box-shadow:0 14px 30px rgb(34 51 69 / .14)}
 .fdf-selection-publication:hover .fdf-publication-media img {transform:scale(1.02)}
 .fdf-selection-publication:hover .fdf-publication-summary {opacity:1;transform:none}
 .fdf-selection-publication:hover .fdf-publication-action {background:linear-gradient(rgb(252 175 23 / 12%),rgb(252 175 23 / 12%)),white;border-color:var(--wp--preset--color--amber)}
}
.fdf-home #popular,.fdf-home #consultation,.fdf-home #brands {scroll-margin-top:112px}
/* Keep the reference crop and gradient proportions on wide screens. */
@media(min-width:1441px) {.fdf-home-hero {min-height:calc(240px + 33.333333vw)}}
@media(min-width:2304px) {.fdf-home-hero {min-height:43.75vw}}
@media(max-width:1099px) {
 .fdf-home-hero {min-height:640px;padding-top:64px}.fdf-home-copy {padding-top:32px;padding-bottom:60px}.fdf-home-copy h1 {font-size:40px;line-height:48px}
 .fdf-home-directions {margin-top:0;padding-top:40px}.fdf-directions.fdf-home-mosaic {grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:230px}.fdf-home-mosaic a.is-wide {grid-column:span 1}
 .fdf-home-brands {grid-template-columns:repeat(2,minmax(0,1fr))}
 .fdf-publications-grid {display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding-bottom:16px}.fdf-publications-grid > a {flex:0 0 min(340px,100%);scroll-snap-align:start}
}
@media(max-width:760px) {
 .fdf-home-container {width:calc(100% - 32px)}.fdf-home-section {padding-block:40px}.fdf-home .fdf-editorial-heading h2 {font-size:24px;line-height:30px}
 .fdf-home-hero {min-height:0}.fdf-home-hero > .fdf-home-image-desktop {display:none}.fdf-home-hero > .fdf-home-image-mobile {display:block}.fdf-home-image-mobile img {object-position:center bottom!important;transform:translateY(-16px) scale(1.08)}
 .fdf-home-hero::before {background:linear-gradient(180deg,rgb(23 38 51 / .75),rgb(23 38 51 / .68) 44%,rgb(23 38 51 / .3) 80%,rgb(23 38 51 / .08))}
 .fdf-home-copy {padding:24px 0;text-align:left}.fdf-home-copy h1 {margin-top:20px;font-size:30px;line-height:36px;letter-spacing:0}
 .fdf-home-lead {display:grid;justify-content:start;gap:10px;font-size:16px;line-height:24px}.fdf-home-lead li {position:relative;padding-left:15px}.fdf-home-lead li::before,.fdf-home-lead li + li::before {content:"";position:absolute;left:0;top:10px;width:5px;height:5px;border-radius:50%;background:var(--wp--preset--color--amber)}
 .fdf-home-copy .fdf-home-benefits,.fdf-home-actions .is-style-outline {display:none}
 .fdf-home-actions.wp-block-buttons {display:block;margin-top:64px}.fdf-home-actions .wp-block-button__link {min-height:52px}.fdf-home-actions .wp-block-button {width:100%}
 .fdf-home-mobile-benefits {display:block;padding-block:16px;background:var(--wp--preset--color--surface)}
 .fdf-home-mobile-benefits .fdf-home-benefits {display:flex;flex-wrap:wrap;gap:8px;margin:0;max-width:none}.fdf-home-mobile-benefits .wp-block-columns.fdf-home-benefits > .wp-block-column {flex:1 1 0!important;min-width:min-content;padding:8px 4px;min-height:100px;align-content:center;border:1px solid var(--wp--preset--color--border);border-radius:10px;background:white}
 .fdf-home-mobile-benefits .fdf-home-benefits p {font-size:13px;line-height:20px;font-weight:400;overflow-wrap:normal;word-break:normal;hyphens:none}.fdf-home-mobile-benefits .fdf-home-benefits p + p {display:none}.fdf-home-mobile-benefits .wp-block-column::before {width:24px;height:24px}
 .fdf-home-directions {padding-top:16px;padding-bottom:16px}.fdf-directions.fdf-home-mosaic {grid-auto-rows:180px;box-shadow:0 0 0 6px var(--wp--preset--color--surface)}.fdf-home-mosaic a:nth-child(n) {border-radius:8px}
 .fdf-home-mosaic .fdf-direction-copy {top:15px;left:14px;right:14px;gap:4px}.fdf-home-mosaic .fdf-direction-copy strong {font-size:16px;line-height:22px}.fdf-home-mosaic .fdf-direction-copy > span {font-size:14px;line-height:20px}.fdf-home-mosaic .fdf-direction-cta {display:none}.fdf-home-mosaic .fdf-direction-arrow {display:block}
 .fdf-product-grid.fdf-product-selection,.fdf-catalog-featured ul.products {grid-template-columns:none;grid-template-rows:repeat(6,auto);grid-auto-columns:min(300px,calc(100% - 48px));grid-auto-flow:column;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px}.fdf-product-selection > li,.fdf-catalog-featured ul.products > li {scroll-snap-align:start}
 .fdf-product-selection .fdf-product-purchase,.fdf-catalog-featured .fdf-product-purchase {grid-template-columns:minmax(0,1fr) 96px;grid-template-rows:auto;gap:8px}
 .fdf-product-selection .fdf-card-cta,.fdf-catalog-featured .fdf-card-cta {width:96px;margin-bottom:10px}
 .fdf-home-brands {gap:12px}.fdf-selection-brand {grid-template-rows:56px 1fr auto;gap:10px;padding:16px 12px 16px 22px}.fdf-selection-brand::before {left:10px;top:16px;bottom:16px}.fdf-selection-brand-logo img {max-height:48px}
 .fdf-publication-title {padding:16px}.fdf-publication-summary {padding:16px;font-size:14px;line-height:20px}
}
@media(prefers-reduced-motion:reduce) {.fdf-selection-publication,.fdf-publication-media img,.fdf-publication-summary,.fdf-publication-action {transition:none}}
/* Native block editor keeps the same composition; nested dynamic cards occupy their grid cell. */
.editor-styles-wrapper .fdf-home-mosaic > .wp-block {margin:0}.editor-styles-wrapper .fdf-home-mosaic > .wp-block:has(.is-wide) {grid-column:span 2}.editor-styles-wrapper .fdf-home-mosaic .fdf-category-tile {display:block;height:262px}
.editor-styles-wrapper .fdf-home .fdf-home-hero {padding-top:0}.editor-styles-wrapper .fdf-home .fdf-home-directions {margin-top:0}
