﻿/*
 * THOLCH Desktop CSS
 * Only place desktop-specific styles here. Do not fix mobile layout from this file.
 */
@media (min-width: 1025px) {
/* Shared grid rules that remain active on desktop. */
  .tholch-quick-path-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tholch-quick-path-card {
      grid-template-rows: auto 1fr auto;
    }

    .location-map__heading {
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: end;
    }

    .location-filters {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      align-items: end;
    }

    .location-card-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .location-finder .location-card-grid {
      grid-template-columns: minmax(0, 1fr);
    }

    .tholch-beer-grid,
    .tholch-updates-grid,
    .out-there-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .trade-card-grid,
    .trade-beer-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-card-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tholch-cookie-banner__content {
      grid-template-columns: minmax(0, 1fr) auto;
    }

    .about-name-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .about-team-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .footer-layout {
      grid-template-columns: minmax(260px, 1.4fr) repeat(2, minmax(180px, 1fr));
    }

    .footer-brand {
      grid-column: auto;
    }

    .feature-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .feature-card {
      display: flex;
      flex-direction: column;
    }

    .feature-card__body {
      flex: 1;
    }

/* Desktop layout rules from the old >=861px breakpoint. */
  .header-inner {
      display: grid;
      grid-template-columns: minmax(180px, 0.38fr) minmax(0, 1fr);
      column-gap: clamp(1.5rem, 4vw, 4rem);
    }

    .site-branding {
      justify-content: center;
    }

    .site-branding__text {
      max-width: 220px;
    }

    .site-branding .custom-logo-link {
      max-width: 210px;
    }

    .site-branding .custom-logo {
      max-height: 58px;
    }

    .location-hero__inner {
      grid-template-columns: minmax(0, 1fr) minmax(280px, 390px);
      align-items: end;
    }

    .location-finder {
      grid-template-columns: minmax(320px, 0.86fr) minmax(420px, 1.14fr);
      grid-template-areas:
        "panel map";
      align-items: stretch;
    }

    .location-finder__panel {
      grid-area: panel;
      grid-template-rows: auto minmax(0, 1fr);
      height: 100%;
      max-height: none;
      overflow: hidden;
    }

    .location-finder__map {
      position: sticky;
      top: calc(var(--tholch-header-height, 76px) + 1rem);
      grid-area: map;
    }

    .location-map-panel .location-map__heading h2 {
      font-size: 3.2rem;
    }

    .tholch-location-results {
      min-width: 0;
      min-height: 0;
      grid-template-rows: auto minmax(0, 1fr) auto auto;
    }

    .location-finder .location-card-grid {
      max-height: none;
      min-height: 0;
      overflow-y: auto;
      overscroll-behavior: contain;
      scrollbar-color: rgba(141, 75, 34, 0.55) rgba(31, 27, 23, 0.08);
      scrollbar-width: thin;
    }

    .location-filters {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .location-filter-reset {
      width: 100%;
    }

    .location-card-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .single-beer-hero__inner {
      padding-top: 4rem;
      padding-bottom: 4rem;
    }

    .single-beer-cta__inner {
      grid-template-columns: minmax(0, 1fr) auto;
    }

    .out-there-section__heading {
      grid-template-columns: minmax(0, 1fr) auto;
    }

    .single-out-there-hero__inner,
    .single-out-there-layout {
      grid-template-columns: minmax(0, 1fr) minmax(300px, 420px);
    }

    .tholch-beer-card {
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
    }

    .tholch-beer-card:hover,
    .tholch-beer-card:focus-within {
      border-color: rgba(197, 139, 44, 0.46);
      box-shadow: 0 24px 56px rgba(31, 27, 23, 0.16);
      transform: translateY(-4px);
    }

    .tholch-update-card {
      transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
    }

    .tholch-update-card:hover,
    .tholch-update-card:focus-within {
      border-color: rgba(197, 139, 44, 0.46);
      box-shadow: 0 24px 56px rgba(31, 27, 23, 0.16);
      transform: translateY(-4px);
    }

    .single-update-layout {
      grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
    }

    .single-update-media-layout.layout-image-left-content-right,
    .single-update-media-layout.layout-content-left-image-right {
      grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr);
    }

    .single-update-media-layout.layout-image-left-content-right .single-update-featured {
      order: 0;
    }

    .single-update-media-layout.layout-content-left-image-right .single-update-featured {
      order: 2;
    }

    .trade-hero__inner,
    .trade-intro__grid,
    .trade-support-grid,
    .trade-keg-coolbox,
    .trade-contact-cta__inner {
      grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
    }

    .kegs-hero__inner,
    .kegs-split,
    .kegs-know {
      grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
    }

    .kegs-step-list {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .about-split,
    .about-founders,
    .about-cta__inner {
      grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
      align-items: center;
    }

    .about-founders__media {
      width: min(100%, 640px);
      justify-self: end;
    }

    .about-founders__frame {
      min-height: 0;
    }

    .contact-hero__inner,
    .contact-form-grid,
    .contact-social-grid,
    .contact-trade-cta__inner {
      grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
      align-items: center;
    }

    .contact-page .is-contact-social {
      gap: 1.15rem;
    }

    .contact-page .is-contact-social .tholch-social-button {
      width: 82px;
      height: 82px;
      min-height: 82px;
    }

    .contact-page .is-contact-social .tholch-social-button svg {
      width: 42px;
      height: 42px;
    }

    .contact-card-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .contact-trade-cta__inner {
      align-items: end;
    }

    .contact-trade-cta .button-row {
      justify-content: flex-end;
    }

    .legal-layout {
      grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
    }

    .legal-hero h1 {
      font-size: 8rem;
    }

    .legal-hero p {
      font-size: 1.28rem;
    }

    .legal-content h2 {
      font-size: 3.2rem;
    }

    .legal-nav {
      position: sticky;
      top: calc(var(--tholch-header-height, 76px) + 1rem);
    }

    .about-name-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .about-team-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .team-profile-layout {
      grid-template-columns: minmax(280px, 0.86fr) minmax(0, 1.14fr);
    }

    .team-profile-media {
      justify-self: end;
    }

    .about-cta__inner {
      align-items: end;
    }

    .about-cta .button-row {
      justify-content: flex-end;
    }

    .button-row .button {
      flex: 0 1 auto;
    }

    .trade-hero__panel {
      justify-self: end;
    }

    .trade-card-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .trade-beers-section .trade-card-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .trade-beer-grid,
    .trade-steps-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .trade-beer-grid {
      max-width: 820px;
    }

    .trade-keg-coolbox__content {
      min-height: 520px;
    }

    .trade-keg-coolbox__media {
      min-height: 520px;
    }

    .single-update-cta__inner,
    .updates-section__heading--split {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 2rem;
      align-items: end;
    }

    .updates-section__heading--split {
      max-width: none;
    }

    .updates-section__heading--split .text-link {
      margin-bottom: 0.45rem;
    }

    .tholch-home-hero__inner {
      grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
    }

    .tholch-home-hero__badge {
      justify-self: end;
    }

    .tholch-statement,
    .tholch-find-panel,
    .tholch-trade-panel,
    .tholch-social-panel,
    .tholch-split-heading {
      grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
    }

    .tholch-social-panel {
      grid-template-columns: minmax(0, 680px) minmax(390px, 1fr);
      gap: clamp(2.5rem, 5vw, 4.5rem);
    }

    .tholch-social-panel h2 {
      font-size: clamp(3.35rem, 4.8vw, 4.25rem);
    }

    .tholch-social-title {
      max-width: 680px;
    }

    .tholch-social-panel__actions {
      justify-self: end;
    }

    .tholch-split-heading {
      align-items: end;
    }

    .tholch-split-heading .text-link {
      justify-self: end;
      margin-bottom: 0.45rem;
    }

    .tholch-story-panel--compact {
      grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.75fr);
    }

    .tholch-quick-path__heading h2 {
      font-size: 3.2rem;
    }

    .tholch-quick-path-card h3 {
      font-size: 2rem;
    }

    .tholch-story-photo,
    .tholch-story-photo-placeholder {
      min-height: 360px;
    }

    .tholch-beer-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tholch-updates-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tholch-contact-panel {
      text-align: center;
    }

    .tholch-contact-panel .button-row {
      justify-content: center;
    }

    .tholch-contact-panel p,
    .tholch-contact-panel h2 {
      margin-inline: auto;
    }

    .footer-layout {
      grid-template-columns: minmax(260px, 1.4fr) repeat(2, minmax(180px, 1fr));
    }

    .footer-brand {
      grid-column: auto;
    }

    .main-navigation {
      display: flex;
      align-items: center;
      justify-content: center;
      flex: 1 1 auto;
      min-width: 0;
    }

    .home-hero {
      min-height: calc(100svh - 84px);
    }

    .tholch-home-hero__badge a {
      transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease;
    }

    @media (hover: hover) and (pointer: fine) {
      .tholch-home-hero__badge a:hover,
      .tholch-home-hero__badge a:focus {
        color: var(--tholch-ink);
        background: var(--nav-hover-color, var(--tholch-gold));
        border-color: var(--nav-hover-color, var(--tholch-gold));
      }
    }

    .split-layout,
    .find-panel,
    .trade-grid,
    .social-panel {
      grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
    }

    .contact-panel {
      text-align: center;
    }

    .contact-panel p,
    .contact-panel h2 {
      margin-inline: auto;
    }

@media (min-width: 1100px) {
  .header-inner {
      grid-template-columns: minmax(240px, 0.45fr) minmax(0, 1fr);
    }

    .site-branding .custom-logo-link {
      max-width: 250px;
    }

    .site-branding .custom-logo {
      max-height: 68px;
    }

    .trade-card-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .tholch-beer-grid {
      grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .out-there-grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tholch-moments__grid {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tholch-moments__item {
      transition: transform 180ms ease, border-color 180ms ease, filter 180ms ease;
    }

    .tholch-moments__item:hover,
    .tholch-moments__item:focus-within {
      border-color: rgba(230, 185, 0, 0.72);
      filter: saturate(1.06);
      transform: translateY(-3px) rotate(0deg);
    }

    .footer-layout {
      grid-template-columns: minmax(220px, 0.9fr) minmax(150px, 0.7fr) minmax(210px, 0.9fr) minmax(160px, 0.65fr);
      gap: clamp(1rem, 2.4vw, 2rem);
    }

    .footer-brand {
      align-items: center;
      grid-column: auto;
      max-width: 280px;
      text-align: center;
    }

    .footer-logo {
      margin-inline: auto;
    }

    .footer-logo .custom-logo {
      max-width: clamp(300px, 24vw, 420px);
      max-height: 164px;
    }

    .footer-brand-line {
      max-width: 18rem;
      margin-inline: auto;
      font-size: 0.86rem;
      line-height: 1.28;
    }

    .site-footer {
      padding-top: clamp(1.1rem, 2.4vw, 1.8rem);
    }

    .footer-heading {
      margin-bottom: 0.35rem;
    }

    .footer-menu,
    .footer-contact-list,
    .footer-social-list {
      gap: 0.08rem 0.65rem;
    }

    .footer-menu a,
    .footer-social-list a {
      min-height: 28px;
      font-size: 0.92rem;
      line-height: 1.1;
    }

    .footer-contact-list {
      gap: 0.35rem;
    }

    .footer-contact-list a,
    .footer-contact-list strong {
      font-size: 0.9rem;
      line-height: 1.2;
    }

    .footer-bottom {
      margin-top: clamp(0.8rem, 2vw, 1.2rem);
      padding: 0.6rem 0;
    }
  }
}

