.terroir-intro{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.terroir-intro-img{min-height:560px;position:relative;overflow:hidden}.terroir-intro-img img{object-fit:cover;filter:brightness(.45)saturate(.8);width:100%;height:100%;transition:transform 8s var(--ease);display:block}.terroir-intro-img:hover img{transform:scale(1.04)}.terroir-intro-overlay{background:linear-gradient(to right,transparent 55%,var(--bg) 100%);position:absolute;inset:0}.terroir-intro-content{flex-direction:column;justify-content:center;padding:80px 72px 80px 60px;display:flex}.variables-section{border-top:1px solid var(--line);padding:100px 60px}.variables-grid{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:56px;display:grid}.variable-card{background:var(--bg2);padding:52px 44px;transition:background .3s;position:relative;overflow:hidden}.variable-card:hover{background:var(--bg3)}.variable-card:hover .variable-icon{border-color:var(--gold)}.variable-icon{border:1px solid var(--line2);justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:28px;transition:border-color .3s;display:flex}.variable-icon svg{width:22px;height:22px;stroke:var(--gold);fill:none;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.variable-h{font-family:var(--serif);color:var(--cream);margin-bottom:12px;font-size:26px;font-weight:300}.variable-p{color:var(--muted);margin-bottom:20px;font-size:13px;font-weight:300;line-height:1.8}.variable-impact{letter-spacing:2px;text-transform:uppercase;color:var(--gold-dk);border:1px solid var(--line2);align-items:center;gap:8px;padding:4px 12px;font-size:9px;display:inline-flex}.variable-impact-dot{background:var(--gold);border-radius:50%;width:5px;height:5px}.ai-process{background:var(--bg2);border-top:1px solid var(--line);padding:100px 60px}.ai-process-steps{background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;margin-top:56px;display:grid}.ai-step{background:var(--bg2);padding:44px 36px;position:relative}.ai-step-num{font-family:var(--serif);color:#c8a96e26;letter-spacing:-2px;margin-bottom:20px;font-size:56px;font-weight:300;line-height:1}.ai-step-h{font-family:var(--serif);color:var(--cream);margin-bottom:10px;font-size:22px;font-weight:300}.ai-step-p{color:var(--muted);font-size:12.5px;font-weight:300;line-height:1.8}.ai-step-arrow{border:1px solid var(--line2);background:var(--bg2);z-index:2;width:24px;height:24px;color:var(--gold);justify-content:center;align-items:center;font-size:10px;display:flex;position:absolute;top:44px;right:-12px}.ai-step:last-child .ai-step-arrow{display:none}.score-section{border-top:1px solid var(--line);padding:100px 60px}.score-anatomy{grid-template-columns:1.2fr 1fr;align-items:start;gap:80px;margin-top:56px;display:grid}.score-visual{border:1px solid var(--line2);background:var(--bg2);padding:48px}.score-title{letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:32px;font-size:10px}.score-bar-row{margin-bottom:20px}.score-bar-label{letter-spacing:.5px;color:var(--muted);justify-content:space-between;margin-bottom:8px;font-size:11px;display:flex}.score-bar-label span:last-child{color:var(--gold);font-weight:500}.score-bar-track{background:var(--line);height:4px}.score-bar-fill{background:var(--gold);height:4px;transition:width 1.5s var(--ease);width:0}.score-bar-fill.visible{width:var(--w)}.score-total{border-top:1px solid var(--line2);justify-content:space-between;align-items:center;margin-top:8px;padding-top:24px;display:flex}.score-total-label{letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-size:11px}.score-total-val{font-family:var(--serif);color:var(--gold);font-size:52px;font-weight:300;line-height:1}.score-explanation{flex-direction:column;gap:28px;display:flex}.score-exp-label{letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin-bottom:8px;font-size:9.5px}.score-exp-text{color:var(--muted);font-size:13px;font-weight:300;line-height:1.8}.appellation-section{background:var(--bg2);border-top:1px solid var(--line);padding:100px 60px}.appellation-grid{background:var(--line);grid-template-columns:repeat(2,1fr);gap:2px;margin-top:56px;display:grid}.appellation-card{background:var(--bg2);grid-template-columns:1fr 2fr;align-items:start;gap:32px;padding:44px;transition:background .3s;display:grid}.appellation-card:hover{background:var(--bg3)}.appellation-name{font-family:var(--serif);color:var(--cream);font-size:28px;font-weight:300;line-height:1.1}.appellation-score-row{flex-wrap:wrap;gap:16px;margin-top:8px;display:flex}.appellation-tag{letter-spacing:1.5px;text-transform:uppercase;border:1px solid var(--line2);color:var(--muted);padding:3px 10px;font-size:8.5px}.appellation-tag.gold{border-color:var(--gold-dk);color:var(--gold)}.appellation-detail-h{letter-spacing:2px;text-transform:uppercase;color:var(--faint);margin-top:0;margin-bottom:8px;font-size:9.5px}.appellation-detail-p{color:var(--muted);font-size:12.5px;font-weight:300;line-height:1.75}.terroir-cta{text-align:center;border-top:1px solid var(--line);padding:120px 60px;position:relative;overflow:hidden}.terroir-cta-bg{filter:brightness(.18)saturate(.6);background:url(https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=1800&q=80) 50%/cover;position:absolute;inset:0}.terroir-cta-overlay{background:#080503b3;position:absolute;inset:0}.terroir-cta-content{z-index:2;position:relative}@media (max-width:1100px){.terroir-intro{grid-template-columns:1fr}.terroir-intro-img{min-height:360px}.terroir-intro-overlay{background:linear-gradient(to bottom,transparent 60%,var(--bg) 100%)}.terroir-intro-content{padding:60px 40px}.variables-section,.ai-process,.score-section,.appellation-section,.terroir-cta{padding:80px 40px}.ai-process-steps{grid-template-columns:repeat(2,1fr)}.ai-step:nth-child(2) .ai-step-arrow{display:none}.score-anatomy{grid-template-columns:1fr;gap:48px}.appellation-grid{grid-template-columns:1fr}}@media (max-width:768px){.terroir-intro-content{padding:40px 24px}.variables-section,.ai-process,.score-section,.appellation-section,.terroir-cta{padding:60px 24px}.variables-grid,.ai-process-steps{grid-template-columns:1fr}.ai-step-arrow{display:none!important}.appellation-card{grid-template-columns:1fr;gap:20px}.score-visual{padding:32px 24px}}
