/* Coffee and cup share the photograph's crop and lighting. */
.has-coffee:before { pointer-events:none; }
.has-coffee .hero-photo { overflow:hidden; }
.coffee-layer { position:absolute; max-width:none; pointer-events:none; filter:brightness(.82) contrast(1.18) saturate(.82); }
.coffee-wipe-zone,.coffee-cup-button { position:absolute; display:block; margin:0; padding:0; border:0; border-radius:0; background:transparent; -webkit-tap-highlight-color:transparent; }
.coffee-cup-button { cursor:pointer; touch-action:manipulation; }
.coffee-cup-button[aria-disabled=true] { cursor:default; }
.coffee-wipe-zone { touch-action:none; cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 48 48'%3E%3Cdefs%3E%3ClinearGradient id='foam' x2='.2' y2='1'%3E%3Cstop stop-color='%23ffe88a'/%3E%3Cstop offset='1' stop-color='%23e5ac29'/%3E%3C/linearGradient%3E%3ClinearGradient id='scrub' x2='.3' y2='1'%3E%3Cstop stop-color='%23588254'/%3E%3Cstop offset='1' stop-color='%232c5638'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cellipse cx='25' cy='39' rx='18' ry='4' fill='%231c291b' opacity='.22'/%3E%3Cpath d='M6 15 31 8 43 16 43 30Q43 32 40 33L19 40Q17 41 15 39L6 32Q4 31 4 28V18Q4 16 6 15Z' fill='url(%23foam)' stroke='%23916d25' stroke-width='1.2'/%3E%3Cpath d='M5 19 17 27 17 40 6 32Q4 31 4 28V19Z' fill='%23d69c27'/%3E%3Cpath d='M6 13 30 6Q32 5 34 7L43 13Q46 15 43 18L19 26Q17 27 15 25L5 18Q2 15 6 13Z' fill='url(%23scrub)' stroke='%232b5033' stroke-width='1.3'/%3E%3Cpath d='M6 14 31 7 42 14M18 24 42 16' fill='none' stroke='%2398b57b' stroke-width='1.2' opacity='.8'/%3E%3Cg fill='%2394ad74' opacity='.65'%3E%3Ccircle cx='11' cy='16' r='.8'/%3E%3Ccircle cx='18' cy='13' r='.7'/%3E%3Ccircle cx='25' cy='11' r='.8'/%3E%3Ccircle cx='31' cy='14' r='.7'/%3E%3Ccircle cx='24' cy='18' r='.8'/%3E%3Ccircle cx='17' cy='20' r='.7'/%3E%3Ccircle cx='36' cy='13' r='.6'/%3E%3C/g%3E%3Cg fill='%23a7771e' opacity='.65'%3E%3Cellipse cx='23' cy='30' rx='1.5' ry='1.1'/%3E%3Cellipse cx='31' cy='26' rx='1.2' ry='1'/%3E%3Cellipse cx='38' cy='24' rx='1.4' ry='1'/%3E%3Cellipse cx='35' cy='31' rx='1.7' ry='1.2'/%3E%3Cellipse cx='26' cy='35' rx='1.3' ry='1'/%3E%3Cellipse cx='20' cy='36' rx='.8' ry='.7'/%3E%3Cellipse cx='10' cy='28' rx='1' ry='1.4'/%3E%3Cellipse cx='13' cy='34' rx='.8' ry='1.2'/%3E%3C/g%3E%3Cpath d='m20 28 20-7' stroke='%23fff2b0' stroke-width='1.3' opacity='.8'/%3E%3C/svg%3E") 24 25, crosshair; }
.coffee-wipe-zone[aria-disabled=true] { cursor:default; }
.coffee-wipe-zone:focus-visible,.coffee-cup-button:focus-visible { outline:2px solid var(--gold); outline-offset:3px; }
.coffee-status { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media (max-width:800px) {
  .hero.has-coffee { min-height:0; }
  .has-coffee .hero-copy,.has-coffee .hero-signature { grid-row:1; }
  .has-coffee .hero-photo { position:relative; grid-column:1/-1; grid-row:2; inset:auto; width:100%; aspect-ratio:1.5; z-index:0; }
  .has-coffee .hero-photo>img { position:absolute; inset:0; filter:brightness(.96) contrast(1.05) saturate(.9); }
  .has-coffee .coffee-layer { filter:brightness(.96) contrast(1.05) saturate(.9); }
  .has-coffee .hero-signature .gold-seal { position:relative; bottom:auto; top:auto; right:auto; margin:22px 0 0 -8%; width:118%; max-width:155px; }
}
