/* Shared presentation for the three detail pages. Scoped away from home, LPs and apps. */
body.detail-page.renewal-home { --foreground:#1e2622; --muted:#5b625c; --accent:#7a2e3a; --background:#f4f0e8; background:var(--paper); color:var(--foreground); }
body.detail-page.renewal-home :is(.detail-dark,.field-section,.brand-header,.brand-menu,.brand-footer) { --foreground:#ece8de; --muted:#b9b5a8; --accent:#c07a86; --background:#16201c; background:var(--dark); color:var(--foreground); }
body.detail-page.renewal-home .brand-header { height:80px; }
body.detail-page.renewal-home .brand-header .wordmark { display:flex; flex-direction:column; gap:3px; line-height:1.1; }
body.detail-page.renewal-home .wordmark-subtitle { font:400 13px/1.4 var(--body-font); letter-spacing:.035em; color:var(--muted); }
body.detail-page.renewal-home main :is(p,li) { font-size:16px; line-height:1.9; }
body.detail-page.renewal-home main :is(h1,h2,h3) { font-family:var(--heading-font); font-weight:500; letter-spacing:0; }
body.detail-page.renewal-home main h2 { font-size:clamp(1.8rem,3.4vw,2.75rem); line-height:1.5; }
body.detail-page.renewal-home main h3 { font-size:20px; line-height:1.6; }
body.detail-page.renewal-home main .kicker { font:400 13px/1.6 var(--body-font); letter-spacing:.06em; color:var(--accent); margin:0 0 24px; }
body.detail-page.renewal-home main :is(.brand-status,.availability,.method-number,.demo-disclosure,.demo-eyebrow) { font-size:13px; }
body.detail-page.renewal-home main a:not(.brand-card) { font-size:15px; }
body.detail-page.renewal-home main :is(.detail-section,.detail-masthead) { padding:64px 0; max-width:none; margin:0; }
body.detail-page.renewal-home main .phrase { display:inline-block; white-space:nowrap; }
body.detail-page.renewal-home :is(.text-link,.outline-cta) { color:var(--foreground) !important; }
body.detail-page.renewal-home :is(.outline-cta,.combined-link):hover { background:var(--paper-2); }
body.detail-page.renewal-home .detail-dark :is(.outline-cta,.combined-link):hover { background:var(--dark-2); }
body.detail-page.renewal-home .inline-link { display:inline-flex; align-items:center; min-height:44px; max-width:100%; color:var(--foreground); border-bottom:1px solid var(--accent); white-space:normal; }
body.detail-page.renewal-home .gold-cta { display:inline-flex; align-items:center; justify-content:space-between; gap:16px; width:100%; min-height:56px; padding:16px 24px; margin-top:24px; background:transparent; border:1px solid var(--accent); border-radius:2px; color:var(--foreground) !important; font:400 15px/1.5 var(--body-font); transition:background-color .25s; }
body.detail-page.renewal-home .gold-cta:hover { background:var(--paper-2); }
body.detail-page.renewal-home .detail-primary { background:var(--paper); border-color:var(--paper); color:#1e2622 !important; }
body.detail-page.renewal-home .detail-primary:hover { background:var(--paper-2); }
/* Identity beside a modest portrait; the introduction occupies its own column. */
body.profile-detail.renewal-home .profile-hero { display:block; max-width:none; padding:56px 0 64px; margin:0; background:var(--dark); }
body.profile-detail.renewal-home .detail-hero-layout { display:grid; grid-template-columns:1fr; gap:32px; }
body.profile-detail.renewal-home .profile-identity { display:grid; grid-template-columns:112px minmax(0,1fr); gap:24px; align-items:center; }
body.profile-detail.renewal-home .profile-identity > img { width:112px; height:112px; object-fit:cover; object-position:center 28%; border-radius:2px; }
body.profile-detail.renewal-home .profile-name h1 { font-size:32px; line-height:1.4; margin:0 0 12px; }
body.profile-detail.renewal-home .profile-identity .profile-role { font:400 15px/1.8 var(--body-font); color:var(--muted); margin:0; }
body.profile-detail.renewal-home .profile-intro > p { color:var(--muted); max-width:40ic; margin:0 0 24px; }
body.profile-detail.renewal-home .profile-intro .profile-statement { font:500 clamp(24px,3vw,32px)/1.65 var(--heading-font); color:var(--foreground); margin-bottom:24px; }
body.profile-detail.renewal-home .profile-social { display:flex; flex-wrap:wrap; gap:8px 24px; margin:24px 0; }
body.profile-detail.renewal-home .profile-social a { font-size:14px; color:var(--foreground); border-color:var(--muted); }
body.profile-detail.renewal-home .profile-intro .outline-cta { font-size:15px; }
body.profile-detail.renewal-home .profile-background { background:var(--paper); }
body.profile-detail.renewal-home .background-grid { display:grid; grid-template-columns:1fr; gap:16px; margin:32px 0 0; }
body.profile-detail.renewal-home .background-grid article { padding:24px; background:var(--card); border:1px solid var(--rule); border-radius:8px; }
body.profile-detail.renewal-home .background-grid h3 { margin:0 0 16px; }
body.profile-detail.renewal-home .background-grid p { color:var(--muted); margin:0 0 16px; }
body.profile-detail.renewal-home .brand-card-grid { display:grid; grid-template-columns:1fr; gap:16px; margin:32px 0 24px; }
body.profile-detail.renewal-home .brand-card { --foreground:#1e2622; --muted:#5b625c; --accent:#7a2e3a; display:flex; flex-direction:column; gap:12px; background:var(--card); border:1px solid var(--rule); color:var(--foreground); border-radius:8px; padding:24px; transition:border-color .25s; }
body.profile-detail.renewal-home .brand-card:hover { border-color:var(--accent); }
body.profile-detail.renewal-home .brand-card > span { color:var(--accent); font-size:13px; }
body.profile-detail.renewal-home .brand-card h3 { font:500 28px/1.35 var(--latin-font); color:var(--foreground); overflow-wrap:normal; }
body.profile-detail.renewal-home .brand-card p { font-size:16px; color:var(--muted); }
body.profile-detail.renewal-home .brand-card b { font-size:14px; font-weight:400; margin-top:auto; color:var(--foreground); line-height:1.8; }
body.profile-detail.renewal-home .brand-status { border-color:var(--accent); color:var(--muted); margin:0; padding:16px; }
body.profile-detail.renewal-home .profile-contact { background:#101813; }
body.profile-detail.renewal-home .profile-contact p:not(.kicker) { max-width:40ic; color:var(--muted); margin:0 0 24px; }
body.profile-detail.renewal-home .profile-contact .inline-link { margin:24px 0 0; }
/* Product rows preserve the alternating desktop layout and the local demonstrations. */
body.product-detail.renewal-home .detail-masthead .products-intro { margin:0; }
body.product-detail.renewal-home .products-intro h1 { font:500 clamp(28px,3.4vw,44px)/1.5 var(--heading-font); color:var(--foreground); margin:0 0 24px; }
body.product-detail.renewal-home .products-intro .section-intro { color:var(--muted); max-width:40ic; margin:0; }
body.product-detail.renewal-home .products-section-new { padding-block:48px 64px; }
body.product-detail.renewal-home .product-stack { display:grid; grid-template-columns:1fr; gap:24px; }
body.product-detail.renewal-home .product-box { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; padding:24px; }
body.product-detail.renewal-home .product-copy { min-width:0; }
body.product-detail.renewal-home .product-logo { height:88px; width:200px; margin:0 0 24px; padding:0; }
body.product-detail.renewal-home .product-logo img { width:176px; height:72px; object-position:left center; }
body.product-detail.renewal-home .product-copy h2 { font-size:28px; margin:0 0 24px; }
body.product-detail.renewal-home .product-copy > p:not(.product-kicker) { font-size:16px; color:#5b625c; max-width:40ic; margin:0 0 24px; }
body.product-detail.renewal-home .product-copy > p:last-child { margin-bottom:0; }
body.product-detail.renewal-home .product-demo { margin:0; padding:24px 16px; align-self:start; }
body.product-detail.renewal-home .product-action { margin:0; align-self:end; }
body.product-detail.renewal-home .wine-project { display:grid; padding:24px; min-height:320px; margin:32px 0 0; }
body.product-detail.renewal-home .vinq-brand { font:500 36px/1.2 var(--latin-font); letter-spacing:.08em; color:#1e2622; display:inline-block; margin-left:8px; }
body.product-detail.renewal-home .wine-project .product-kicker { display:flex; align-items:baseline; min-height:88px; margin-bottom:24px; }
body.product-detail.renewal-home .philosophy-section { padding-block:64px; }
body.product-detail.renewal-home .philosophy-layout { align-items:start; }
body.product-detail.renewal-home .method-intro > p { color:var(--muted); }
body.product-detail.renewal-home .method-intro .method-principle { color:var(--foreground); }
body.product-detail.renewal-home .method-intro .hero-concept { margin:32px 0 0; }
body.product-detail.renewal-home .hero-concept .concept-scene :is(path,circle) { stroke:#ece8de; }
body.product-detail.renewal-home .hero-concept .concept-scene :is(.insight-ring,.system-frame) { fill:var(--dark); }
body.product-detail.renewal-home .hero-concept .concept-scene .system-node { fill:#ece8de; }
body.product-detail.renewal-home .hero-concept .concept-labels { color:#ece8de; }
body.product-detail.renewal-home .hero-concept .concept-arrow { stroke:#c07a86; }
body.product-detail.renewal-home .method-controls button { color:#b9b5a8; }
body.product-detail.renewal-home .method-controls button:hover { color:#ece8de; background:var(--dark-2); }
body.product-detail.renewal-home .method-controls button[aria-selected="true"] { background:var(--paper); color:#1e2622; border-bottom-color:#c07a86; }
body.product-detail.renewal-home .method-panel { --foreground:#1e2622; --muted:#5b625c; --accent:#7a2e3a; padding:24px; }
body.product-detail.renewal-home .method-switcher.is-enhanced .method-panel { min-height:400px; }
body.product-detail.renewal-home .method-panel h3 { font-size:28px; }
body.product-detail.renewal-home .method-panel .text-link { color:#1e2622 !important; }
body.product-detail.renewal-home .detail-return { padding-block:32px; }
/* Venue photos retain their subjects and order. Text does not cover the hero photograph. */
body.venue-detail.renewal-home .venue-hero { display:flex; flex-direction:column-reverse; height:auto; max-width:none; background:var(--dark); }
body.venue-detail.renewal-home .venue-hero::after { content:none; }
body.venue-detail.renewal-home .venue-hero > div { position:static; transform:none; padding:56px 24px 40px; }
body.venue-detail.renewal-home .venue-hero :is(h1,p,.kicker) { color:var(--foreground); }
body.venue-detail.renewal-home .venue-hero .kicker { color:var(--muted); }
body.venue-detail.renewal-home .venue-hero h1 { font:400 clamp(44px,6vw,72px)/1.25 var(--latin-font); margin:0 0 24px; }
body.venue-detail.renewal-home .venue-hero div > p:last-child { font:500 24px/1.7 var(--heading-font); margin:0; }
body.venue-detail.renewal-home .venue-hero-photo { display:block; width:100%; }
body.venue-detail.renewal-home .venue-hero-photo img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
body.venue-detail.renewal-home .venue-intro { display:grid; grid-template-columns:minmax(0,1fr); padding:64px 0; max-width:1160px; gap:32px; background:var(--paper); }
body.venue-detail.renewal-home .venue-intro h2 { margin:0 0 24px; }
body.venue-detail.renewal-home .venue-intro p { max-width:40ic; color:var(--muted); margin:0; }
body.venue-detail.renewal-home .venue-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-self:start; }
body.venue-detail.renewal-home .venue-gallery img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:2px; }
body.venue-detail.renewal-home .venue-gallery img:last-child { object-fit:contain; padding:16px; background:#fbf9f4; }
body.venue-detail.renewal-home .field-section { padding-block:64px; }
body.venue-detail.renewal-home .field-layout { display:block; max-width:none; }
body.venue-detail.renewal-home .field-copy { max-width:40ic; }
body.venue-detail.renewal-home .field-copy > p { color:var(--muted); }
body.venue-detail.renewal-home .venue-note { margin-bottom:0; }
@media (min-width:768px) {
 body.detail-page.renewal-home main :is(p,li) { font-size:17px; }
 body.detail-page.renewal-home main :is(.detail-section,.detail-masthead) { padding-block:80px; }
 body.profile-detail.renewal-home .profile-hero { padding-block:72px 80px; }
 body.profile-detail.renewal-home .background-grid { gap:24px; }
 body.profile-detail.renewal-home .profile-contact .gold-cta { width:320px; }
 body.profile-detail.renewal-home .profile-contact .inline-link { display:flex; width:fit-content; }
 body.product-detail.renewal-home .product-box { padding:32px; }
 body.product-detail.renewal-home .products-section-new { padding-block:64px 80px; }
 body.product-detail.renewal-home .product-copy h2 { font-size:32px; }
 body.product-detail.renewal-home .product-copy > p:not(.product-kicker) { font-size:17px; }
 body.product-detail.renewal-home .philosophy-section { padding-block:80px; }
 body.venue-detail.renewal-home .venue-hero > div { padding:64px 32px 48px; }
 body.venue-detail.renewal-home .venue-intro { padding-block:80px; }
 body.venue-detail.renewal-home .field-section { padding-block:80px; }
}
@media (min-width:1024px) {
 body.detail-page.renewal-home .brand-header { height:88px; }
 body.detail-page.renewal-home main :is(.detail-section,.detail-masthead) { padding-block:96px; }
 body.profile-detail.renewal-home .profile-hero { padding-block:96px; }
 body.profile-detail.renewal-home .detail-hero-layout { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:64px; align-items:start; }
 body.profile-detail.renewal-home .profile-identity { grid-template-columns:144px minmax(0,1fr); }
 body.profile-detail.renewal-home .profile-identity > img { width:144px; height:144px; }
 body.profile-detail.renewal-home .profile-name h1 { font-size:40px; }
 body.profile-detail.renewal-home :is(.background-grid,.brand-card-grid) { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
 body.product-detail.renewal-home .products-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; align-items:start; }
 body.product-detail.renewal-home .products-intro h1 { margin:0; }
 body.product-detail.renewal-home .product-stack { gap:32px; }
 body.product-detail.renewal-home .product-box { grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:64px; row-gap:24px; padding:48px; }
 body.product-detail.renewal-home .product-copy { grid-column:1; grid-row:1; }
 body.product-detail.renewal-home .product-box .product-demo { grid-column:2; grid-row:1/3; align-self:center; margin:0; }
 body.product-detail.renewal-home .product-action { grid-column:1; grid-row:2; }
 body.product-detail.renewal-home .product-box:nth-child(2) :is(.product-copy,.product-action) { grid-column:2; }
 body.product-detail.renewal-home .product-box:nth-child(2) .product-demo { grid-column:1; }
 body.product-detail.renewal-home .product-copy h2 { font-size:36px; }
 body.product-detail.renewal-home .wine-project { min-height:360px; }
 body.product-detail.renewal-home .wine-project .product-copy { grid-column:1/3; max-width:40ic; }
 body.product-detail.renewal-home .wine-project .product-action { grid-column:1/3; width:fit-content; }
 body.product-detail.renewal-home .philosophy-section { padding-block:96px; }
 body.venue-detail.renewal-home .venue-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); align-items:center; }
 body.venue-detail.renewal-home .venue-hero > div { grid-column:1; grid-row:1; padding:64px 48px 64px max(48px,calc((100vw - 1160px)/2)); }
 body.venue-detail.renewal-home .venue-hero-photo { grid-column:2; grid-row:1; }
 body.venue-detail.renewal-home .venue-hero-photo img { height:520px; aspect-ratio:auto; }
 body.venue-detail.renewal-home .venue-intro { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:64px; padding-block:96px; }
 body.venue-detail.renewal-home .venue-intro .gold-cta { width:320px; }
 body.venue-detail.renewal-home .field-section { padding-block:96px; }
 body.venue-detail.renewal-home .field-copy { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); column-gap:80px; max-width:none; }
 body.venue-detail.renewal-home .field-copy > :is(h2,p) { grid-column:1; }
 body.venue-detail.renewal-home .venue-note { grid-column:2; grid-row:1/4; align-self:center; margin:0; }
}
@media (max-width:374px) {
 body.profile-detail.renewal-home .profile-identity { grid-template-columns:96px minmax(0,1fr); gap:16px; }
 body.profile-detail.renewal-home .profile-identity > img { width:96px; height:96px; }
 body.profile-detail.renewal-home .profile-name h1 { font-size:28px; }
}
@media (prefers-reduced-motion:reduce) {
 body.detail-page.renewal-home * { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
