.featured-in__strip {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: 2.5rem 3rem;
} .featured-in__strip.is-marquee {
flex-wrap: nowrap;
justify-content: flex-start;
overflow: hidden;
position: relative;
-webkit-mask-image: linear-gradient(to right, transparent 0, black 8%, black 92%, transparent 100%);
mask-image: linear-gradient(to right, transparent 0, black 8%, black 92%, transparent 100%);
}
.featured-in__strip.is-marquee:hover .featured-in__track {
animation-play-state: paused;
}
.featured-in__track {
display: flex;
flex-shrink: 0;
gap: 4.5rem;
padding-right: 4.5rem;
align-items: center;
white-space: nowrap;
animation: og-featured-in-scroll 22s linear infinite;
} @keyframes og-featured-in-scroll {
from { transform: translateX(0); }
to   { transform: translateX(-33.3333%); }
}
@media (prefers-reduced-motion: reduce) {
.featured-in__track { animation: none; }
.featured-in__strip.is-marquee {
flex-wrap: wrap;
justify-content: center;
-webkit-mask-image: none;
mask-image: none;
}
.featured-in__strip.is-marquee .featured-in__track + .featured-in__track { display: none; }
} .featured-in__outlet {
font-family: 'Playfair Display', 'Georgia', serif;
font-style: italic;
font-weight: 400;
font-size: 1.125rem;
line-height: 1;
letter-spacing: 0.01em;
text-decoration: none;
white-space: nowrap;
padding: 0.25rem 0;
transition: opacity 0.25s ease, color 0.25s ease, transform 0.25s ease;
}
.featured-in__outlet:hover {
transform: translateY(-1px);
} .featured-in__strip.is-grey .featured-in__outlet {
color: var(--text-muted, #7a7570);
opacity: 0.65;
}
.featured-in__strip.is-grey .featured-in__outlet:hover {
opacity: 1;
color: var(--wine, #7d0100);
} .featured-in__outlet.has-logo {
display: inline-flex;
align-items: center;
padding: 0;
}
.featured-in__outlet-logo {
height: 80px;
max-width: 280px;
width: auto;
object-fit: contain;
display: block;
filter: grayscale(1);
opacity: 0.75;
transition: filter 0.25s ease, opacity 0.25s ease;
}
@media (max-width: 720px) {
.featured-in__outlet-logo {
height: 56px;
max-width: 200px;
}
}
.featured-in__strip.is-color .featured-in__outlet-logo {
filter: none;
opacity: 0.95;
}
.featured-in__outlet:hover .featured-in__outlet-logo {
filter: none;
opacity: 1;
} .featured-in__strip.is-color .featured-in__outlet { opacity: 0.85; }
.featured-in__strip.is-color .featured-in__outlet.is-wine  { color: var(--wine, #7d0100); }
.featured-in__strip.is-color .featured-in__outlet.is-amber { color: var(--accent, #dbbe67); }
.featured-in__strip.is-color .featured-in__outlet.is-teal  { color: var(--teal, #2d6a72); }
.featured-in__strip.is-color .featured-in__outlet.is-slate { color: var(--secondary, #4a5568); }
.featured-in__fallback {
color: var(--text-muted, #7a7570);
font-style: italic;
text-align: center;
}:root {
--ogs-accent: currentColor;
--ogs-border: #e0e0e0;
--ogs-bg-subtle: #f9f9f9;
--ogs-radius: 4px;
--ogs-gap: 24px;
--ogs-columns: 2;
} [class^="ogs-"] *,
[class^="ogs-"] *::before,
[class^="ogs-"] *::after {
box-sizing: border-box;
} .ogs-faq-block {
border-top: 1px solid var(--ogs-border);
margin: var(--ogs-gap) 0;
}
.ogs-faq-item {
border-bottom: 1px solid var(--ogs-border);
}
.ogs-faq-question {
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
padding: 16px 0;
margin: 0;
background: none;
border: none;
font: inherit;
font-weight: 600;
text-align: left;
cursor: pointer;
color: inherit;
line-height: 1.4;
}
.ogs-faq-question::after {
content: "+";
flex-shrink: 0;
margin-left: 16px;
font-size: 1.25em;
line-height: 1;
transition: transform 0.2s ease;
}
.ogs-faq-item.is-open .ogs-faq-question::after {
content: "\2212"; }
.ogs-faq-answer {
display: none;
padding: 0 0 16px;
line-height: 1.6;
}
.ogs-faq-item.is-open .ogs-faq-answer {
display: block;
} .ogs-quote {
border-left: 3px solid var(--ogs-accent);
margin: var(--ogs-gap) 0;
padding: 16px 24px;
font-style: italic;
line-height: 1.6;
}
.ogs-quote cite,
.ogs-quote .ogs-quote-attribution {
display: block;
margin-top: 12px;
font-style: normal;
font-size: 0.875em;
opacity: 0.7;
} .ogs-takeaways {
background: var(--ogs-bg-subtle);
border-radius: var(--ogs-radius);
padding: 24px 28px;
margin: var(--ogs-gap) 0;
}
.ogs-takeaways-title {
margin: 0 0 12px;
font-size: 1.1em;
font-weight: 700;
}
.ogs-takeaways ul {
margin: 0;
padding-left: 20px;
list-style: disc;
}
.ogs-takeaways li {
margin-bottom: 8px;
line-height: 1.5;
}
.ogs-takeaways li:last-child {
margin-bottom: 0;
} .ogs-cta {
text-align: center;
padding: 32px 24px;
margin: var(--ogs-gap) 0;
border: 1px solid var(--ogs-border);
border-radius: var(--ogs-radius);
}
.ogs-cta-title {
margin: 0 0 8px;
font-size: 1.25em;
font-weight: 700;
}
.ogs-cta-text {
margin: 0 0 16px;
line-height: 1.5;
}
.ogs-cta .ogs-cta-button {
display: inline-block;
padding: 12px 28px;
border: 2px solid var(--ogs-accent);
border-radius: var(--ogs-radius);
text-decoration: none;
font-weight: 600;
color: inherit;
transition: opacity 0.2s ease;
}
.ogs-cta .ogs-cta-button:hover {
opacity: 0.8;
}
.ogs-cta.ogs-cta-dark {
background: #1a1a1a;
color: #fff;
border-color: transparent;
}
.ogs-cta.ogs-cta-dark .ogs-cta-button {
border-color: #fff;
color: #fff;
} .ogs-stat {
text-align: center;
padding: 28px 20px;
margin: var(--ogs-gap) 0;
border: 1px solid var(--ogs-border);
border-radius: var(--ogs-radius);
}
.ogs-stat-value,
.ogs-stat__value {
display: block;
font-size: 2.5em;
font-weight: 700;
line-height: 1.2;
color: var(--ogs-accent);
}
.ogs-stat-label,
.ogs-stat__label {
display: block;
margin-top: 8px;
font-size: 0.9em;
opacity: 0.7;
}
.ogs-stat__meta {
display: block;
margin-top: 12px;
font-size: 0.8em;
opacity: 0.6;
} .ogs-definition {
background: var(--ogs-bg-subtle);
border-radius: var(--ogs-radius);
padding: 20px 24px;
margin: var(--ogs-gap) 0;
}
.ogs-definition-term {
font-weight: 700;
margin-bottom: 4px;
}
.ogs-definition-desc {
margin: 0;
line-height: 1.6;
} .ogs-service-card {
border: 1px solid var(--ogs-border);
border-radius: var(--ogs-radius);
padding: 24px;
margin: var(--ogs-gap) 0;
}
.ogs-service-card-title {
margin: 0 0 8px;
font-size: 1.1em;
font-weight: 700;
}
.ogs-service-card-desc {
margin: 0;
line-height: 1.6;
} .ogs-team-card {
border: 1px solid var(--ogs-border);
border-radius: var(--ogs-radius);
padding: 24px;
margin: var(--ogs-gap) 0;
text-align: center;
}
.ogs-team-card-image {
width: 96px;
height: 96px;
border-radius: 50%;
object-fit: cover;
margin: 0 auto 16px;
display: block;
}
.ogs-team-card-name {
margin: 0 0 4px;
font-size: 1.1em;
font-weight: 700;
}
.ogs-team-card-title {
margin: 0 0 12px;
font-size: 0.875em;
opacity: 0.7;
}
.ogs-team-card-bio {
margin: 0;
font-size: 0.9em;
line-height: 1.5;
} .ogs-process {
list-style: none;
padding: 0;
margin: var(--ogs-gap) 0;
counter-reset: ogs-step;
}
.ogs-process li {
counter-increment: ogs-step;
padding: 16px 0 16px 56px;
position: relative;
border-bottom: 1px solid var(--ogs-border);
line-height: 1.5;
}
.ogs-process li:last-child {
border-bottom: none;
}
.ogs-process li::before {
content: counter(ogs-step);
position: absolute;
left: 0;
top: 16px;
width: 36px;
height: 36px;
border-radius: 50%;
border: 2px solid var(--ogs-accent);
display: flex;
align-items: center;
justify-content: center;
font-weight: 700;
font-size: 0.9em;
line-height: 1;
} .ogs-testimonials-grid {
display: grid;
grid-template-columns: repeat(var(--ogs-columns, 2), 1fr);
gap: var(--ogs-gap);
margin: var(--ogs-gap) 0;
}
@media (max-width: 768px) {
.ogs-testimonials-grid {
grid-template-columns: 1fr;
}
} .ogs-testimonial-card {
border: 1px solid var(--ogs-border);
border-radius: var(--ogs-radius);
padding: 24px;
}
.ogs-testimonial-card blockquote,
.ogs-testimonial-quote {
margin: 0 0 16px;
font-style: italic;
line-height: 1.6;
}
.ogs-testimonial-attribution {
font-size: 0.875em;
font-weight: 600;
}
.ogs-testimonial-role {
font-weight: 400;
opacity: 0.7;
} .ogs-speaking-list {
list-style: none;
padding: 0;
margin: var(--ogs-gap) 0;
}
.ogs-speaking-item {
display: flex;
flex-wrap: wrap;
gap: 12px;
align-items: baseline;
padding: 14px 0;
border-bottom: 1px solid var(--ogs-border);
}
.ogs-speaking-item:last-child {
border-bottom: none;
}
.ogs-speaking-date {
flex-shrink: 0;
font-size: 0.85em;
opacity: 0.6;
min-width: 100px;
}
.ogs-speaking-title {
font-weight: 600;
flex: 1;
}
.ogs-speaking-location {
font-size: 0.85em;
opacity: 0.6;
} .ogs-book-grid {
display: grid;
grid-template-columns: repeat(var(--ogs-columns, 2), 1fr);
gap: var(--ogs-gap);
margin: var(--ogs-gap) 0;
}
@media (max-width: 768px) {
.ogs-book-grid {
grid-template-columns: 1fr;
}
} .ogs-book-card {
border: 1px solid var(--ogs-border);
border-radius: var(--ogs-radius);
padding: 24px;
display: flex;
gap: 20px;
}
.ogs-book-card-thumbnail {
flex-shrink: 0;
width: 100px;
height: auto;
border-radius: var(--ogs-radius);
object-fit: cover;
}
.ogs-book-card-info {
flex: 1;
}
.ogs-book-card-title {
margin: 0 0 4px;
font-size: 1.05em;
font-weight: 700;
}
.ogs-book-card-details {
margin: 0;
font-size: 0.875em;
line-height: 1.5;
opacity: 0.7;
} .ogs-media-grid {
display: grid;
grid-template-columns: repeat(var(--ogs-columns, 3), 1fr);
gap: var(--ogs-gap);
margin: var(--ogs-gap) 0;
}
@media (max-width: 960px) {
.ogs-media-grid {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 600px) {
.ogs-media-grid {
grid-template-columns: 1fr;
}
} .ogs-media-card {
border: 1px solid var(--ogs-border);
border-radius: var(--ogs-radius);
padding: 20px;
display: flex;
flex-direction: column;
}
.ogs-media-card-outlet {
font-size: 0.8em;
text-transform: uppercase;
letter-spacing: 0.04em;
opacity: 0.6;
margin-bottom: 8px;
}
.ogs-media-card-title {
margin: 0 0 12px;
font-size: 1em;
font-weight: 600;
line-height: 1.4;
flex: 1;
}
.ogs-media-card-title a {
text-decoration: none;
color: inherit;
}
.ogs-media-card-title a:hover {
text-decoration: underline;
}
.ogs-media-card-meta {
display: flex;
justify-content: space-between;
align-items: center;
gap: 8px;
margin-top: auto;
}
.ogs-media-card-type {
display: inline-block;
font-size: 0.75em;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.04em;
padding: 3px 8px;
border: 1px solid var(--ogs-border);
border-radius: var(--ogs-radius);
white-space: nowrap;
}
.ogs-media-card-link {
font-size: 0.85em;
text-decoration: none;
color: var(--ogs-accent);
font-weight: 600;
white-space: nowrap;
}
.ogs-media-card-link:hover {
text-decoration: underline;
}