.gfdh, .gfdh * { box-sizing: border-box; } .gfdh { --ink: #191b1d; --charcoal: #25282a; --muted: #656a6f; --line: #e4e3df; --cream: #f6f3ed; --sand: #e8ddcb; --olive: #59604c; --orange: #e56f28; --orange-soft: #fff0e5; --white: #ffffff; width: 100%; max-width: 100%; margin: 0; padding: 0; overflow-x: hidden; container-type: inline-size; container-name: product-detail; background: var(--white); color: var(--ink); font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif; line-height: 1.55; -webkit-font-smoothing: antialiased; } .gfdh-inner { width: 100%; max-width: 780px; margin: 0 auto; } .gfdh img { width: 100%; height: auto; display: block; padding: 0; background: transparent; border: 0; } .gfdh h1, .gfdh h2, .gfdh h3, .gfdh p, .gfdh ul, .gfdh figure { margin-top: 0; } .gfdh h1, .gfdh h2, .gfdh h3 { color: inherit; font-weight: 850; } .gfdh h1 { max-width: 680px; margin: 0 auto 13px; font-size: clamp(31px, 8.7cqw, 47px); line-height: 1.06; letter-spacing: -1.2px; } .gfdh h2 { margin-bottom: 12px; font-size: clamp(26px, 6.7cqw, 36px); line-height: 1.14; letter-spacing: -.7px; } .gfdh h3 { margin-bottom: 5px; font-size: 18px; line-height: 1.25; } .gfdh-section { padding: 48px 16px; } .gfdh-copy { max-width: 650px; margin-right: auto; margin-left: auto; } .gfdh-center { text-align: center; } .gfdh-kicker { display: block; margin-bottom: 9px; color: var(--orange); font-size: 11px; font-weight: 900; letter-spacing: 1.35px; line-height: 1.25; text-transform: uppercase; } .gfdh-lead { margin-bottom: 0; color: var(--muted); font-size: 16px; } /* HERO */ .gfdh-hero { padding: 32px 17px 26px; color: var(--white); text-align: center; background: radial-gradient( circle at 86% 0%, rgba(229, 111, 40, .28), transparent 36% ), linear-gradient(145deg, #1c1e20 0%, #303336 100%); } .gfdh-hero .gfdh-kicker { color: #f1b689; } .gfdh-hero h1 span { color: #f39a5e; } .gfdh-hero p { max-width: 640px; margin: 0 auto; color: #e6e7e8; font-size: 16.5px; } /* OPEN IMAGES */ .gfdh-open-image { margin: 0; padding: 0; } .gfdh-open-image img { border-radius: 0; } .gfdh-side-image img, .gfdh-fit-image img { border-radius: 8px; } /* QUICK VALUE STRIP */ .gfdh-value-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid var(--line); background: var(--white); } .gfdh-value-item { min-width: 0; padding: 15px 6px; text-align: center; border-right: 1px solid var(--line); } .gfdh-value-item:last-child { border-right: 0; } .gfdh-value-item strong { display: block; font-size: 14px; line-height: 1.2; } .gfdh-value-item span { display: block; margin-top: 3px; color: var(--muted); font-size: 10.5px; line-height: 1.25; } /* PROBLEM AND SOLUTION */ .gfdh-problem { padding-bottom: 27px; } .gfdh-points { display: grid; grid-template-columns: 1fr; gap: 10px; margin-top: 23px; } .gfdh-point { display: grid; grid-template-columns: 38px 1fr; gap: 11px; align-items: start; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--white); } .gfdh-point-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; background: var(--orange-soft); color: var(--orange); font-size: 17px; font-weight: 900; } .gfdh-point p { margin-bottom: 0; color: var(--muted); font-size: 13.5px; } /* FEATURE STORY */ .gfdh-story { display: grid; grid-template-columns: 1fr; gap: 23px; align-items: center; } .gfdh-checks { margin: 17px 0 0; padding: 0; list-style: none; } .gfdh-checks li { position: relative; margin-bottom: 9px; padding-left: 25px; color: #474b4e; font-size: 14.5px; } .gfdh-checks li::before { content: '✓'; position: absolute; top: 0; left: 0; color: var(--orange); font-weight: 900; } /* DARK CONTROL SECTION */ .gfdh-control { padding: 39px 17px; color: var(--white); background: radial-gradient( circle at top right, rgba(229, 111, 40, .25), transparent 38% ), var(--charcoal); } .gfdh-control .gfdh-kicker { color: #f1b689; } .gfdh-control h2 span { color: #f39a5e; } .gfdh-control p { color: #d9dcde; } .gfdh-control-grid { display: grid; grid-template-columns: 1fr; gap: 10px; } .gfdh-control-grid figure { margin: 0; } .gfdh-control-grid img { border-radius: 8px; } /* SIZE AND FIT */ .gfdh-fit { background: var(--cream); } .gfdh-fit-layout { display: grid; grid-template-columns: 1fr; gap: 24px; align-items: center; } .gfdh-steps { display: grid; grid-template-columns: 1fr; gap: 14px; margin-top: 21px; counter-reset: fit-step; } .gfdh-step { position: relative; min-height: 38px; padding-left: 50px; counter-increment: fit-step; } .gfdh-step::before { content: counter(fit-step); position: absolute; top: 0; left: 0; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: var(--olive); color: var(--white); font-size: 13px; font-weight: 900; } .gfdh-step p { margin-bottom: 0; color: var(--muted); font-size: 13.5px;
- Type
- Dog harness
- Features
- Adjustable fit, no-pull design, control handle