Sammen med sin 16-årige datter, Rose (Camilla Belle), lever Jack (Daniel Day-Lewis) en isoleret tilværelse på en fjerntliggende, mindre ø. Jack, hvis liv har været præget af hans optagethed af miljøspørgsmål og alternative levemåder, har "beskyttet" Rose mod indflydelse fra verden udenfor, og han raser mod enhver, der ikke deler hans synspunkter. Da Jack inviterer en veninde og hendes to sønner til at bo hos sig i nogen tid, vender det op og ned på Rose's tilværelse.