/* =============================================================================
   OWW — HOME PAGE
   assets/css/page-home.css
   Version: 3.6.0
   Scope: .oww-home (applied via body class oww-page--home)

   Sections
   ────────
   1.  Section rhythm
   2.  Cursor glow
   3.  Hero
   4.  Stats bar
   5.  Journey / Newsletter
   6.  About
   7.  Courses
   8.  Shop
   9.  Method
   10. Tastings
   11. Wanderings (was: Journal / Blog)
   12. Hidden sections (Private Tours)
   ============================================================================= */


/* ─── 1. SECTION RHYTHM ─────────────────────────────────────────────────── */
/*
 * .oww-home .oww-section removed — identical to .oww-section in components.css.
 * Adding specificity for the same values creates silent override potential
 * without functional benefit. components.css handles this sitewide.
 */


/* ─── 2. CURSOR GLOW ────────────────────────────────────────────────────── */

.oww-cursor-glow {
    position:       fixed;
    top:            0;
    left:           0;
    width:          350px;
    height:         350px;
    border-radius:  50%;
    background:     radial-gradient(
        circle,
        rgba(205, 165, 100, 0.09) 0%,
        rgba(205, 165, 100, 0.03) 40%,
        transparent 70%
    );
    pointer-events: none;
    z-index:        var(--oww-z-cursor, 9000);
    opacity:        0;
    will-change:    transform;
    transition:     opacity 0.3s ease;
}

.oww-cursor-glow--visible { opacity: 1; }


/* ─── 3. HERO ───────────────────────────────────────────────────────────── */

.oww-home .oww-hero {
    min-height:  94vh;
    display:     flex;
    align-items: center;
    padding:     0;
    background:  var(--oww-bg);
    overflow:    hidden;
    position:    relative;
}

/* Background image layer */
.oww-home .oww-hero__bg {
    position:            absolute;
    inset:               0;
    background-image:    url('/wp-content/uploads/2026/01/1-Wiskey-wanderer-2-wishky-drams-on-table-hero-image.webp');
    background-size:     cover;
    background-position: center 40%;
    opacity:             0.28;
    will-change:         transform;
    z-index:             0;
    user-select:         none;
    pointer-events:      none;
}

/* Gradient overlay — heavier on left to protect left-aligned text */
.oww-home .oww-hero__overlay {
    position:       absolute;
    inset:          0;
    z-index:        1;
    pointer-events: none;
    background:     linear-gradient(
        105deg,
        rgba(10, 8, 6, 0.92) 0%,
        rgba(10, 8, 6, 0.60) 42%,
        rgba(10, 8, 6, 0.80) 100%
    );
}

/* Vignette — animated by GSAP on scroll */
.oww-home .oww-hero__vignette {
    position:       absolute;
    inset:          0;
    z-index:        2;
    pointer-events: none;
    opacity:        0;
    background:     radial-gradient(
        ellipse 90% 100% at 30% 50%,
        transparent 10%,
        rgba(10, 8, 6, 0.55) 55%,
        rgba(10, 8, 6, 0.92) 100%
    );
}

.oww-home .oww-hero .oww-container {
    position:       relative;
    z-index:        5;
    padding-top:    clamp(5rem, 12vw, 9rem);
    padding-bottom: clamp(5rem, 12vw, 9rem);
}

/* Left-aligned content — max 620px on desktop */
.oww-home .oww-hero__content { max-width: 620px; }

/* Logo mark */
.oww-home .oww-hero__logo {
    width:         32px;
    height:        38px;
    margin-bottom: 1.4rem;
    color:         var(--oww-amber);
    opacity:       0;
}
.oww-home .oww-hero__logo svg { width: 100%; height: 100%; }

/* Eyebrow — with left rule */
.oww-home .oww-hero__eyebrow {
    display:        flex;
    align-items:    center;
    gap:            0.6rem;
    font-size:      clamp(0.55rem, 1.1vw, 0.65rem);
    font-weight:    700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color:          var(--oww-amber);
    margin-bottom:  0.65rem;
    opacity:        0;
}
.oww-home .oww-hero__eyebrow::before {
    content:    '';
    display:    block;
    width:      24px;
    height:     1px;
    background: var(--oww-amber);
    opacity:    0.6;
    flex-shrink: 0;
}

/* Title — left aligned, cinematic scale */
.oww-home .oww-hero__title {
    font-size:      clamp(2.4rem, 5.5vw, 4.2rem);
    font-weight:    300;
    line-height:    1.04;
    color:          var(--oww-cream);
    margin-bottom:  0.35em;
    letter-spacing: -0.01em;
    opacity:        0;
}

/* Author byline */
.oww-home .oww-hero__author {
    font-size:      clamp(0.58rem, 1.2vw, 0.7rem);
    font-weight:    500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color:          var(--oww-amber);
    margin-bottom:  0.6rem;
    opacity:        0;
}

/* Divider */
.oww-home .oww-hero__divider {
    border:           none;
    border-top:       1px solid var(--oww-bronze-30);
    width:            48px;
    margin:           0 0 1.5rem;
    opacity:          0;
    transform:        scaleX(0);
    transform-origin: left center;
}

/* Subtitle */
.oww-home .oww-hero__subtitle {
    font-size:    clamp(0.875rem, 1.8vw, 1rem);
    color:        var(--oww-cream-muted);
    line-height:  1.75;
    max-width:    480px;
    margin-bottom: 1.5rem;
    opacity:      0;
}

/* Pull quote — amber left border */
.oww-home .oww-hero__quote {
    margin-bottom: 1.75rem;
    padding:       0.8rem 1.2rem;
    border:        1px solid var(--oww-bronze-20);
    border-left:   3px solid var(--oww-amber);
    border-radius: 0;
    background:    rgba(10, 8, 6, 0.52);
    max-width:     500px;
    opacity:       0;
}
.oww-home .oww-hero__quote blockquote p {
    font-family:  var(--oww-ff-display);
    font-size:    clamp(0.875rem, 1.8vw, 1.05rem);
    font-style:   italic;
    color:        var(--oww-cream);
    line-height:  1.65;
    margin-bottom: 0.35em;
}
.oww-home .oww-hero__quote figcaption {
    font-size:      0.62rem;
    letter-spacing: 0.06em;
    color:          var(--oww-amber);
}

/* CTAs */
.oww-home .oww-hero__ctas {
    display:       flex;
    flex-wrap:     wrap;
    gap:           0.85rem;
    margin-bottom: 1.75rem;
    opacity:       0;
}

/* Trust strip — WSET removed, EWA only */
.oww-home .oww-hero__trust {
    display:   flex;
    flex-wrap: wrap;
    gap:       7px;
    opacity:   0;
}

/* Scroll indicator — horizontal travelling dot */
.oww-home .oww-hero__scroll {
    display:     flex;
    align-items: center;
    gap:         0.75rem;
    margin-top:  2.5rem;
    opacity:     0;
}

.oww-home .oww-hero__scroll-line {
    width:    36px;
    height:   1px;
    background: rgba(205, 165, 100, 0.3);
    position: relative;
    overflow: hidden;
}

.oww-home .oww-hero__scroll-dot {
    position:      absolute;
    top:           0;
    left:          0;
    width:         10px;
    height:        1px;
    background:    var(--oww-amber);
    animation:     oww-scroll-h 2.2s ease-in-out infinite;
}

@keyframes oww-scroll-h {
    0%, 100% { left: 0;   opacity: 1; }
    70%       { left: 26px; opacity: 0; }
    71%       { left: 0;   opacity: 0; }
}

.oww-home .oww-hero__scroll-text {
    font-size:      0.52rem;
    font-weight:    700;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color:          var(--oww-amber);
    opacity:        0.6;
}

/* Mobile: stack hero content */
@media (max-width: 640px) {
    .oww-home .oww-hero__content { max-width: 100%; }
    .oww-home .oww-hero__quote   { max-width: 100%; }
}


/* ─── 4. STATS BAR ──────────────────────────────────────────────────────── */

.oww-home .oww-stats-bar {
    background:    var(--oww-bg-dark);
    border-top:    1px solid var(--oww-bronze-20);
    border-bottom: 1px solid var(--oww-bronze-20);
    padding:       clamp(1rem, 2.5vw, 1.5rem) 0;
}

.oww-home .oww-stats-bar .oww-container {
    display:               grid;
    grid-template-columns: repeat(4, 1fr);
}

.oww-home .oww-stat {
    text-align:   center;
    padding:      0 clamp(0.75rem, 2vw, 1.75rem);
    border-right: 1px solid var(--oww-bronze-20);
}
.oww-home .oww-stat:last-child { border-right: none; }

.oww-home .oww-stat__number {
    font-family: var(--oww-ff-display);
    font-size:   clamp(1.5rem, 3vw, 2.1rem);
    font-weight: 300;
    color:       var(--oww-amber);
    line-height: 1;
    display:     block;
}
.oww-home .oww-stat__label {
    font-size:      clamp(0.46rem, 0.9vw, 0.55rem);
    font-weight:    700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color:          var(--oww-cream-faint);
    margin-top:     5px;
    display:        block;
}

@media (max-width: 600px) {
    .oww-home .oww-stats-bar .oww-container { grid-template-columns: repeat(2, 1fr); }
    .oww-home .oww-stat:nth-child(2) { border-right: none; }
    .oww-home .oww-stat:nth-child(3) { border-top: 1px solid var(--oww-bronze-20); }
    .oww-home .oww-stat:nth-child(4) { border-top: 1px solid var(--oww-bronze-20); border-right: none; }
}


/* ─── 5. JOURNEY / NEWSLETTER ───────────────────────────────────────────── */

.oww-home .oww-journey {
    background: linear-gradient(180deg, var(--oww-bg-dark) 0%, var(--oww-bg-raised) 100%);
}

/* Card — amber left-border accent */
.oww-home .oww-journey__card {
    display:               grid;
    grid-template-columns: 1fr 300px;
    gap:                   clamp(2.5rem, 5vw, 5rem);
    align-items:           center;
    background:            rgba(255, 255, 255, 0.02);
    border:                1px solid var(--oww-bronze-20);
    border-left:           3px solid var(--oww-amber);
    border-radius:         0 var(--oww-radius-lg) var(--oww-radius-lg) 0;
    padding:               clamp(2rem, 4vw, 3.5rem) clamp(2rem, 5vw, 4rem);
}

@media (max-width: 800px) {
    .oww-home .oww-journey__card {
        grid-template-columns: 1fr;
        border-radius: var(--oww-radius-lg);
        border-left:   3px solid var(--oww-amber);
    }
    .oww-home .oww-journey__visual { display: none; }
}

.oww-home .oww-journey__title {
    font-size:    clamp(1.6rem, 3vw, 2.2rem);
    font-weight:  300;
    color:        var(--oww-cream);
    line-height:  1.12;
    margin-bottom: var(--oww-space-sm);
}
.oww-home .oww-journey__copy {
    font-size:    0.875rem;
    color:        var(--oww-cream-muted);
    line-height:  1.72;
    max-width:    400px;
    margin-bottom: var(--oww-space-md);
}

.oww-home .oww-journey__benefits {
    display:        flex;
    flex-direction: column;
    gap:            7px;
    margin-bottom:  var(--oww-space-lg);
}
.oww-home .oww-journey__benefits li {
    display:     flex;
    align-items: center;
    gap:         9px;
    font-size:   0.8rem;
    color:       var(--oww-cream-muted);
}
.oww-home .oww-journey__benefits li::before {
    content:       '';
    width:         4px;
    height:        4px;
    border-radius: 50%;
    background:    var(--oww-amber);
    flex-shrink:   0;
}

.oww-home .oww-journey__form { display: flex; gap: 8px; }
.oww-home .oww-journey__email {
    flex:          1;
    min-width:     0;
    background:    rgba(255, 255, 255, 0.05);
    border:        1px solid var(--oww-bronze-30);
    border-radius: var(--oww-radius-sm);
    padding:       0.6em 0.9em;
    font-size:     0.8rem;
    font-family:   var(--oww-ff-body);
    color:         var(--oww-cream);
    transition:    border-color 0.2s ease;
}
.oww-home .oww-journey__email::placeholder { color: var(--oww-cream-faint); }
.oww-home .oww-journey__email:focus { border-color: var(--oww-amber); outline: none; }

/* Visual col — amber glow ring */
.oww-home .oww-journey__visual {
    position:     relative;
    aspect-ratio: 3/4;
    background:   var(--oww-bg-card);
    border-radius: var(--oww-radius-md);
    border:       1px solid var(--oww-bronze-20);
    overflow:     hidden;
}
.oww-home .oww-journey__visual::before {
    content:        '';
    position:       absolute;
    inset:          0;
    background:     radial-gradient(ellipse at 50% 50%, rgba(205,165,100,.12) 0%, transparent 70%);
    pointer-events: none;
    z-index:        0;
}
.oww-home .oww-journey__img {
    position:   relative;
    z-index:    2;
    width:      100%;
    height:     100%;
    object-fit: cover;
    display:    block;
}
.oww-home .oww-journey__glow {
    position:  absolute;
    inset:     -40px;
    background: radial-gradient(ellipse at 50% 50%, rgba(205,165,100,.15) 0%, transparent 70%);
    filter:    blur(30px);
    z-index:   0;
}


/* ─── 6. ABOUT ──────────────────────────────────────────────────────────── */

.oww-home .oww-about {
    background: linear-gradient(180deg, var(--oww-bg-raised) 0%, var(--oww-bg-mid) 100%);
}

.oww-home .oww-about__grid {
    display:               grid;
    grid-template-columns: 1fr 1.4fr;
    gap:                   clamp(2.5rem, 5vw, 5rem);
    align-items:           start;
}

@media (max-width: 860px) {
    .oww-home .oww-about__grid { grid-template-columns: 1fr; }
    .oww-home .oww-about__image-col { max-width: 340px; }
}

/* Portrait frame — GSAP clip-path reveal */
.oww-home .oww-about__image-frame {
    aspect-ratio:      3/4;
    background:        var(--oww-bg-card);
    border-radius:     var(--oww-radius-md);
    border:            1px solid var(--oww-bronze-20);
    background-image:  url('/wp-content/uploads/2025/12/Self-Portrait-About-Me.webp');
    background-size:   cover;
    background-position: center top;
    overflow:          hidden;
    will-change:       clip-path;
    position:          relative;
}

/* Chapter number watermark */
.oww-home .oww-about__chapter-num {
    position:       absolute;
    top:            50%;
    left:           50%;
    transform:      translate(-50%, -58%);
    font-family:    var(--oww-ff-display);
    font-size:      clamp(5rem, 18vw, 10rem);
    font-weight:    300;
    color:          transparent;
    -webkit-text-stroke: 1px rgba(205, 165, 100, 0.06);
    line-height:    1;
    pointer-events: none;
    user-select:    none;
    z-index:        0;
}

/* Text col — GSAP stagger target */
.oww-home .oww-about__text-col {
    display:        flex;
    flex-direction: column;
    justify-content: center;
}

/* Title with amber name accent */
.oww-home .oww-about__title {
    font-size:    clamp(1.6rem, 3.5vw, 2.4rem);
    font-weight:  300;
    line-height:  1.1;
    margin-bottom: 6px;
}
.oww-home .oww-about__title .oww-about__name { color: var(--oww-amber); }

.oww-home .oww-about__body,
.oww-home .oww-about__copy {
    font-size:    0.875rem;
    color:        var(--oww-cream-muted);
    line-height:  1.75;
    margin-bottom: var(--oww-space-lg);
}

.oww-home .oww-about__learn-label {
    font-size:      0.5rem;
    font-weight:    700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color:          var(--oww-amber);
    margin-bottom:  10px;
    display:        block;
}

.oww-home .oww-about__learn {
    margin-bottom: var(--oww-space-lg);
}

.oww-home .oww-about__learn-list {
    display:               grid;
    grid-template-columns: 1fr 1fr;
    gap:                   6px 20px;
}
.oww-home .oww-about__learn-list li {
    display:     flex;
    align-items: center;
    gap:         7px;
    font-size:   0.8rem;
    color:       var(--oww-cream-muted);
}
.oww-home .oww-about__learn-list li::before {
    content:     '◆';
    font-size:   0.26rem;
    color:       var(--oww-amber);
    flex-shrink: 0;
}

.oww-home .oww-about__actions { display: flex; gap: 0.75rem; margin-bottom: var(--oww-space-md); flex-wrap: wrap; }

/* Credential strip — dot separators, WSET Level 2 added */
.oww-home .oww-about__credential {
    display:     flex;
    flex-wrap:   wrap;
    align-items: center;
    gap:         8px 16px;
    padding:     12px 0;
    border-top:  1px solid var(--oww-bronze-20);
    margin-top:  var(--oww-space-md);
}
.oww-home .oww-about__credential-item {
    display:     flex;
    align-items: center;
    gap:         6px;
    font-size:   0.68rem;
    font-weight: 500;
    color:       var(--oww-cream-muted);
}
.oww-home .oww-about__credential-item::before {
    content:       '';
    width:         4px;
    height:        4px;
    border-radius: 50%;
    background:    var(--oww-amber);
    opacity:       0.7;
    flex-shrink:   0;
}

@media (max-width: 600px) {
    .oww-home .oww-about__credential { flex-direction: column; align-items: flex-start; }
    .oww-home .oww-about__learn-list { grid-template-columns: 1fr; }
}


/* ─── 7. COURSES ────────────────────────────────────────────────────────── */

.oww-home .oww-courses {
    background: var(--oww-bg-mid);
}

.oww-home .oww-courses__header {
    text-align: center;
    max-width:  560px;
    margin:     0 auto var(--oww-space-xxl);
}
.oww-home .oww-courses__title {
    font-size:    clamp(1.8rem, 3.8vw, 2.8rem);
    font-weight:  300;
    margin-bottom: 4px;
}
.oww-home .oww-courses__tagline {
    font-family:   var(--oww-ff-display);
    font-style:    italic;
    font-size:     clamp(0.9rem, 2vw, 1.1rem);
    color:         var(--oww-amber);
    margin-bottom: var(--oww-space-sm);
}
.oww-home .oww-courses__copy {
    font-size:   0.875rem;
    color:       var(--oww-cream-muted);
    line-height: 1.7;
}

/* 4-pillar grid */
.oww-home .oww-courses__pillars {
    display:               grid;
    grid-template-columns: repeat(4, 1fr);
    gap:                   12px;
    margin-bottom:         var(--oww-space-md);
}
@media (max-width: 900px) {
    .oww-home .oww-courses__pillars { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 500px) {
    .oww-home .oww-courses__pillars { grid-template-columns: 1fr; }
}

.oww-home .oww-pillar {
    padding:       clamp(1.25rem, 3vw, 1.75rem) clamp(0.875rem, 2vw, 1.25rem);
    background:    rgba(255, 255, 255, 0.02);
    border:        1px solid var(--oww-bronze-20);
    border-radius: var(--oww-radius-md);
    text-align:    center;
    transition:    all 0.3s var(--oww-ease-out);
}
.oww-home .oww-pillar:hover {
    background:  var(--oww-amber-faint);
    border-color: var(--oww-bronze-30);
    transform:   translateY(-5px);
}

/* Forever Bottle — new course, amber accent border */
.oww-home .oww-pillar--new {
    border-color: rgba(205, 165, 100, 0.35);
    background:   rgba(205, 165, 100, 0.025);
}

.oww-home .oww-pillar__icon {
    width:  40px;
    height: 40px;
    margin: 0 auto 12px;
    color:  var(--oww-amber);
}
.oww-home .oww-pillar__icon svg { width: 100%; height: 100%; }

.oww-home .oww-pillar__title {
    font-size:    0.875rem;
    font-weight:  600;
    color:        var(--oww-cream);
    margin-bottom: 5px;
}
.oww-home .oww-pillar__desc {
    font-size:   0.75rem;
    color:       var(--oww-cream-muted);
    line-height: 1.55;
}
.oww-home .oww-pillar__tag {
    display:        inline-block;
    font-size:      0.46rem;
    font-weight:    700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    background:     rgba(205, 165, 100, 0.14);
    color:          var(--oww-amber);
    padding:        0.2em 0.65em;
    border-radius:  100px;
    margin-top:     7px;
}

.oww-home .oww-courses__cta { text-align: center; margin-bottom: var(--oww-space-md); }

/* Featured course banner */
.oww-home .oww-featured-course {
    display:         flex;
    justify-content: space-between;
    align-items:     center;
    gap:             var(--oww-space-md);
    flex-wrap:       wrap;
    background:      rgba(205, 165, 100, 0.03);
    border:          1px solid var(--oww-bronze-30);
    border-radius:   var(--oww-radius-md);
    padding:         clamp(1rem, 2.5vw, 1.5rem) clamp(1.25rem, 3vw, 2rem);
}
.oww-home .oww-featured-course__label {
    font-size:      0.48rem;
    font-weight:    700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color:          var(--oww-amber);
    margin-bottom:  4px;
}
.oww-home .oww-featured-course__title {
    font-family:   var(--oww-ff-display);
    font-size:     clamp(1.1rem, 2.2vw, 1.4rem);
    font-weight:   300;
    color:         var(--oww-cream);
    margin-bottom: 3px;
}
.oww-home .oww-featured-course__meta {
    font-size: 0.7rem;
    color:     var(--oww-cream-muted);
}


/* ─── 8. SHOP ───────────────────────────────────────────────────────────── */

.oww-home .oww-shop {
    background: linear-gradient(180deg, var(--oww-bg-mid) 0%, var(--oww-bg-raised) 100%);
}

.oww-home .oww-shop__header {
    display:         flex;
    justify-content: space-between;
    align-items:     flex-end;
    flex-wrap:       wrap;
    gap:             12px;
    margin-bottom:   clamp(1.25rem, 2.5vw, 1.75rem);
}
.oww-home .oww-shop__title {
    font-size:   clamp(1.8rem, 3.8vw, 2.8rem);
    font-weight: 300;
}

/* Grid: large hero card left + 2 stacked horizontal cards right */
.oww-home .oww-shop__grid {
    display:               grid;
    grid-template-columns: 1.5fr 1fr;
    gap:                   12px;
    align-items:           stretch;
}

@media (max-width: 860px) {
    .oww-home .oww-shop__grid { grid-template-columns: 1fr; }
}

/* Hero card */
.oww-home .oww-shop-hero {
    position:        relative;
    border-radius:   var(--oww-radius-md);
    overflow:        hidden;
    background:      linear-gradient(155deg, var(--oww-bg-card-alt) 0%, var(--oww-bg-card) 50%, var(--oww-bg-dark) 100%);
    border:          1px solid var(--oww-bronze-20);
    min-height:      400px;
    display:         flex;
    flex-direction:  column;
    justify-content: flex-end;
    text-decoration: none;
    transition:      border-color 0.35s var(--oww-ease-out);
    cursor:          pointer;
}
.oww-home .oww-shop-hero:hover { border-color: var(--oww-bronze-30); }

.oww-home .oww-shop-hero__atmosphere {
    position:       absolute;
    inset:          0;
    pointer-events: none;
    background:
        radial-gradient(ellipse 70% 55% at 58% 35%, rgba(120, 80, 25, 0.32) 0%, transparent 65%),
        radial-gradient(ellipse 50% 40% at 20% 75%, rgba(205, 165, 100, 0.07) 0%, transparent 55%);
}

.oww-home .oww-shop-hero__bg {
    position:            absolute;
    inset:               0;
    /* background-image: url('/wp-content/uploads/shop/glassware-category.webp'); */
    /* Image not yet uploaded — restore when file exists on server */
    background-size:     cover;
    background-position: center;
    opacity:             0.22;
    transition:          opacity 0.5s var(--oww-ease-out), transform 0.6s var(--oww-ease-out);
}
.oww-home .oww-shop-hero:hover .oww-shop-hero__bg {
    opacity:   0.3;
    transform: scale(1.03);
}

.oww-home .oww-shop-hero__icon {
    position:       absolute;
    top:            50%;
    left:           50%;
    transform:      translate(-50%, -58%);
    color:          rgba(168, 128, 74, 0.12);
    width:          100px;
    height:         126px;
    pointer-events: none;
    transition:     opacity 0.4s ease;
}
.oww-home .oww-shop-hero__icon svg { width: 100%; height: 100%; }
.oww-home .oww-shop-hero:hover .oww-shop-hero__icon { opacity: 0.45; }

.oww-home .oww-shop-hero__content {
    position:    relative;
    z-index:     2;
    padding:     clamp(1.25rem, 3vw, 2rem);
    background:  linear-gradient(to top, rgba(10,8,6,.97) 0%, rgba(10,8,6,.72) 55%, transparent 100%);
    padding-top: 80px;
}

.oww-home .oww-shop-hero__badge {
    display:        inline-block;
    font-size:      0.46rem;
    font-weight:    700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    background:     var(--oww-amber);
    color:          var(--oww-bg-dark);
    padding:        0.22em 0.65em;
    border-radius:  3px;
    margin-bottom:  8px;
}

.oww-home .oww-shop-hero__title {
    font-family:   var(--oww-ff-display);
    font-size:     clamp(1.5rem, 3vw, 2.1rem);
    font-weight:   300;
    color:         var(--oww-cream);
    line-height:   1.1;
    margin-bottom: 7px;
}

.oww-home .oww-shop-hero__desc {
    font-size:    0.78rem;
    color:        var(--oww-cream-muted);
    line-height:  1.6;
    margin-bottom: 16px;
    max-width:    320px;
}

/* Stack column — 2 horizontal cards */
.oww-home .oww-shop__stack {
    display:        flex;
    flex-direction: column;
    gap:            12px;
}

/* Horizontal shop card */
.oww-home .oww-shop-card {
    display:               grid;
    grid-template-columns: 120px 1fr;
    border-radius:         var(--oww-radius-md);
    overflow:              hidden;
    border:                1px solid var(--oww-bronze-20);
    background:            linear-gradient(135deg, var(--oww-bg-card-alt) 0%, var(--oww-bg-card) 100%);
    text-decoration:       none;
    transition:            all 0.28s var(--oww-ease-out);
    flex:                  1;
    min-height:            0;
}
.oww-home .oww-shop-card:hover {
    border-color: var(--oww-bronze-30);
    transform:    translateX(3px);
    box-shadow:   var(--oww-shadow-card);
}

.oww-home .oww-shop-card__image {
    background:      linear-gradient(155deg, var(--oww-bg-card) 0%, var(--oww-bg-dark) 100%);
    display:         flex;
    align-items:     center;
    justify-content: center;
    position:        relative;
    overflow:        hidden;
}
.oww-home .oww-shop-card__image svg {
    color:    rgba(168, 128, 74, 0.2);
    width:    38px;
    height:   48px;
    position: relative;
    z-index:  1;
}
.oww-home .oww-shop-card__image img {
    width:      100%;
    height:     100%;
    object-fit: cover;
    transition: transform 0.5s var(--oww-ease-out);
}
.oww-home .oww-shop-card:hover .oww-shop-card__image img { transform: scale(1.06); }

.oww-home .oww-shop-card__body {
    padding:         clamp(0.875rem, 1.5vw, 1.25rem);
    display:         flex;
    flex-direction:  column;
    justify-content: space-between;
    gap:             4px;
}

.oww-home .oww-shop-card__label {
    font-size:      0.5rem;
    font-weight:    700;
    letter-spacing: 0.08em;
    color:          var(--oww-amber);
    text-transform: uppercase;
}
.oww-home .oww-shop-card__title {
    font-size:   0.9rem;
    font-weight: 600;
    color:       var(--oww-cream);
    line-height: 1.2;
}
.oww-home .oww-shop-card__desc {
    font-size:   0.72rem;
    color:       var(--oww-cream-muted);
    line-height: 1.55;
}

/* Arrow — slides on hover */
.oww-home .oww-shop-card__arrow {
    font-size:    0.7rem;
    font-weight:  700;
    color:        var(--oww-amber);
    align-self:   flex-end;
    margin-top:   auto;
    transition:   transform 0.22s ease;
}
.oww-home .oww-shop-card:hover .oww-shop-card__arrow { transform: translateX(4px); }

@media (max-width: 500px) {
    .oww-home .oww-shop-card { grid-template-columns: 90px 1fr; }
}


/* ─── 9. METHOD ─────────────────────────────────────────────────────────── */

.oww-home .oww-method {
    background: var(--oww-bg-dark);
    text-align: center;
}
.oww-home .oww-method__title {
    font-size:    clamp(1.6rem, 3.5vw, 2.4rem);
    font-weight:  300;
    max-width:    420px;
    margin:       0 auto 0.4rem;
}
/* Rule under method title */
.oww-home .oww-method__rule {
    width:      52px;
    height:     1px;
    background: linear-gradient(90deg, transparent, var(--oww-bronze-30), transparent);
    margin:     0 auto var(--oww-space-xxl);
}
.oww-home .oww-method__steps {
    display:               grid;
    grid-template-columns: repeat(3, 1fr);
    gap:                   12px;
    max-width:             900px;
    margin:                0 auto;
}
@media (max-width: 700px) {
    .oww-home .oww-method__steps { grid-template-columns: 1fr; max-width: 400px; }
}

.oww-home .oww-method-step {
    padding:       clamp(1.25rem, 3vw, 1.75rem);
    background:    rgba(255, 255, 255, 0.015);
    border:        1px solid var(--oww-bronze-20);
    border-radius: var(--oww-radius-md);
}
.oww-home .oww-method-step__num {
    font-family:          var(--oww-ff-display);
    font-size:            clamp(2.2rem, 4.5vw, 3rem);
    font-weight:          200;
    color:                transparent;
    -webkit-text-stroke:  1px rgba(205, 165, 100, 0.22);
    line-height:          1;
    margin-bottom:        9px;
    display:              block;
}
.oww-home .oww-method-step__title {
    font-size:    0.9rem;
    font-weight:  600;
    color:        var(--oww-cream);
    margin-bottom: 5px;
}
.oww-home .oww-method-step__desc {
    font-size:   0.78rem;
    color:       var(--oww-cream-muted);
    line-height: 1.65;
}


/* ─── 10. TASTINGS ──────────────────────────────────────────────────────── */

.oww-home .oww-tastings {
    background: linear-gradient(180deg, var(--oww-bg-dark) 0%, var(--oww-bg-mid) 100%);
}

.oww-home .oww-tastings__feature {
    display:               grid;
    grid-template-columns: 1fr 1fr;
    gap:                   clamp(2rem, 5vw, 4rem);
    align-items:           center;
    margin-bottom:         clamp(1.75rem, 3vw, 2.5rem);
}
@media (max-width: 860px) {
    .oww-home .oww-tastings__feature { grid-template-columns: 1fr; }
    .oww-home .oww-tastings__image-col { display: none; }
}

.oww-home .oww-tastings__image-frame {
    aspect-ratio:  4/5;
    background:    var(--oww-bg-card);
    border-radius: var(--oww-radius-md);
    border:        1px solid var(--oww-bronze-20);
    overflow:      hidden;
    will-change:   clip-path;
}

.oww-home .oww-tastings__text-col {
    display:        flex;
    flex-direction: column;
    justify-content: center;
}

.oww-home .oww-tastings__title {
    font-size:    clamp(1.6rem, 3.5vw, 2.4rem);
    font-weight:  300;
    line-height:  1.1;
    margin-bottom: 6px;
}
.oww-home .oww-tastings__copy,
.oww-home .oww-tastings__body {
    font-size:    0.875rem;
    color:        var(--oww-cream-muted);
    line-height:  1.72;
    margin-bottom: var(--oww-space-lg);
}
.oww-home .oww-tastings__actions {
    display:       flex;
    flex-wrap:     wrap;
    gap:           12px;
    margin-bottom: var(--oww-space-lg);
}

/* Booking cards — Public & Private */
.oww-home .oww-tastings__options {
    display:               grid;
    grid-template-columns: 1fr 1fr;
    gap:                   12px;
    margin-bottom:         12px;
}
@media (max-width: 600px) {
    .oww-home .oww-tastings__options { grid-template-columns: 1fr; }
}

.oww-home .oww-tasting-card {
    display:         block;
    padding:         clamp(1.1rem, 2.5vw, 1.5rem);
    background:      rgba(255, 255, 255, 0.02);
    border:          1px solid var(--oww-bronze-20);
    border-radius:   var(--oww-radius-md);
    text-decoration: none;
    transition:      all 0.28s var(--oww-ease-out);
    position:        relative;
    overflow:        hidden;
}
/* Amber left-bar slides in on hover */
.oww-home .oww-tasting-card::before {
    content:    '';
    position:   absolute;
    left:       0;
    top:        0;
    bottom:     0;
    width:      3px;
    background: var(--oww-amber);
    opacity:    0;
    transition: opacity 0.28s ease;
}
.oww-home .oww-tasting-card:hover {
    background:  var(--oww-amber-faint);
    border-color: var(--oww-bronze-30);
    transform:   translateY(-3px);
}
.oww-home .oww-tasting-card:hover::before { opacity: 1; }

.oww-home .oww-tasting-card__icon {
    font-size:     18px;
    color:         var(--oww-amber);
    margin-bottom: 8px;
    opacity:       0.7;
    display:       block;
}
.oww-home .oww-tasting-card__title {
    font-size:    0.9rem;
    font-weight:  600;
    color:        var(--oww-cream);
    margin-bottom: 5px;
}
.oww-home .oww-tasting-card__desc {
    font-size:    0.77rem;
    color:        var(--oww-cream-muted);
    line-height:  1.6;
    margin-bottom: 8px;
}
.oww-home .oww-tasting-card__link {
    font-size:   0.68rem;
    font-weight: 700;
    color:       var(--oww-amber);
}

/* Testimonial */
.oww-home .oww-testimonial {
    background:    rgba(205, 165, 100, 0.03);
    border:        1px solid var(--oww-bronze-20);
    border-left:   2px solid var(--oww-amber);
    border-radius: 0 var(--oww-radius-md) var(--oww-radius-md) 0;
    padding:       clamp(1rem, 2.5vw, 1.5rem) clamp(1.25rem, 3vw, 1.75rem);
    margin-top:    12px;
}
.oww-home .oww-testimonial__quote {
    font-family:   var(--oww-ff-display);
    font-style:    italic;
    font-size:     clamp(0.9rem, 1.8vw, 1.05rem);
    color:         var(--oww-cream);
    line-height:   1.68;
    margin-bottom: 10px;
}
.oww-home .oww-testimonial__author {
    display:     flex;
    align-items: center;
    gap:         10px;
}
.oww-home .oww-testimonial__line {
    width:      24px;
    height:     1px;
    background: var(--oww-amber);
    opacity:    0.4;
}
.oww-home .oww-testimonial__name {
    font-size:      0.62rem;
    font-weight:    600;
    letter-spacing: 0.06em;
    color:          var(--oww-amber);
}


/* ─── 11. WANDERINGS (was: Journal / Blog) ──────────────────────────────── */

.oww-home .oww-latest {
    background: var(--oww-bg-raised);
}

/* Left-aligned header — editorial, not centred */
.oww-home .oww-latest__header { margin-bottom: clamp(1.75rem, 3.5vw, 2.5rem); }

.oww-home .oww-latest__eyebrow {
    display:        block;
    font-size:      clamp(0.55rem, 1vw, 0.65rem);
    font-weight:    700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color:          var(--oww-amber);
    margin-bottom:  0.4rem;
}

/* Wanderings — amber underline on heading */
.oww-home .oww-latest__title,
.oww-home .oww-journal__title {
    font-size:      clamp(1.8rem, 4vw, 2.8rem);
    font-weight:    300;
    display:        inline;
    border-bottom:  1px solid var(--oww-amber);
    padding-bottom: 0.1em;
}

/* 3-col grid */
.oww-home .oww-latest__grid,
.oww-home .oww-journal__grid {
    display:               grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap:                   12px;
    margin-bottom:         clamp(1.5rem, 3vw, 2rem);
}
@media (max-width: 800px) {
    .oww-home .oww-latest__grid,
    .oww-home .oww-journal__grid {
        grid-template-columns: 1fr;
        max-width:    480px;
    }
}

.oww-home .oww-blog-card {
    border-radius: var(--oww-radius-md);
    overflow:      hidden;
    background:    rgba(255, 255, 255, 0.02);
    border:        1px solid var(--oww-bronze-20);
    transition:    all 0.35s var(--oww-ease-out);
    display:       flex;
    flex-direction: column;
}
.oww-home .oww-blog-card:hover {
    border-color: var(--oww-bronze-30);
    transform:    translateY(-4px);
    box-shadow:   var(--oww-shadow-card);
}

.oww-home .oww-blog-card__image {
    aspect-ratio: 16/9;
    background:   var(--oww-bg-card);
    overflow:     hidden;
}
.oww-home .oww-blog-card__image img {
    width:      100%;
    height:     100%;
    object-fit: cover;
    transition: transform 0.5s var(--oww-ease-out);
}
.oww-home .oww-blog-card:hover .oww-blog-card__image img { transform: scale(1.04); }

.oww-home .oww-blog-card__content {
    padding: clamp(0.875rem, 2vw, 1.1rem);
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Article category tag */
.oww-home .oww-blog-card__cat {
    font-size:      0.5rem;
    font-weight:    700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color:          var(--oww-amber);
    margin-bottom:  0.35rem;
    display:        block;
}

.oww-home .oww-blog-card__title {
    font-size:    0.875rem;
    font-weight:  600;
    color:        var(--oww-cream);
    line-height:  1.3;
    margin-bottom: 5px;
    flex:         1;
}
.oww-home .oww-blog-card__desc {
    font-size:    0.72rem;
    color:        var(--oww-cream-muted);
    line-height:  1.6;
    margin-bottom: 0.75rem;
}
.oww-home .oww-blog-card__link {
    font-size:   0.65rem;
    font-weight: 700;
    color:       var(--oww-amber);
    display:     inline-flex;
    align-items: center;
    gap:         0.3em;
    transition:  gap 0.2s ease;
}
.oww-home .oww-blog-card:hover .oww-blog-card__link { gap: 0.55em; }

/* CTA removed per amendment — .oww-latest__cta intentionally omitted */


/* ─── 12. HIDDEN SECTIONS ───────────────────────────────────────────────── */

/* Private Tours — hidden per client amendment, HTML preserved */
.oww-private-tours--hidden { display: none; }


/* ─── GSAP ANIMATION FALLBACKS ──────────────────────────────────────────── */
/*
 * GSAP sets these elements to opacity:0 via gsap.set() before animating them
 * to opacity:1. If JS fails, GSAP errors, or reduced-motion is active, these
 * elements would remain invisible. CSS ensures they are at least visible.
 * GSAP overrides these inline styles when it runs successfully.
 */
.oww-home .oww-hero__eyebrow,
.oww-home .oww-hero__title,
.oww-home .oww-hero__author,
.oww-home .oww-hero__divider,
.oww-home .oww-hero__subtitle,
.oww-home .oww-hero__quote,
.oww-home .oww-hero__ctas,
.oww-home .oww-hero__trust,
.oww-home .oww-hero__stats {
    opacity: 1; /* GSAP will override this inline when it runs */
}
